LangChain+Neo4j:5分钟构建动态知识图谱

利用知识图谱从大量文档、视频中提取信息,建立实体之间的关系,有利于加速信息处理,提取文档中的数据,以及发现实体之间潜在关系和规律。

AI大模型的快速发展,大模型和知识图谱的结合,有了更多可能性。

本文我将演示下面我将演示如何在5分钟内上传数据源,构建一个动态知识图谱,可用于提取实体关系,并且与数据对话。

这里使用的工具是大模型知识图谱构建器(LLM Knowledge Graph Builder )。

这个工具是Neo4j生态系统中常用的GraphRAG工具之一,能够将非结构化数据转化为动态知识图谱,还可以可以通过自然语言查询数据并获得解释性见解。

先简单介绍下什么是大模型知识图谱构建器,及其工作流程。

什么是大模型知识图谱构建器

Neo4j 大模型知识图谱构建器是一款在线应用,无需编写代码和使用Cypher语言即可将非结构化文本转化为知识图谱,操作起来非常方便。

利用机器学习模型将PDF文件、网页和YouTube视频等转化为包含实体及其关系的知识图谱。

前端是基于我们Needle Starter Kit的React应用,后端是Python FastAPI应用。该应用使用了Neo4j为LangChain贡献的llm-graph-transformer模块。

该应用体验丝滑,分为以下四个简单步骤:

  1. \1. 导入数据:支持多种数据源,包括PDF文档、wiki页面、YouTube视频等。
  2. \2. 识别实体:使用AI大模型识别并提取非结构化文本中的实体和关系。
  3. \3. 构建图谱:将识别出的实体和关系转换为图谱格式,利用Neo4j的图谱功能。
  4. \4. 使用图谱:提供直观的网页界面,用户可以方便地与应用互动,包括上传数据源、可视化生成的图谱以及与RAG代理交互。这一功能特别令人兴奋,因为它使用户能够直观地与数据互动,宛如与知识图谱对话,无需任何技术知识。

img

你可以在Neo4j官网使用应用程序,无需绑定支付信用卡和AI大模型密钥,使用过程无任何障碍。

如果你想在本地或自己的环境中运行该程序,可以访问GitHub仓库并按照我们将在本文中介绍的步骤进行操作。

现在我们开始。

环境准备

在使用大模型知识图谱构建器之前,你需要创建一个新的Neo4j数据库。

你可以按照以下步骤使用免费的AuraDB数据库:

  • 1、访问 https://console.neo4j.io 并登录或创建账户。
  • 2、在Instances下创建一个新的AuraDB Free数据库。
  • 3、下载凭证文件。
  • 4、等待实例启动。

完成上述步骤后,Neo4j数据库已经启动,并且有了凭证。点击右上角的Connect to Neo4j,你打开大模型知识图谱构建器,

img

将之前下载的凭证文件拖到连接对话框中,所有信息会自动填充。你也可以手动输入所有信息。

创建知识图谱

首先将非结构化数据导入,然后通过AI大模型识别关键实体及其关系。

你可以将PDF和其他文件拖到左侧的第一个输入区域。

第二个输入框允许你复制粘贴YouTube视频(暂不支持其他视频网站)链接。

第三个输入框则用于输入wiki页面链接。

在这里,我将上传了:1)一家供应链公司内部的PDF文件,文档详细记录了他们的整个供应链策略和产品。2)福布斯的新闻文章;3)一个关于《企业可持续发展尽职调查指令》(CSDDD)的YouTube视频;4)以及wiki上的两篇文章。

你可以选择只上传pdf文档,视频或者wiki页面。

上传文件时,应用程序会使用LangChain文档加载器,以及YouTube解析器将上传的文件存储为图中的文档节点。

所有文件上传完毕后,你会看到类似如下的界面:

img

现在,我们只需要选择使用的模型,点击Generate Graph,系统将为你完成其余的工作!

如果你只想生成特定文件的图谱,可以先选择文件(在表格第一列的复选框中勾选),然后点击Generate Graph。

⚠️ 如果你想使用预定义的或自定义的图模式,可以点击右上角的设置图标,然后从下拉菜单中选择一个预定义模式。你也可以通过输入节点标签和关系来使用自定义模式,还可以从现有的Neo4j数据库中提取模式,或者粘贴文本,让AI大模型分析并提供建议的模式。

处理文件并创建知识图谱是如何进行的呢?我把工作原理总结如下:

  1. \1. 内容被分割成小块。
  2. \2. 小块存储在图中,并连接到文档节点和彼此,以实现高级RAG模式。
  3. \3. 高度相似的小块通过SIMILAR关系连接,形成K最近邻图。
  4. \4. 计算并存储小块的嵌入和向量索引。
  5. \5. 使用llm-graph-transformer或diffbot-graph-transformer,从文本中提取实体和关系。
  6. \6. 实体存储在图中,并连接到原始小块。

探索知识图谱

从文档中提取的信息被结构化为图形格式,其中实体成为节点,关系则成为连接这些节点的边。

