功能文档
来源
本地文件上传
您可以将文件拖放到左侧的第一个输入区域。应用程序将使用 LangChain 加载器(PDFLoader 和 Unstructured Loader)将上传的源文件作为文档节点存储在图中。
| 文件类型 | 支持的扩展名 |
|---|---|
Microsoft Office |
.docx, .pptx, .xls |
图像 |
.jpeg, .jpg, .png, .svg |
文本 |
.html, .txt, .md |
网络链接
第二个输入区域用于处理网络链接。
-
YouTube 字幕
-
维基百科页面
-
网页
应用程序将使用 YouTube 解析器解析并存储上传的 YouTube 视频(字幕)作为图中的文档节点。
对于维基百科链接,我们使用维基百科加载器。例如,您可以提供 https://en.wikipedia.org/wiki/Neo4j,它将加载 Neo4j 的维基百科页面。
对于网页,我们使用 Unstructured Loader。例如,您可以提供来自 https://theguardian.com/ 的文章,它将加载文章内容。
LLM 模型
应用程序使用机器学习模型将 PDF、网页和 YouTube 视频字幕转换为实体及其关系的知识图谱。可以通过设置环境变量来配置/启用/禁用特定模型。
以下是已配置的模型(但只有前 3 个在公开托管版本中可用)
-
OpenAI GPT 3.5 和 4o
-
VertexAI (Gemini 1.0),
-
Diffbot
-
Bedrock,
-
Anthropic
-
兼容 OpenAI API 的模型,如 Ollama、Groq、Fireworks
所选的 LLM 模型将同时用于处理新上传的文件和驱动聊天机器人。请注意,不同模型的能力各异,因此它们的效果可能不同,尤其是在提取任务中。
图增强功能
可视化
您可以可视化提取出的文档的词法图、实体图或完整的知识图谱。
图可视化
有两种选项——可以通过表格末尾的放大镜图标针对单个文档,或者使用“预览图”按钮针对所有选定文档进行查看。
图可视化将在弹出窗口中显示相关文件,您可以过滤要查看的图类型:
-
词法图 - 文档和块节点及其关系
-
实体图 - 实体节点及其关系
-
完整图 - 所有节点和关系
在 Neo4j Bloom 中探索
使用“在 Neo4j Bloom 中探索”按钮,您可以在 Neo4j Workspace 中打开构建好的知识图谱,进行进一步的视觉探索、查询和分析。
在 Bloom/Explore 中,您可以运行低代码模式查询(或使用 Copilot)从图中获取数据并进行成功扩展。如果您运行的是启用了 GDS 的实例,还可以运行图算法并可视化结果。您还可以交互式地编辑和向图中添加内容。
在 Neo4j Data Importer 中,您可以额外从 CSV 文件导入结构化数据,并将其连接到提取的知识图谱中。
在 Neo4j Query 中,您可以编写 Cypher 查询(或使用 Copilot)从数据库中提取表格数据和图数据。
聊天机器人
工作原理
当用户提出问题时,我们使用配置的 RAG 模式根据提取文档的图数据进行回答。这意味着问题会被转换为向量嵌入、图查询或更高级的 RAG 方法。
我们还会总结聊天记录,并将其用作丰富上下文的元素。
特征
-
选择 RAG 模式:您可以选择仅向量模式或 GraphRAG(向量+图)模式。
-
与选定文档聊天:仅使用选定文档进行 RAG,通过预过滤来实现。
-
详情:打开检索信息弹出窗口,显示 RAG 代理如何收集和使用来源(文档)、块和实体。还提供有关所用模型和令牌消耗的信息。
-
清除聊天:删除当前会话的聊天记录。
-
展开视图:以全屏模式打开聊天机器人界面。
-
复制:将回答内容复制到剪贴板。
-
文字转语音:大声朗读回答内容。
回答生成
各种输入和确定的来源(问题、向量结果、实体(名称+描述)、关系对、聊天记录)都会作为上下文信息发送给选定的 LLM 模型,并结合自定义提示词,要求其基于提供的元素和上下文对问题进行回答和格式化。
当然,提示词中还有更多技巧,例如格式化要求、要求引用来源、不知道答案时不进行猜测等。完整的提示词和说明可以在 GitHub 仓库中找到。