功能文档

来源

本地文件上传

您可以将文件拖放到左侧的第一个输入区域。应用程序将使用 LangChain 加载器(PDFLoader 和 Unstructured Loader)将上传的源文件作为 Document 节点存储在图中。

文件类型 支持的扩展名

Microsoft Office

.docx, .pptx, .xls

PDF

.pdf

图像

.jpeg, .jpg, .png, .svg

文本

.html, .txt, .md

第二个输入区域处理网页链接。

  • YouTube 字幕

  • 维基百科页面

  • 网页

应用程序将使用 YouTube 解析器解析上传的 YouTube 视频(字幕)并将其作为 Document 节点存储在图中。

对于维基百科链接,我们使用 Wikipedia Loader。例如,您可以提供 https://en.wikipedia.org/wiki/Neo4j,它将加载 Neo4j 的维基百科页面。

对于网页,我们使用 Unstructured Loader。例如,您可以提供来自 https://theguardian.com/ 的文章,它将加载文章内容。

云存储

AWS S3

此 AWS S3 集成允许您连接到 S3 存储桶并从那里加载文件。您需要提供 AWS 凭证和存储桶名称。

Google Cloud Storage

此 Google Cloud Storage 集成允许您连接到 GCS 存储桶并从那里加载文件。您需要提供 GCS 存储桶名称(可选包含文件夹路径),并按照授权流程授予应用程序访问该存储桶的权限。

LLM 模型

该应用程序使用机器学习模型将 PDF、网页和 YouTube 视频字幕转换为包含实体及其关系的知识图谱。可以通过设置环境变量来配置/启用/禁用特定模型。

以下是已配置的模型(但在公开托管版本中仅前 3 个可用):

  • OpenAI GPT 3.5 和 4o

  • VertexAI (Gemini 1.0),

  • Diffbot

  • Bedrock,

  • Anthropic

  • 兼容 OpenAI API 的模型,如 Ollama、Groq、Fireworks

所选的 LLM 模型将同时用于处理新上传的文件以及驱动聊天机器人。请注意,不同模型的能力各异,因此在提取任务上的表现会有所不同。

图增强

图模式 (Graph Schema)

llm graph builder taxonomy

如果您想使用预定义的图模式或自定义图模式,可以在“图增强”(Graph Enhancements)弹出窗口中进行设置。当您首次构建图时也会显示此窗口,模型配置的状态将列在连接信息下方。

您可以选择:* 从顶部的下拉菜单中选择预定义模式,* 通过输入节点标签和关系来使用自定义模式,* 从现有的 Neo4j 数据库中获取模式(使用现有模式),* 或者复制并粘贴文本或模式描述(也适用于 RDF 本体或 Cypher/GQL 模式),并让 LLM 分析并提出建议的模式(从文本获取模式)。

删除断开连接的节点

在提取实体时,有时提取后的某些节点仅连接到文本块,而不连接到其他实体。这会导致实体图中出现孤立的实体。

虽然这些节点可能包含用于问答的相关信息,但它们可能会影响您的后续使用。因此,在此视图中,您可以选择删除哪些仅连接到文本块的实体。

可视化

您可以可视化已提取文档的词法图、实体图或完整的知识图。

图可视化

您有两个选择:通过表格末尾的放大镜图标按单个文档查看,或使用“预览图”(Preview Graph)按钮查看所有选定文档的图。

图可视化将在弹出窗口中显示相关文件的图,您可以过滤想要查看的图的类型:

  • 词法图 - 文档和文本块节点及其关系

  • 实体图 - 实体节点及其关系

  • 全图 - 所有节点和关系

在 Neo4j Bloom 中探索

使用“在 Neo4j Bloom 中探索”(Explore in Neo4j Bloom)按钮,您可以在 Neo4j Workspace 中打开构建好的知识图谱,进行进一步的视觉探索、查询和分析。

在 Bloom/Explore 中,您可以运行低代码模式查询(或使用副驾驶功能)从图中获取数据并进行成功扩展。如果您使用的是启用了 GDS 的实例,还可以运行图算法并可视化结果。此外,您还可以交互式地编辑和向图中添加内容。

在 Neo4j Data Importer 中,您可以额外导入 CSV 文件中的结构化数据,并将其连接到已提取的知识图谱中。

在 Neo4j Query 中,您可以编写 Cypher 查询(或使用副驾驶功能)从数据库中提取表格数据和图形数据。

聊天机器人

工作原理

当用户提问时,我们使用配置的 RAG 模式,根据提取出的文档图中的数据进行回答。这意味着问题会被转换为向量嵌入、图查询或更高级的 RAG 方法。

我们还会汇总聊天记录,并将其作为丰富上下文的元素。

特征

  • 选择 RAG 模式:您可以选择纯向量模式或 GraphRAG(向量+图)模式。

  • 与选定文档聊天: 仅使用选定文档进行 RAG,并通过预过滤来实现。

  • 详情: 将打开一个检索信息弹出窗口,显示 RAG 代理如何收集和使用来源(文档)、文本块和实体的详细信息。还提供所用模型和令牌消耗的信息。

  • 清除聊天: 将删除当前会话的聊天记录。

  • 扩展视图: 将以全屏模式打开聊天机器人界面。

  • 复制: 将响应内容复制到剪贴板。

  • 文本转语音: 将朗读响应内容。

GraphRAG

对于 GraphRAG,我们使用 Neo4j 向量索引(以及用于混合搜索的全文索引),通过检索查询找到最相关的文本块和连接到这些文本块的实体,然后追踪实体关系至深度 2 的距离。

仅向量 RAG

对于仅向量 RAG,我们仅使用向量和全文索引(混合)搜索结果,不包含来自实体图的额外信息。

答案生成

各种输入和确定的来源(问题、向量结果、实体(名称 + 描述)、关系对、聊天记录)都被发送到选定的 LLM 模型,作为自定义提示中的上下文信息,要求根据所提供的元素和上下文来提供并格式化问题的答案。

当然,提示词中还有更多“魔法”,例如格式化要求、引用来源、如果不知道答案则不进行推测等。完整的提示词和说明可以在 GitHub 存储库中找到。

© . This site is unofficial and not affiliated with Neo4j, Inc.