作者:lizhiwei
BookLab AI Reader 是一个本地运行的 AI 读书包生成器。用户上传 PDF 或输入 PDF URL,填写 OpenAI-compatible API 配置后,工具会生成一套可离线打开的阅读包:章节笔记、整书速读稿、交互式思维导图、HTML 阅读层和双击启动脚本。
这个项目默认在本地处理文件,不做云端 SaaS,适合处理个人拥有阅读权限的 PDF。
- 上传本地 PDF,或输入 PDF URL。
- 支持 OpenAI-compatible Chat Completions API。
- 自动读取 PDF 书签;没有书签时按页数自动拆分,并生成
ranges.csv供人工调整。 - 生成分层阅读材料:
00-outline.md01-split-pdfs/02-text/03-chapter-notes/04-part-notes/05-final/index.html05-final/mindmap.html06-reader/
- 每本书结果目录自带 macOS/Windows 一键启动脚本。
双击:
start.command
或者在终端运行:
./start.sh首次启动会自动创建 .venv 并安装依赖。启动后会自动打开浏览器。
双击:
start.bat
或者在 PowerShell 中运行:
.\start.ps1前端页面会要求填写:
API Base URL:例如https://api.openai.com/v1API Key:你的模型服务密钥Model:例如gpt-4o-miniReasoning Effort:可选,DeepSeek 这类推理模型可用high
DeepSeek 可以填写:
API Base URL: https://api.deepseek.com
Model: deepseek-v4-pro
如果你填写完整地址 https://api.deepseek.com/chat/completions,项目也会兼容。地址或模型名包含 deepseek 时,后端会自动附加:
{
"thinking": {"type": "enabled"},
"reasoning_effort": "high",
"stream": false
}也可以复制 .env.example 为 .env,手动配置:
cp .env.example .env注意:不要把 .env 或真实 API Key 提交到 GitHub。
- 启动项目,进入浏览器页面。
- 上传 PDF,或输入 PDF URL。
- 填写书名、API Base URL、API Key、Model。
- 点击“开始生成”。
- 等待进度完成。
- 点击“打开阅读包”。
- 以后也可以进入结果目录,双击
start-reader.command或start-reader.bat打开该书阅读包。
默认输出到:
outputs/books/书名/
每本书都是独立目录,便于归档、移动、上传或二次编辑。
booklab-ai-reader/
├── booklab/ # FastAPI 后端、PDF 工具、AI 流程、HTML 渲染
├── static/ # 浏览器前端
├── uploads/ # 本地上传缓存,默认不提交
├── outputs/ # 生成的阅读包,默认不提交
├── start.command # macOS 双击启动
├── start.bat # Windows 双击启动
├── requirements.txt
└── README.md
AI 能力来自你填写的模型 API。Python 代码负责 PDF 拆分、文本提取、任务调度、HTML 渲染和本地服务;模型负责理解内容、总结章节、生成速读稿和导图结构。
默认支持 OpenAI-compatible Chat Completions API。只要你的服务兼容 /chat/completions,就可以通过 API Base URL + API Key + Model 使用。
工具会自动按页数切分,并生成 ranges.csv。v1 会继续生成阅读包,但你可以后续根据 ranges.csv 调整拆分范围。
不会。这个项目默认在本机运行。PDF 只会发送给你自己填写的 AI API 对应服务,具体数据策略取决于你的模型服务商。
MIT License