AI Knowledge Graph Generator 能将非结构化文本文档自动转化为交互式知识图谱的 AI 工具
这份详细的部署教程将指引您安装和使用 AI Knowledge Graph Generator一个能将非结构化文本文档自动转化为交互式知识图谱的 AI 工具。
该工具的核心价值在于自动化:它利用大语言模型从文本中提取实体(如人物、概念)及其关系(以“主体-谓词-客体”三元组形式),然后通过标准化和关系推理,最终生成一个可交互的 HTML 可视化图谱,帮助您直观理解复杂主题的内在联系。
整个部署流程非常直接。主要步骤包括:配置环境、设置 LLM 接口、运行处理脚本。
📥 安装与配置
1. 环境要求
- Python 3.11 或更高版本。
- 建议使用
uv(快速的 Python 包管理器) 或pip来管理依赖。
2. 克隆与安装
1 | # 克隆仓库 |
安装完成后,你也可以将项目作为模块安装,方便在任何地方运行命令:
1 | pip install --upgrade -e . |
3. 核心配置:config.toml
这是最重要的步骤。你需要编辑项目根目录下的 config.toml 文件,告诉工具如何连接到你选择的 LLM 服务。
关键配置项:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15[llm]
# 替换为你要用的模型名称
model = "qwen2.5:7b"
# 你的 API 密钥 (如果本地 Ollama/LM Studio 不需要,可留空或填 "sk-1234")
api_key = "sk-1234"
# 重要的:指向你的 LLM 服务端地址
# 例如 Ollama 本地服务:
base_url = "http://localhost:11434/v1/chat/completions"
# 如果你是 OpenAI:
# base_url = "https://api.openai.com/v1/chat/completions"
max_tokens = 8192
temperature = 0.2其他配置:
[chunking]: 控制文本分块大小 (chunk_size) 和重叠字数 (overlap),以适配 LLM 上下文窗口。[standardization]和[inference]: 控制是否启用实体标准化和关系推理。这两步会消耗额外 Token,但能显著提升图谱质量,建议保持启用 (enabled = true)。
🚀 运行知识图谱生成
配置完成后,使用命令行工具处理你的文本文件。
基本命令:
1 | # 直接运行脚本 |
常用选项:
--input FILE:指定输入文本文件 (必需)。--output FILE:指定输出的 HTML 文件名 (默认knowledge_graph.html)。--config FILE:指定配置文件路径 (默认config.toml)。--debug:输出详细的 LLM 响应和中间 JSON,用于调试。--no-standardize:跳过实体标准化步骤。--no-inference:跳过关系推理步骤。--test:使用内置示例数据生成图谱,用于测试环境。
示例:
1 | generate-graph --input data/my_document.txt --output my_knowledge_graph.html |
🧠 工作原理(简要)
- 文本分块:将长文档切分成有重叠的短块,适应 LLM 的上下文限制。
- 三元组提取:对每一块文本,调用 LLM 提取其中所有的 (主体, 关系, 客体) 三元组。
- 实体标准化 (可选):识别并统一指代同一实体的不同名称(如 “AI”, “人工智能”)。
- 关系推理 (可选):分析现有图谱,利用规则和 LLM 补充实体间可能存在的隐含关系。
- 可视化:使用 PyVis 库生成交互式 HTML 文件。节点大小和颜色分别代表重要性和所属社区(聚类)。
📊 解读可视化图谱
生成后,在浏览器中打开 HTML 文件,你可以:
- 拖拽/缩放:自由探索图谱。
- 悬停查看:查看实体名称和关系详情。
- 筛选与搜索:高亮特定节点或关系。
- 颜色区分:不同颜色代表算法检测出的不同主题社区。
⚠️ 注意事项
- API 成本:处理大型文档时,LLM 调用会消耗较多 Token,请留意你的 API 用量。使用本地模型(如 Ollama)可避免此问题。
- 质量依赖:最终图谱的质量高度依赖于所选 LLM 的文本理解能力和文档本身的清晰度。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 极客的赛博空间 | 专注 AI 与技术分享!
评论






