“难道你还想改变这世界?”
“我想试试。”
《哪吒2》票房已破百亿大关,并成功问顶全球动画电影票榜首,这不仅标志着中国动画电影在商业上的巨大成功,更是中国文化自信的有力体现。电影中人物较多,且属性颇多,你可还记得殷夫人的气象属性?太乙真人又属于哪个阵营?本文将带大家通过 NebulaGraph 和 DeepSeek 带大家盘一盘《哪吒2》中的人物关系和属性。
对于影视 IP 的人物关系,如《哪吒》中的人物,虽然可以用传统的行列表格进行展示。但是对于多重关系,比如“曾经恋人,现在敌对”或者“明面霸总,暗面大哥”,表格这种展示方式显然不如图结构来的直观、清晰。
NebulaGraph
NebulaGraph 是一款强大的开源图数据库,能够承载包含数千亿个点和数万亿条边的超大规模数据集,并且提供毫秒级查询。
NebulaGraph 提供了多种可视化工具,主要包括 NebulaGraph Studio 和 NebulaGraph Explorer,NebulaGraph Studio 更侧重于图数据库的管理和基本操作,适合需要快速上手和日常管理的用户,而 NebulaGraph Explorer 则提供了更强大的数据探索和分析功能,适合对数据有深入分析需求的用户。
此外,NebulaGraph 还有一些好用的开发者生态工具,如星影 StarShadow。星影是一款 NebulaGraph 图数据库客户端,它提供了图数据库的可视化操作界面,让用户可以通过图形化的方式,对图数据库进行操作。星影采用了全新的技术架构(Flutter),目前已经支持的操作系统有:Windows、macOS、Ubuntu | 优麒麟 三大常见操作系统。
**NebulaGraph 可以将丰富的关系通过边及其类型和属性自然地呈现,帮助我们更好的呈现影视 IP 人物关系。**通过创建点(Vertex, 用点标识符 VID 进行标识) 标识人物名字,如“申小豹”。创建边(Edge)来连接点,表示人物之间的具体关系类型,如“父子”、“师徒”。创建标签(Tag),定义属性,对点进行分类,如“龙族”、“截教”。创建属性(Property),为点和边添加属性,以键值对(Key-value pair)形式存储人物的关系描述和详细信息。
DeepSeek
DeepSeek 是一款国产开源大模型,具备强大的复杂指令推理能力和内容生成能力,并致力于实现通用人工智能 AGI。自 DeepSeek R1 模型发布以来,迅速火遍全球,R1 模型具有高效推理能力,采用纯强化学习进行训练,具备自我验证、反思和生成长思维链的能力。R1 模型采用专家混合架构,优化计算资源,同等计算性能下,功耗更低。R1 模型提供了多个版本,以满足不同的计算资源(“蒸馏版”、“满血版”)和应用需求。
与 DeepSeek 进行对话,打开联网搜索和深度思考选项,可以帮助我们快速收集票房数据、社交影评,梳理人物关系、分析人物性格,辅助我们进行高效数据分析,并生成分析报告。例如,可以询问 DeepSeek 关于哪吒与敖丙的关系,DeepSeek 会根据已有的数据和知识,生成详细的分析报告。
基于 DeepSeek + NebulaGraph 建模
言归正传,在与 DeepSeek 多次会话后,我们梳理了《哪吒2》的人物关系模型,具体如下表。
接下来,将数据模型转化生成适用于 NebulaGraph 的 nGQL 语言。nGQL 是 NebulaGraph 使用的的声明式图查询语言,支持灵活高效的图模式,支持大部分 openCypher 9 图查询语法,而且 nGQL 是为开发和运维人员设计的类 SQL 查询语言,易于学习。
1. 创建图空间 SPACE
NebulaGraph 数据模型使用 6 种基本的数据模型:图空间(Space)、点(Vertex)、边(Edge)、标签(Tag)、边类型(Edge type)、属性(Property)。
图空间用于隔离不同团队或者项目的数据。不同图空间的数据是相互隔离的,可以指定不同的存储副本数、权限、分片等。
创建图空间 nezha2
用于存储《哪吒2》相关数据。
CREATE SPACE IF NOT EXISTS nezha2(partition_num=1, replica_factor=1, vid_type=fixed_string(128));
2. 创建标签 TAG
定义 TAG 角色 role
,包含五个属性:角色名 name
,气象属性 meteorological
,阵营 faction
,角色描述 role_desc
,配音演员 voice_actor
。
create tag role (name string, meteorological string, faction string, role_desc string, voice_actor string);
3. 创建边 Edge
根据人物关系创建几个边。例如:
-
father_of:父子关系
-
mother_of:母子关系
-
teacher_of:师徒关系
-
enemy_of:敌对关系
-
lover_of:恋人关系
-
friend_of: 好丽友关系
-
brother_sister_of: 兄妹关系
CREATE EDGE father_of (edge_time timestamp);
CREATE EDGE mother_of (edge_time timestamp);
CREATE EDGE teacher_of (edge_time timestamp);
CREATE EDGE enemy_of (edge_time timestamp);
CREATE EDGE lover_of (edge_time timestamp);
CREATE EDGE friend_of (edge_time timestamp);
CREATE EDGE brother_sister_of (edge_time timestamp);
4. 插入数据
根据《哪吒2》的核心角色和关系,插入一些示例数据。
INSERT VERTEX role (name, meteorological, faction, voice_actor) VALUES \
"哪吒": ("哪吒", "雷电", "阐教", "吕艳婷"), \
"敖丙": ("敖丙", "冰雪", "龙族", "瀚墨"), \
"太乙真人": ("太乙真人", "云雾", "阐教", "张珈铭"), \
"殷夫人": ("殷夫人", "细雨", "人类", "绿绮"), \
"李靖": ("李靖", "木", "人类", "陈浩"), \
"申公豹": ("申公豹", "风暴", "截教", "杨卫"), \
"敖光": ("敖光", "海浪", "龙族", "雨辰"), \
"敖闰": ("敖闰", "空间系", "龙族", "周泳汐"), \
"敖顺": ("敖顺", "毒", "龙族", "韩雨泽"), \
"敖钦": ("敖钦", "火", "龙族", "南屿"), \
"无量仙翁": ("无量仙翁", "木", "", "王德顺"), \
"石矶娘娘": ("石矶娘娘", "沙尘", "截教", "小薇"), \
"结界兽": ("结界兽", "雾霭", "中立", ""), \
"申正道": ("申正道", "", "", ""), \
"申小豹": ("申小豹", "", "", ""), \
"饺子": ("饺子", "", "导演", "杨宇");
INSERT EDGE friend_of VALUES "哪吒" -> "敖丙": (1234567890);
INSERT EDGE teacher_of VALUES "哪吒" -> "太乙真人": (1234567890);
INSERT EDGE mother_of VALUES "哪吒" -> "殷夫人": (1234567890);
INSERT EDGE father_of VALUES "哪吒" -> "李靖": (1234567890);
INSERT EDGE father_of VALUES "敖丙" -> "敖光": (1234567890);
INSERT EDGE brother_sister_of VALUES "敖闰" -> "敖光": (1234567890);
INSERT EDGE brother_sister_of VALUES "敖顺" -> "敖光": (1234567890);
INSERT EDGE brother_sister_of VALUES "敖钦" -> "敖光": (1234567890);
INSERT EDGE enemy_of VALUES "申公豹" -> "太乙真人": (1234567890);
INSERT EDGE father_of VALUES "申公豹" -> "申正道": (1234567890);
5. 查询数据
通过 NebulaGraph 的查询语言 nGQL,可以轻松查询人物关系。例如,查询所有人物关系。
MATCH ()-[e]->() RETURN e LIMIT 100;
6. 可视化展示
使用 NebulaGraph Studio 或 StarShadow 等工具,可以将上述查询结果可视化展示。通过图形化的方式,可以直观地看到《哪吒2》中的人物关系网络。例如,哪吒与太乙真人之间的师徒关系,敖光与敖丙的父子关系等。以下两张图是用 StarShadow 查询哪吒的人物关系网,分别用力导图和环形图进行展示。
力导图(Force-Directed Graph)是一种基于物理模拟的图形布局算法,常用于数据可视化领域,尤其是社交网络分析、知识图谱和关系图等场景。其核心在于模拟物理世界中的粒子运动,每个节点可以看作是一个带有质量的粒子,边可以看作是弹簧,通过施加不同的力,节点在图中动态演化,最终达到稳定状态。
环形布局关系图,多用于展示多个对象之间的关系。在这种布局中,通过将节点均匀分布在圆形路径上,以可视化的方式展示节点之间的连接关系。这种布局结构清晰、层次分明,且美观性高。
NebulaGraph 与 DeepSeek 结合的 GraphRAG
通过结合 NebulaGraph 和 DeepSeek,我们可以更快速、全面地分析《哪吒2》中的人物关系和属性。但对于 NebulaGraph + DeepSeek 的用法不止于此,还可实现高级进阶版应用,如 GraphRAG(Graph Retrieval Augmented Generation)。
NebulaGraph 能够与 Llama Index 和 LangChain 等大型语言模型深度集成,是业界首个提出 Graph RAG 概念的公司。Graph RAG 结合了知识图谱和大型语言模型,提供了更具成本效益、更智能和更精确的搜索结果。
GraphRAG 是一种使用知识图谱的检索增强生成 (RAG) 方法。它基于图数据库(如 NebulaGraph),采用图结构存储数据,能够高效地表示和存储实体之间的复杂关系,支持大规模图数据的存储和查询。图结构使得数据之间的关系更加直观和灵活,可以方便地进行关系的遍历和分析。
**GraphRAG 的检索方法是从关键实体开始的图形检索,使用图推理或子图检索通过关系找到相关上下文。**GraphRAG 从细粒度实体提取开始,遵循高质量关系(手动定义或由大型语言模型定义)进行精确的上下文匹配,能够正确识别缺乏相关内容,避免产生幻觉答案,有效提高内容生成准确性。
结合使用大语言模型 LLM(如 DeepSeek)从文档构建知识图,并执行以查询为中心的摘要,可以改进 RAG 的搜索部分。LLM 先从存储在图数据库中的语料进行搜索匹配相关信息,再按需进行联网搜索,在 DeepSeek R1 模型的推理模型加持下,搜索结果更多,知识推理和分析过程更全面,生成出来的内容更丰富准确。
传统基于向量的方法多采用支持向量类型和向量索引的关系型数据库,关系型数据库采用表格形式存储数据,通过表与表之间的关系来表示实体之间的联系。虽然也可以存储关系数据,但在处理复杂关系和大规模图数据时,性能和灵活性略显不足。GraphRAG 与传统的基于向量的方法相比,可以检索到更多相关内容,当您需要对整个数据集进行全面的答案时,选择 GraphRAG 更为合适。
在实际应用中,GraphRAG 可以用于多种场景。例如,在影视制作中,可以通过 NebulaGraph 和 DeepSeek 分析人物关系,帮助编剧和导演更好地构建故事线。在学术研究中,可以通过这种结合,深入研究影视作品中的人物关系和文化内涵。在市场营销中,可以通过分析人群浏览记录和购买记录,更精准的推荐商品。
目前,GraphRAG 仍处于学术研究阶段和工业实现的初级阶段,技术在训练数据和文本理解方面仍面临挑战,需要持续“投喂”大量的数据,和计算资源、算力支撑。随着图技术发展、算法改进提升,相信 GraphRAG 检索计算能力、推理表达能力将更快、更强,期待有更多基于 NebulaGraph 的 GraphRAG 项目落地生花。
如何系统学习掌握AI大模型?
AI大模型作为人工智能领域的重要技术突破,正成为推动各行各业创新和转型的关键力量。抓住AI大模型的风口,掌握AI大模型的知识和技能将变得越来越重要。
学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。
这里给大家精心整理了一份
全面的AI大模型学习资源
,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享
!
1. 成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
2. 大模型经典PDF书籍
书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)
3. 大模型视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
4. 2024行业报告
行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。
5. 大模型项目实战
学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。
6. 大模型面试题
面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
全套的AI大模型学习资源已经整理打包,有需要的小伙伴可以
微信扫描下方CSDN官方认证二维码
,免费领取【保证100%免费
】