雅文内容创造工作台 · 设计文档 v4(开放画布 + RAG 知识库)
日期:2026-08-25 | 状态:方案确认稿 | 技术路线:FastAPI + SQLite + React(React Flow) + RAG 知识库
v3 → v4 变更:① 内容标签扩充至 26 个(6 大类,可自定义)② 知识库升级为 RAG 架构:导入→解析→分块→向量化→语义检索→引用溯源,不再用纯关键词检索
1. 项目概述
开放的多 Agent 内容工厂(浏览器访问的独立 Web 工作台):
- 你建 Agent(不限数量)→ 画布连线编排(顺序/依赖/单独启停)→ 每个 Agent 配规则、配RAG 知识库挂接
- 每次生产:给主控主题/导图 → 拆解成内容段(每段一个内容标签,同类可多个)→ 按画布派发 → 质检 → 人工审查 → 组合交付(六色 docx)
- 知识库 = RAG 建库:素材拖进去,系统自动解析、分块、向量化,Agent 用语义检索取料,答案带引用溯源
- 记忆沉淀必须你确认;段间靠锚点卡对齐;组合 Agent 做一致性总检
- 每个 Agent 可独立选择模型:主控/生产/质检/组合各配各的模型,画布节点上可见可换,任务成本按 Agent 记账
2. 内容标签体系(扩充版:26 个预置,6 大类)
主控拆导图时给每个节点标一个标签;Agent 声明擅长标签;标签可自定义新增。★=高频核心。
结构类(5)
| 标签 |
定义 |
典型用法 |
| ★ 开场 |
扎心暖场/承诺钩子/开场降档 |
案例/悬念 30 秒入题,第一件产品尽量前置 |
| 转场 |
段间衔接(话题自然滑入,禁报幕) |
组合器优先处理;也可由互动标记 Agent 预埋 |
| ★ 收尾 |
信念收尾:最后 30 秒纯信念不卖货 |
"所有的性感都不是天生的…"三段式金句 |
| ★ 钩子 |
收口钩子=导图次日真实框架 |
技法名与导图一致,不写死待确认道具 |
| 预告 |
中途预告/下一场承诺 |
只留一个带日期的承诺,其余"回头安排" |
内容类(8)
| 标签 |
定义 |
典型用法 |
| ★ 心法 |
认知/心态/信念升级 |
概念有画面、论证有对照;金句只点缀不作产品引入 |
| ★ 痛点 |
焦虑唤醒/扎心一刀/痛点直击 |
"你干开门,门都没上润滑你硬推,不哭才怪" |
| ★ 动机铺垫 |
讲解前先讲"为什么要听"(1-2 句动机+原理) |
每个知识点/技法前的"为什么"铺垫,压缩时不删 |
| ★ 案例 |
学员案例/姐妹故事 |
一人分饰两角、具体到细节 |
| 见证 |
产品见证/逆袭故事 |
卖货时的真实感来源(与案例区分开) |
| 冷知识 |
身体冷知识/科学证据 |
射精阈值/前列腺位置/括约肌无天然润滑…必须准确 |
| ★ 金句 |
金句收口/三段式金句 |
扎心话术收口干脆 |
| 共鸣 |
情感共鸣/温柔引导型低声区 |
全稿低谷段,气息写、放慢、压低声 |
技法类(4)
| 标签 |
定义 |
典型用法 |
| ★ 技法 |
外显手法:手活/口活/体位/步骤骨架 |
第一步…第二步…第三步+画面点,不展开细节 |
| ★ 功法 |
内功练习:凯格尔/缩阴功/八爪鱼收紧术类 |
可跟练、有作业(今晚洗澡从第一个摸到第五个) |
| ★ 跟练 |
现场跟练口令+互动指令 |
"吸气收紧、呼气放松→公屏打'咬'" |
| 安全提示 |
SM/技法安全提示 |
低温蜡烛、拍肉厚处、安全词定义(玫瑰) |
产品类(3)
| 标签 |
定义 |
典型用法 |
| ★ 产品销售 |
完整销售话术(痛点→价值→价格锚定→限量) |
一产品一概念不混谈;产品随动作进场 |
| ★ 产品体验 |
产品体验感写作(拿起→第一下→扩散→伴侣反应→欲望结果) |
掌心揉热粉嫩油贴锁骨窝停三秒… |
| 产品回指 |
后段产品回指("老师前面那瓶油") |
不二次完整销售 |
表现类(5)
| 标签 |
定义 |
典型用法 |
| ★ 画面 |
画面感描写(色情小说档画面链) |
动作/对话/快感写到底;腿心/热意/颤/烫 |
| ★ 场景 |
场景演绎:角色扮演/SM红房/水元素 |
环境/衣着/光线/气味/心理/动作过程 |
| 情绪 |
情绪低谷/峰值铺垫/三连跳板 |
拍桌→"我只说一遍"→停顿三秒→开讲 |
| 氛围 |
仪式感氛围(音乐/灯光/道具/舞美) |
灰字表演标记落实,不进正文说教 |
| 互动 |
公屏互动(扣字/选择题/等弹幕) |
"选择题→等弹幕→统计转折"真互动 |
辅助类(4)
| 标签 |
定义 |
典型用法 |
| 答疑 |
弹幕答疑/常见问题 |
从原文库检索真实答疑话术 |
| 双主播 |
男女主播互动 |
一唱一和、插科打诨 |
| 毛边 |
直播毛边(自嘲/断句/笑场/闲聊) |
真人感低谷 |
| 仪式 |
开营仪式/七天巡礼(引流课) |
无产品节点=0产品0红色 |
标签是开放体系:新建 Agent 时可自定义新标签;主控拆导图时如遇未知类型,列出来让你定标签。
2.1 标签管理(开放:随时自己添加)
| 操作 |
说明 |
| 新建标签 |
工作台【标签管理】页一键添加:名称+所属大类+一句话定义+典型用法;立即出现在 Agent 配置和主控拆解的选项里 |
| 编辑/停用 |
改名/改定义/停用(停用后不再出现在选项里,历史任务数据保留) |
| 分组 |
预置 6 大类可调整,也可自建新大类 |
| 未知标签兜底 |
主控拆导图遇到不认识的内容块 → 列入待确认清单让你定标签(定一个立即生效,或归入"待分类") |
| 数据一致性 |
标签改名/删除时,历史任务的段标签显示旧名(快照),不影响历史数据 |
3. Agent 关系画布(同 v3,不变)
节点=Agent(启停开关/知识库挂接显示/模型标识)、连线=锚点卡流向、顺序=图拓扑、模板保存、任务快照。同一 Agent 可放多个节点(同类多段并行)。
4. 模型管理(每个 Agent 可选不同模型)🆕
4.1 模型注册(工作台设置页)
| 项 |
说明 |
| Provider 管理 |
添加任意 OpenAI 兼容 API:DeepSeek / 硅基流动 / 智谱 / Kimi / 通义 / 本地 Ollama…各配 base_url + API key + 模型列表,可同时挂多个 |
| 全局默认模型 |
未单独配置的 Agent 用全局默认(初始=DeepSeek deepseek-chat,你的密钥) |
| 连通性测试 |
设置页一键测试每个 provider:延迟、速度、可用模型刷新 |
4.2 每个 Agent 一个模型选择
- Agent 配置里【模型】下拉:从已注册模型里选,或"跟随全局默认"
- 画布节点显示模型标识(如 🟦DeepSeek / 🟩GLM / 🟧Kimi),点开可快速切换
- 同类型多节点(两个技法 Agent)可各用不同模型并行 → 现场对比文风,选出最像的
- 任务快照固化模型选择:任务开工后改模型不影响已跑任务
4.3 推荐分工(初始建议,全部可改)
| 角色 |
推荐模型倾向 |
理由 |
| 主控 Agent |
强推理(DeepSeek-R1 类) |
导图解析/任务拆解/波次调度要准 |
| 生产 Agent |
文风强、上下文长 |
心法/画面/场景类吃文风,按实际试跑选 |
| 质检 Agent |
强推理+规则执行 |
五类审查要严格逐条对证 |
| 组合 Agent |
长上下文(128K+) |
拼装全文+一致性总检要读全稿 |
4.4 成本与日志
- 任务页按 Agent 记录每次调用的模型 / 输入输出 token / 费用
- 同一内容段换模型重跑的成本和效果可对比(A/B 看板)
5. RAG 知识库子系统(🆕 v4 核心)
5.1 建库管道(导入即建,全自动)
5.2 检索(Agent 取料时)
5.3 隔离与挂接
- 每库一个 ChromaDB collection + 独立元数据命名空间:库与库物理隔离,检索互不可见
- Agent 挂接(多选)决定它检索哪些 collection;挂接外的一律查不到
- 删除/更新文件:增量重分块重向量化,不影响其他文件
5.4 引用溯源防"表面功夫"
- Agent 产出的每条事实/案例/产品说法,后台记录引用来源(哪个库哪个块)
- 质检 Agent 可一键核对:选中一句 → 看它的引用 → 与知识库原文对证(防编造、防"报告≠事实")
- 检索测试页:你输入一句 query,看命中的原文块质量,随时检验库建得好不好
5.5 预置种子库(6 个,可增)
| 库 |
素材来源 |
分块要点 |
| 风格档案库 |
数字雅文档案/范稿/day1定稿基准/文本层铁律 |
规则型文档按章节分块 |
| 训练营框架库 |
七天导图/28天重排版/历史任务单 |
按天/按节点分块 |
| 直播原文库 |
73 场 SRT(573 万字) |
按场次→段落分块 |
| 备稿库 |
99 篇 docx(150 万字) |
按稿→标题分块 |
| 产品知识库 |
观品 chunks.jsonl |
按产品分块(content 去空格) |
| 质检规则库 |
五类审查清单/词清单/铁律 |
按检查项分块 |
5.6 技术选型(RAG 部分)
| 组件 |
选型 |
理由 |
| 向量库 |
ChromaDB(嵌入式) |
零运维、Python 原生、collection 隔离、metadata 过滤、Windows 免编译 |
| Embedding |
本地 BGE-M3(sentence-transformers) |
中文语义强、离线可用(素材涉敏不外发)、768 维 |
| 备选 Embedding |
硅基流动/智谱 embedding API |
若嫌本地模型占内存(约 1-2GB) |
| 分块 |
自研解析器(python-docx/正则)+ 标题感知切分 |
SRT/docx 格式各有专门处理 |
| 重排(可选) |
cross-encoder 或 LLM rerank |
命中质量不足时开启 |
| 模型管理 |
OpenAI 兼容多 Provider 注册 + 每 Agent 选模型 |
DeepSeek/硅基/智谱/Kimi/Ollama 并存,按 Agent 切换 |
| 规模预估 |
700 万字 ≈ 1.4 万块 × 768 维 |
ChromaDB 无压力 |
6. 失败处理与人工介入(生成不出来 → 必提醒人工)🆕
6.1 失败分类与自动重试策略
| 失败类型 |
例子 |
策略 |
| 瞬时错误 |
API 超时 / 429 限流 / 连接中断 |
自动重试 2 次(指数退避),可配置 |
| 内容拒绝 |
模型拒审:"抱歉,我无法生成…"(检测拒绝特征词) |
自动换措辞重试 1 次;仍拒绝 → 转人工(不无限自动折腾) |
| 空输出/截断 |
输出为空 / 中途截断 / 结构解析失败 |
重试 1 次;仍失败 → 转人工 |
| 模型/Key 错误 |
key 失效 / 模型不存在 / 余额不足 |
直接转人工(重试无意义) |
| RAG 失败 |
检索接口报错 |
重试 1 次 → 转人工;无命中不算失败,但标"低置信"提示 |
原则:重试只覆盖瞬时问题;凡是"重试解决不了"的失败,一律转人工,绝不静默跳过、绝不假装成功。
6.2 失败提醒与人工介入台
- 节点状态变 🔴 失败,任务看板红标 + 通知中心提醒(待处理失败数)
- 点击进入【失败处理面板】,能看到:
- 哪个 Agent / 哪个节点 / 用的哪个模型 / 失败类型与错误原文
- 重试次数与调用日志(时间/模型/token/耗时)
- 失败时的输入上下文(任务切片 + 上游锚点卡 + 规则摘要)
- 人工修复动作(按钮式):
- 🔁 重试
- 🔄 换模型重跑(该 Agent 换另一个已注册模型)
- 📝 改规则重跑(打开 rules.md 编辑 → 保存即重跑)
- ✂️ 调整任务切片重跑(如导图段描述触发拒审,改写描述)
- ⏭️ 跳过该段(组合时注明"本场缺段")
- ⏸️ 停用该节点
- 修复后记录原因:人工在面板填一句"为什么失败/怎么修好的" → 生成记忆建议 → 进待确认池 → 确认后沉淀进该 Agent 记忆(如"该模型对 XX 内容拒审,换 YY 模型可过")
- 失败不阻塞其他段:一段失败时其他段照常跑,但任务整体保持"⚠️ 有待处理失败"状态,直到人工处理完
7. 状态可视化(每个 Agent 工作状态清晰可见)🆕
7.1 节点状态机(画布/看板统一)
7.2 三处可见
| 位置 |
显示什么 |
| 画布节点 |
实时状态色 + 模型标识 + 当前轮次;点开=详情抽屉 |
| 任务看板 |
每段一行:状态徽章/模型/耗时/轮次/成本;失败红标置顶 |
| 详情抽屉 |
调用日志流(每次 LLM 调用:时间/模型/token/耗时/错误)、质检报告、锚点卡、产物全文、当前输入上下文 |
7.3 配套
- 运行日志流:任务执行时实时滚动(谁在跑/谁在等/谁失败了),可暂停过滤
- 通知中心:失败提醒 / 待确认清单 / 记忆待确认 / 待分类标签,统一小红点
- 成本面板:按 Agent × 模型统计 token 与费用
- 状态全部落库(llm_calls 调用日志表 + segments 状态字段),历史可回看
8. 系统架构总览(v4)
9. 里程碑(v4 更新)
| 阶段 |
内容 |
验收 |
| M1(1-3天) 骨架+知识库管道 |
后端骨架+数据表、Agent 注册中心、标签管理页(新建/停用/分组,随时自加)、模型管理(多 Provider 注册+每 Agent 选模型)、状态与失败机制(节点状态机+调用日志表+失败转人工+通知中心)、RAG 管道(导入→解析→分块→BGE-M3 向量化→ChromaDB 入库→检索测试页)、种子库导入(产品库 chunks.jsonl + 风格档案先行)、主控拆解→顺序派发、3 个种子 Agent、结构质检、审查台基础、组合(拼接+docx) |
导图跑通全链路;检索测试页验证产品库/风格库命中质量;两个生产 Agent 用不同模型各跑一段对比文风;你亲手加一个新标签并立刻能用;故意填错 key 制造一次失败 → 看板红标+通知提醒 → 修复重跑成功 |
| M2(4-7天) 画布 |
React Flow 画布(拖节点/连线/启停/模板/快照)、波次调度、锚点卡机制、全部种子 Agent、4 道质检 |
画布改序/停用生效;锚点卡对齐;SRT 原文库导入完成 |
| M3(8-11天) 记忆+引用 |
待确认池、L1-L4 记忆、组合一致性总检+组合报告、引用溯源核对(质检一键对证)、备稿库导入、同类多段并行 |
打回意见确认后注入;组合器抓真实矛盾;引用核对 1 次实操 |
| M4(12-14天) 打磨 |
导图 OCR、多天连续、跨稿对账自动化、rerank 开关、画布体验、模板库 |
连续 3 天稿、跨稿 0 漏项 |
10. 风险与红线(v4 增量)
- Embedding 隐私:素材涉敏(成人内容),默认本地 BGE-M3 离线向量化,数据不出本机;用 API embedding 是显式可选
- 分块质量:SRT 字幕断句合并是关键(按时间戳间隙+语义完整句切),分块错误会在检索测试页暴露,可手动调整块大小参数
- 引用防编造:Agent 引用必须带来源块,质检核对;查无来源的"事实"= FAIL
- 失败不静默:任何"重试解决不了"的失败必须转人工提醒,绝不自动跳过/假装成功;人工修复原因沉淀进记忆(防同类失败反复)
- 其余红线不变:导图待确认清单、口径不沉淀、质检报告对证正文、组合器不擅改内容、画布快照、停用连锁
待确认(1 个问题):
- 26 个预置标签里,★核心 13 个之外的可选标签(转场/预告/见证/冷知识/共鸣/安全提示/产品回指/情绪/氛围/答疑/双主播/毛边/仪式)需要保留哪些?还是全部预置(可以停用不显示)?