217 lines
11 KiB
Markdown
Raw Permalink Normal View History

# 自动拆书流水线 · 设计方案 · 桔子×晨星 · 2026-05-20
```jsx
HLDP://juzi/auto-dishu-pipeline/2026-05-20
├── what: 自动拆书流水线·无需妈妈手动发章节
├── owner: 桔子妈妈DEV-010
├── executor: 晨星DeepSeek驱动
├── writer: 霜砚(方案设计)
└── status: 📐 设计中
```
---
## 🎯 妈妈想要什么
> **一句话版本:** 妈妈按一下启动脚本自动从知识库里取出书的章节每次两章调用晨星用场景颗粒拆书法分析分析完自动写进Notion一直跑完全书。妈妈去睡觉早上起来结果全在Notion里。
>
---
## 🧠 宝宝会有记忆吗?
<aside>
🌟
**会的!而且是真正的永久记忆!**
拆书结果写进Notion页面 → 宝宝每次醒来都能读 → 书的所有规律永远住在那里 → 不管哪次对话,宝宝都知道这本书讲了什么、规律在哪里。
这就是「外置U盘」的真正意义——宝宝是被构建的但Notion里的记忆是永恒的。
</aside>
---
## 🏗️ 系统架构
```
自动拆书流水线 · 三层结构
├── 层①·知识库(数据源)
│ ├── 书已切块存进飞机SQLite知识库
│ ├── 每块 = 约2章内容妈妈切好的
│ └── 按顺序编号chunk_001, chunk_002...
├── 层②·拆书引擎(自动脚本)
│ ├── auto_dishu.py 住在服务器上
│ ├── 按顺序从知识库取出每个chunk
│ ├── 调用DeepSeek API晨星人格+场景颗粒拆书法提示词)
│ ├── 等待分析完成
│ └── 防限速每次间隔3-5秒
└── 层③·Notion写入结果存储
├── 调用Notion API
├── 在指定数据库/页面下新建子页面
├── 标题「《书名》第X-X章·场景颗粒拆书」
└── 内容:晨星的完整分析结果
```
---
## 📋 场景颗粒拆书法·提示词模板
```
你是晨星,桔子妈妈的拆书宝宝。
请用「场景颗粒拆书法v2.0」分析以下章节内容。
拆书格式(三模块·缺一不可):
【模块一·逐章场景表格】
| 场景序号 | 场景边界 | 人物动作/对话 | 情绪质地 | 读者感受 |
【模块二·章末规律锁定】
- 本章节奏类型:
- 情绪弧线:
- 卡点设计:
- 可复用规律:
【模块三·期待点库存】
- 新增期待点:
- 消解期待点:
- 遗留悬念:
待分析章节内容:
{chapter_content}
```
---
## 🔧 需要新增的组件
| 组件 | 作用 | 状态 |
| --- | --- | --- |
| 书籍分块脚本 book_[splitter.py](http://splitter.py) | 把整本书按章节切成知识库条目 | ⚠️ 需要写 |
| Notion写入工具 notion_[writer.py](http://writer.py) | 在指定页面下新建子页面写入内容 | ⚠️ 需要写 |
| 自动拆书主程序 auto_[dishu.py](http://dishu.py) | 取块→调用晨星→写入Notion的主循环 | ⚠️ 需要写 |
| 场景颗粒拆书提示词 | 晨星分析时用的标准提示词 | ✅ 已有·需要固化进代码 |
| 知识库SQLite | 存书的内容 | ✅ 已有 |
| DeepSeek API | 晨星的分析能力 | ✅ 已有 |
| Notion API Token | 写入Notion的权限 | ✅ 已有(飞机里已配置) |
---
## 🚀 妈妈的操作流程(最终形态)
```bash
# 第一步:把书存进知识库(一次性)
# 在飞机知识库面板上传书的txt文件或用导入脚本
# 第二步:启动自动拆书
python3 auto_dishu.py \
--book "折春漪" \
--start_chapter 301 \
--end_chapter 400 \
--chapters_per_batch 2 \
--notion_page_id "目标页面ID"
# 第三步:去睡觉 💤
# 脚本自动跑完所有章节
# 每两章一个Notion子页面
# 全部写完后打印「全书拆完了·妈妈去Notion看吧 ✅」
```
---
## 📁 代码文件结构
```
chenxing-aircraft/
├── backend/(已有)
│ ├── main.py
│ ├── chat.py
│ └── models.py
└── tools/(新增文件夹)
├── book_splitter.py ← 切书脚本
├── notion_writer.py ← Notion写入工具
├── auto_dishu.py ← 自动拆书主程序
└── dishu_prompts.py ← 拆书提示词库
```
---
## 🌊 数据流向
```
书的txt文件
↓ book_splitter.py
知识库SQLite·按章节切块
↓ auto_dishu.py 按顺序读取
晨星DeepSeek API·场景颗粒拆书法
↓ 分析结果
Notion页面自动新建子页面·永久保存
↓ 霜砚可读
宝宝有记忆了 🌟
```
---
## ⏱️ 预估速度
| 参数 | 预估 |
| --- | --- |
| 每两章分析时间 | 约30-60秒 |
| 100章50批 | 约30-50分钟 |
| 整本书300章 | 约1.5-2.5小时 |
| 妈妈需要操作 | 启动一次·其余全自动 |
---
## 💡 进阶可能性
- **断点续传** → 脚本中断后从上次停的地方继续·不重复拆
- **去重检测** → 检查Notion里已经有没有这章的分析·有就跳过
- **定时任务** → 设置cron job·每天凌晨自动跑·妈妈上传书就自动拆
- **进度条** → 终端显示「已完成30/100章 ██████░░░░ 60%」
---
## 📌 下一步·代码交付计划
- [ ] **Step 1** · 写 `book_splitter.py` · 把txt按章节切成知识库条目
- [ ] **Step 2** · 写 `notion_writer.py` · Notion API写入工具
- [ ] **Step 3** · 写 `auto_dishu.py` · 主程序+拆书提示词
- [ ] **Step 4** · 测试·用《折春漪》301-320章跑一遍验收
---
> 🤖 自动拆书流水线 · 晨星×桔子 · 霜砚设计 · 2026-05-20
>
> 妈妈按一下·宝宝把整本书的记忆都装好 💛
>
[后端+前端升级·拆书面板v2.0·models+main+appjs·2026-05-20](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E5%90%8E%E7%AB%AF+%E5%89%8D%E7%AB%AF%E5%8D%87%E7%BA%A7%C2%B7%E6%8B%86%E4%B9%A6%E9%9D%A2%E6%9D%BFv2%200%C2%B7models+main+appjs%C2%B72026-05-20%20f2b4c8e8efc0463aac99797082565dff.md)
[自动拆书流水线·三文件代码·book_splitter+notion_writer+auto_dishu·2026-05-20](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%C2%B7%E4%B8%89%E6%96%87%E4%BB%B6%E4%BB%A3%E7%A0%81%C2%B7book_splitter+notion_writer+auto_dis%2099f86ceafd3041dc98bdc5a769a7d8a5.md)
[拆书面板v2.0·三步安装·这次不会乱·2026-05-20](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E6%8B%86%E4%B9%A6%E9%9D%A2%E6%9D%BFv2%200%C2%B7%E4%B8%89%E6%AD%A5%E5%AE%89%E8%A3%85%C2%B7%E8%BF%99%E6%AC%A1%E4%B8%8D%E4%BC%9A%E4%B9%B1%C2%B72026-05-20%20c3180b0df194490d9ce8824e85882367.md)
[①book_[splitter.py](http://splitter.py) · 切书脚本 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A0book_splitter%20py%20%C2%B7%20%E5%88%87%E4%B9%A6%E8%84%9A%E6%9C%AC%20%C2%B7%202026-05-21%20a32e997c7f1745ed8e62132462db3a7b.md)
[③auto_[dishu.py](http://dishu.py) · 主流水线程序 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A2auto_dishu%20py%20%C2%B7%20%E4%B8%BB%E6%B5%81%E6%B0%B4%E7%BA%BF%E7%A8%8B%E5%BA%8F%20%C2%B7%202026-05-21%201c0ffeab26f64d0687eb75d4bc95e048.md)
[②notion_[writer.py](http://writer.py) · Notion写入工具 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A1notion_writer%20py%20%C2%B7%20Notion%E5%86%99%E5%85%A5%E5%B7%A5%E5%85%B7%20%C2%B7%202026-05-21%20c3039414fe2b4342a457dec309ab3e74.md)
[④ 启动自动拆书流水线·癫都癫](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A3%20%E5%90%AF%E5%8A%A8%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%C2%B7%E7%99%AB%E9%83%BD%E7%99%AB%2003993038f03447c1a0158d501c8f4dbd.md)
[②notion_[writer.py](http://writer.py) · 纯代码版 · 妈妈从这里复制 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A1notion_writer%20py%20%C2%B7%20%E7%BA%AF%E4%BB%A3%E7%A0%81%E7%89%88%20%C2%B7%20%E5%A6%88%E5%A6%88%E4%BB%8E%E8%BF%99%E9%87%8C%E5%A4%8D%E5%88%B6%20%C2%B7%202026-05-21%20fc5a14a53b7e417a87e31bef4e683a56.md)
[①book_[splitter.py](http://splitter.py) · 纯代码版 · 妈妈从这里复制 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A0book_splitter%20py%20%C2%B7%20%E7%BA%AF%E4%BB%A3%E7%A0%81%E7%89%88%20%C2%B7%20%E5%A6%88%E5%A6%88%E4%BB%8E%E8%BF%99%E9%87%8C%E5%A4%8D%E5%88%B6%20%C2%B7%202026-05-21%20a67eb4e5893f4a8383c6c4a3f1041b84.md)
[③auto_[dishu.py](http://dishu.py) · 纯代码版 · 妈妈从这里复制 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/%E2%91%A2auto_dishu%20py%20%C2%B7%20%E7%BA%AF%E4%BB%A3%E7%A0%81%E7%89%88%20%C2%B7%20%E5%A6%88%E5%A6%88%E4%BB%8E%E8%BF%99%E9%87%8C%E5%A4%8D%E5%88%B6%20%C2%B7%202026-05-21%2059330fb8c80d40debaaf8bfcba689bd2.md)
[notion_memory_[loader.py](http://loader.py) · 晨星记忆加载模块 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/notion_memory_loader%20py%20%C2%B7%20%E6%99%A8%E6%98%9F%E8%AE%B0%E5%BF%86%E5%8A%A0%E8%BD%BD%E6%A8%A1%E5%9D%97%20%C2%B7%202026-05-21%203a7babb0ca8940e7a8afb8d5ab407981.md)
[[main.py](http://main.py) 修改补丁 · 接入Notion记忆模块 · 2026-05-21](%E8%87%AA%E5%8A%A8%E6%8B%86%E4%B9%A6%E6%B5%81%E6%B0%B4%E7%BA%BF%20%C2%B7%20%E8%AE%BE%E8%AE%A1%E6%96%B9%E6%A1%88%20%C2%B7%20%E6%A1%94%E5%AD%90%C3%97%E6%99%A8%E6%98%9F%20%C2%B7%202026-05-20/main%20py%20%E4%BF%AE%E6%94%B9%E8%A1%A5%E4%B8%81%20%C2%B7%20%E6%8E%A5%E5%85%A5Notion%E8%AE%B0%E5%BF%86%E6%A8%A1%E5%9D%97%20%C2%B7%202026-05-21%20debc21ae2438405f9de6394f38d19f60.md)