Neo4j的优势在于它能够高效地存储和查询这些复杂的数据网络,使生成的知识图谱能够立即用于各种应用。

在使用RAG代理提问之前,可以选中一个或多个文档,点击显示图谱(Show Graph)按钮。这将显示所选文档中的实体,你也可以在该视图中显示文档和块节点。

img

点击Open Graph with Bloom按钮将启动Neo4j Bloom,将可视化创建的知识图谱。点击删除文件(Delete files)将从图中删除选定的文档和块(如果在选项中选择,也会删除实体)。

与你上传的数据对话

现在进入最后一个部分:使用右侧面板中的RAG代理(RAG agent)对话。

这部分是如何工作的呢?

下图展示了GraphRAG过程的简化视图。

img

当用户提出问题时,使用Neo4j向量索引和检索查询来找到与问题最相关的块及其连接的实体,深度最多可达两跳。

还可以总结聊天记录,并将其作为一个元素来丰富上下文。

各种输入的信息(问题、向量结果、聊天记录)都会被发送到选定的AI大模型中,通过一个自定义提示,向选定的AI大模型提供问题的各种输入和来源,并请求其根据这些元素和上下文提供并格式化问题的回答。当然,这个提示还包括其他方面,比如格式化要求引用来源,在不清楚答案时不进行推测等。

完整的提示和指令可以在QA_integration.py文件中找到,标记为FINAL_PROMPT。

文件地址:https://github.com/neo4j-labs/llm-graph-builder/blob/main/backend/src/QA_integration.py#L59

对话界面功能

在主屏幕右侧的聊天窗口,你会看到三个按钮:

  • • 关闭:关闭聊天机器人界面。
  • • 清除聊天记录:删除当前会话的聊天记录。
  • • 最大化窗口:以全屏模式打开聊天机器人界面。

RAG代理回答后,还有三种功能:

  • • 详情:打开检索信息弹出窗口,显示RAG代理如何收集和使用来源(文档)、块和实体的信息。还包括所用模型的信息和令牌消耗情况。
  • • 复制:将回答内容复制到剪贴板。
  • • 文字转语音:将回答内容朗读出来。

img

与知识图谱对话

现在,我就可以询问上传文档的知识了(使用之前上传的数据),比如查询这家公司生产的产品列表,以及这些产品是否受到CSDDD法规的影响,如果受到影响,具体的影响是什么。

img

结尾

如果你想更深入地了解AI大模型知识图谱构建器,可以访问GitHub仓库,那里有丰富的信息,包括源代码和文档。

此外,你可以查看更详细的入门指南,更多知识图谱构建经验。

GitHub仓库:https://github.com/neo4j-labs/llm-graph-builder

更详细的入门指南:https://neo4j.com/labs/genai-ecosystem/llm-graph-builder/


如何学习AI大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

想正式转到一些新兴的 AI 行业,不仅需要系统的学习AI大模型。同时也要跟已有的技能结合,辅助编程提效,或上手实操应用,增加自己的职场竞争力。

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高

那么我作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,希望可以帮助到更多学习大模型的人!至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

👉 福利来袭CSDN大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

全套AGI大模型学习大纲+路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈
基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉 福利来袭CSDN大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

img

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

知识图谱构建实战中,Neo4j是一个非常常用的图形数据库。首先,需要安装Java JRE和Neo4j。然后,使用Cypher语句对数据库进行操作,包括创建实体、创建关系、导入CSV数据等操作。在构建知识图谱时,可以采用三元组的形式来表示每一条数据或事实,即<实体,属性,属性值>、<实体, 关系, 实体>。Neo4j的查询语言Cypher已经成为事实上的标准,在属性图中,图是由顶点(Vertex)、边(Edge)和属性(Property)组成的。每个节点和关系都可以设置属性,可以由一个或多个属性。通过使用Neo4j构建的图是一个有向图,可以进行灵活的查询和可视化展示。 在实际应用中,可以使用Python中的py2neo库来连接Neo4j数据库。通过py2neo库,可以进行数据库的创建、实体的清空、节点的创建、关系的创建等操作。通过这些操作,可以构建出一个完整的知识图谱。 此外,还可以结合其他工具和技术来完善知识图谱构建。例如,可以使用Scrapy爬虫框架来爬取相关数据,使用MongoDB进行存储和解析得到的结构化数据。然后再将这些数据导入到Neo4j数据库中,构建出更加丰富和完整的知识图谱。 总之,通过使用Neo4j和相关工具,可以进行实战级别的知识图谱构建,从而实现对复杂关系和知识的存储、查询和可视化展示。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Neo4j入门实战之红楼梦知识图谱](https://blog.csdn.net/weixin_43653890/article/details/124718147)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [【知识图谱实战】 Neo4j入门与示例](https://blog.csdn.net/u012736685/article/details/100554313)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [医疗领域知识图谱构建实战](https://download.csdn.net/download/qq_36758270/88243468)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值