📚 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无需转换直接使用
📚 EPUBBookTools一键转换
📑 PDFMinerU智能解析

📚 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驱动知识图谱!现在您可以:

  • 高效学习:快速定位和关联相关信息
  • 分享交流:与他人分享您的知识发现
  • 持续完善:在使用过程中不断补充和优化

💡 提示:这只是开始!您可以继续添加新的书籍,构建更大的知识宇宙。