Diffbot 是一套基于机器学习的产品,可轻松构建网络数据结构。 Diffbot 的自然语言处理 API 允许从非结构化文本数据中提取实体、关系和语义含义。![]()
用例
文本数据通常包含丰富的关系和洞察,可用于各种分析、推荐引擎或知识管理应用。 通过将Diffbot 的 NLP API 与图数据库 Neo4j 结合,您可以基于从文本中提取的信息创建强大、动态的图结构。这些图结构完全可查询,并可集成到各种应用中。
这种组合允许以下用例:
- 从文本文档、网站或社交媒体源构建知识图谱(如 Diffbot 的知识图谱)。
- 基于数据中的语义关系生成推荐。
- 创建理解实体间关系的高级搜索功能。
- 构建允许用户探索数据中隐藏关系的分析仪表板。
概述
LangChain 提供了与图数据库交互的工具:从文本构建知识图谱:使用图转换器和存储集成查询图数据库:使用链进行查询创建和执行与图数据库交互:使用代理进行健壮灵活的查询
设置
首先,获取所需包并设置环境变量:Diffbot NLP API
Diffbot 的 NLP API 是一个用于从非结构化文本数据中提取实体、关系和语义上下文的工具。
这些提取的信息可用于构建知识图谱。
要使用该 API,您需要从 Diffbot 获取免费 API 令牌。
DiffbotGraphTransformer 提取实体和关系。
DiffbotGraphTransformer 输出结构化数据 GraphDocument,可用于填充图数据库。
请注意,由于 Diffbot 的每次 API 请求字符限制,因此避免了文本分块。
将数据加载到知识图谱中
您需要一个正在运行的 Neo4j 实例。一个选项是在其 Aura 云服务中创建一个免费的 Neo4j 数据库实例。您也可以使用 Neo4j Desktop 应用程序在本地运行数据库,或运行 docker 容器。您可以通过执行以下脚本运行本地 docker 容器:add_graph_documents 方法将 GraphDocuments 加载到知识图谱中。
刷新图模式信息
如果数据库的模式发生变化,您可以刷新生成 Cypher 语句所需的模式信息查询图
我们现在可以使用图 Cypher QA 链向图提问。建议使用 gpt-4 来构建 Cypher 查询以获得最佳体验。将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时答案。

