📚 AI驱动的书籍知识图谱制作完整指南
🎯 一站式解决方案:从电子书到交互式知识图谱的完整工作流程
🛠️ 环境准备
在开始制作知识图谱之前,请确保安装以下工具:
📦 必需依赖
1. MinerU - PDF智能解析工具
# 安装 MinerU(PDF转换工具)
# 详细安装指南:https://github.com/opendatalab/MinerU
2. BookTools - 书籍处理工具链
# 安装自定义开发的命令行工具
npm install -g booktools
3. Gemini CLI - AI交互接口
# 安装并配置 Gemini CLI
# 详细配置指南:https://github.com/google-gemini/gemini-cli
✅ 环境检查
安装完成后,验证工具是否正常工作:
# 检查 booktools
booktools --version
# 检查 gemini
gemini --help
📖 第一步:书籍格式转换
将电子书转换为AI友好的Markdown格式是制作知识图谱的第一步。
🔄 支持的格式
格式 | 推荐工具 | 说明 |
---|---|---|
📄 TXT | 无需转换 | 直接使用 |
📚 EPUB | BookTools | 一键转换 |
MinerU | 智能解析 |
📚 EPUB 格式处理
EPUB可以使用BookTools可以实现一键转换:
# 将EPUB文件放在任意目录,然后运行:
booktools process <书籍名称>.epub
# 🎉 转换完成!工具会自动完成:
# ✅ 提取EPUB中的文本内容
# ✅ 转换为标准Markdown格式
# ✅ 清理无关的HTML标签
# ✅ 合并章节为完整文档
# ✅ 生成规范的目录结构
📁 输出目录结构
<书籍名称>/
├── books/ # 📁 原始章节文件(备份用)
│ ├── 第一章.md
│ ├── 第二章.md
│ ├── 第三章.md
│ └── <书籍名称>.md.backup # 📄 原始备份
└── wiki/ # 📁 AI处理文件(主要工作目录)
├── <书籍名称>.md # 📄 完整书籍内容
└── GEMINI.md # 📄 AI分析模板
📑 PDF 格式处理
PDF格式可以使用MinerU转换:https://github.com/opendatalab/MinerU。 转换后,会得到一个<书籍名称>.md文件,这个文件就是转换后的Markdown文件。
# 1. 创建工作目录结构
mkdir -p <书籍名称>/wiki
cp ./output/<书籍名称>.md <书籍名称>/wiki/
# 2. 进入wiki目录并生成AI模板
cd <书籍名称>/wiki
booktools template
# 🎉 转换完成!现在有了标准的目录结构
📁 输出目录结构
<书籍名称>/
└── wiki/ # 📁 AI处理文件
├── <书籍名称>.md # 📄 完整书籍内容
└── GEMINI.md # 📄 AI分析模板
📄 TXT 格式处理
纯文本格式最简单,无需格式转换:
# 1. 创建工作目录结构
mkdir -p <书籍名称>/wiki
# 2. 将TXT文件转换为Markdown并放入wiki目录
cp <书籍名称>.txt <书籍名称>/wiki/<书籍名称>.md
# 3. 进入wiki目录并生成AI模板
cd <书籍名称>/wiki
booktools template
# 🎉 转换完成!现在有了标准的目录结构
📁 输出目录结构
<书籍名称>/
└── wiki/ # 📁 AI处理文件
├── <书籍名称>.md # 📄 完整书籍内容
└── GEMINI.md # 📄 AI分析模板
🤖 第二步:AI知识解析工作流
完成格式转换后,接下来使用AI进行智能解析和知识图谱构建。
🚀 启动AI工作流
1. 进入工作环境
# 切换到书籍工作目录(由booktools process生成)
cd <书籍名称>/wiki
# 启动Gemini CLI交互环境
gemini
2. 第一阶段:宏观分析
在Gemini CLI中执行初始构建任务:
开始【初始构建】任务
🎯 这一步骤将完成:
- 📊 全书结构分析:识别章节、主题、核心概念
- 📝 生成任务清单:自动规划后续的节点填充任务
📄 输出文件:
<书名>-宏观蓝图.md
- 全书的知识架构概览todo.md
- 详细的任务执行清单
3. 第二阶段:节点填充
基于todo.md
里的任务列表,开始批量生成知识节点:
开始批量完成前30个【节点填充】任务
⚙️ 工作机制:
- 🔄 自动化处理:AI会按照todo.md中的计划逐个生成节点
- 📝 实时更新:完成任务后会更新todo.md的状态
- 🔗 关联建立:自动在节点间建立双向链接关系
4. 迭代执行
继续批量处理剩余节点:
# 继续处理下一批节点
继续批量完成接下来的30个【节点填充】任务
💡 建议:根据书籍复杂度,可以调整每批处理的节点数量(10-50个)
🔧 异常处理与恢复
在使用AI处理过程中,可能会遇到大模型服务不稳定或者大模型本身不稳定的情况。导致任务中断。
🔄 任务恢复
由于todo.md文件实时记录了任务状态,中断后可以无缝继续:
# 从中断处继续执行
继续批量完成接下来的30个【节点填充】任务
📁 第三步:文件整理与输出
AI处理完成后,需要对生成的文件进行整理,准备最终的知识库输出。
🗂️ 自动文件整理
工作目录中会包含多种文件类型,需要进行分类整理:
# 在工作目录中运行文件整理命令
booktools organize <书籍名称>
📋 整理前的目录结构:
<书籍名称>/wiki/
├── <书籍名称>.md # 📄 原始书籍内容
├── <书籍名称>-宏观蓝图.md # 📄 结构分析
├── todo.md # 📄 任务记录
├── GEMINI.md # 📄 AI提示模板
├── 人物-张三.md # 📄 人物节点
├── 事件-某某事件.md # 📄 事件节点
├── 地点-某某地方.md # 📄 地点节点
└── ... # 📄 其他节点文件
📋 整理后的目录结构:
📦 输出结果
├── 📂 <书籍名称>/ # 🎯 完整知识库(用于发布)
│ ├── 📄 <书籍名称>-宏观蓝图.md
│ ├── 📄 人物-张三.md
│ ├── 📄 事件-某某事件.md
│ ├── 📄 地点-某某地方.md
│ └── 📄 ... (所有知识节点)
└── 📂 backup/ # 🗄️ 备份文件
├── 📄 <书籍名称>.md # 原始内容
├── 📄 todo.md # 任务记录
└── 📄 GEMINI.md # AI模板
🌐 第四步:发布与使用
知识库整理完成后,可以选择不同的使用方式。
📱 本地使用(Obsidian)
适合人群:个人学习、研究使用
# 1. 打开Obsidian
# 2. 选择"打开文件夹作为仓库"
# 3. 选择生成的<书籍名称>目录
# 4. 开始探索知识图谱!
🌟 Obsidian使用优势:
- 🔗 双向链接:点击任意链接快速跳转
- 📊 图谱视图:可视化知识网络关系
- 🔍 全文搜索:快速定位任意内容
- 📝 个人笔记:添加自己的思考和注解
🌐 在线发布(Quartz)
适合人群:分享给他人、公开展示
📋 发布准备
# 1. 将知识库目录复制到Quartz项目的content目录
cp -r <书籍名称>/ ../quartz/content/
# 2. 进入Quartz项目目录
cd ../quartz
# 3. 预览网站效果
npm run serve
# 4. 构建生产版本
npm run build
🚀 部署选项
平台 | 难度 | 费用 | 特点 |
---|---|---|---|
GitHub Pages | ⭐⭐ | 免费 | 集成度高,自动部署 |
Vercel | ⭐ | 免费额度 | 速度快,全球CDN |
Netlify | ⭐ | 免费额度 | 功能丰富,易于配置 |
🎯 使用建议
📖 读者视角:
- 从宏观蓝图开始了解全书结构
- 通过人物关系图理解角色网络
- 跟随事件时间线梳理情节发展
- 利用地点信息构建空间概念
🔍 研究视角:
- 使用搜索功能快速定位相关内容
- 通过标签系统进行主题研究
- 利用双向链接发现隐藏关联
- 结合原文进行深度分析
🎉 完成!
恭喜您成功创建了一个完整的AI驱动知识图谱!现在您可以:
- ✅ 高效学习:快速定位和关联相关信息
- ✅ 分享交流:与他人分享您的知识发现
- ✅ 持续完善:在使用过程中不断补充和优化
💡 提示:这只是开始!您可以继续添加新的书籍,构建更大的知识宇宙。