Files
yawan-workbench/流程图v4.md
T

6.3 KiB
Raw Blame History

雅文内容创造工作台 · 流程图 v4(RAG 知识库版)

图1 · RAG 知识库建库管道(导入即建,全自动)

flowchart LR
    F["素材文件<br/>docx / srt / md / txt / json / 导图"] --> P1["① 导入<br/>拖拽上传+进度条"]
    P1 --> P2["② 格式解析<br/>docx提取正文 / srt去时间戳 / json结构抽取"]
    P2 --> P3["③ 清洗<br/>去空行/提词备注/字幕断句合并"]
    P3 --> P4["④ 分块<br/>标题感知+语义边界 400-600字 重叠15%<br/>元数据:库/文件/章节/序号"]
    P4 --> P5["⑤ 向量化<br/>BGE-M3 本地Embedding(离线,数据不出本机)"]
    P5 --> P6["⑥ 入库<br/>ChromaDB collection=知识库(天然隔离)"]
    P6 --> P7["⑦ 检索测试页<br/>输入query验证命中质量"]
    style P6 fill:#1d3557

图2 · Agent 取料(混合检索 + 引用溯源,只查挂接库)

flowchart TD
    A["生产Agent 生成请求"] --> Q["query构造<br/>任务切片+上游锚点卡+检索意图"]
    Q --> H{"混合检索<br/>只在挂接的collection内"}
    H -->|"向量 top-k"| V["BGE-M3 语义相似度"]
    H -->|"关键词 top-k"| K["BM25 精确命中<br/>(技法名/产品名/暗语)"]
    V --> M["合并去重"]
    K --> M
    M --> R["可选:rerank重排"]
    R --> S["引用溯源<br/>每条带:库/文件/章节/原文块/相似度"]
    S --> INJ["注入Agent上下文<br/>(后台标注来源,正文不出现'知识库里说')"]
    INJ --> OUT["段产物"]
    OUT --> QC["质检一键核对引用<br/>选中一句→看引用→对证原文"]
    QC -->|"查无来源=FAIL"| A
    style QC fill:#6d597a

图3 · 知识库隔离与 Agent 挂接

flowchart TB
    subgraph KB["📚 知识库(ChromaDB collection 物理隔离)"]
        C1["风格档案库"]
        C2["产品知识库"]
        C3["直播原文库(73场SRT)"]
        C4["备稿库(99篇)"]
        C5["你建的库:青蛇白蛇素材库"]
    end
    subgraph AG["Agent 挂接(多选)"]
        PA["产品销售Agent<br/>☑风格档案 ☑产品知识库"]
        JA["技法Agent<br/>☑风格档案 ☑直播原文库"]
    end
    C1 --> PA
    C2 --> PA
    C1 --> JA
    C3 --> JA
    PA -.->|"查不到"| X["原文库/青蛇库"]
    JA -.->|"查不到"| Y["产品库"]

图4 · Agent 关系画布(v3 核心不变)

flowchart LR
    M["主控Agent"] --> A["开场 ●"]
    A --> X1["心法Agent1 ●"]
    A -.->|"可选"| X2["心法Agent2 ○停用"]
    X1 --> J1["技法Agent1 ●"]
    X1 --> J2["技法Agent2 ● 并行"]
    X1 --> G["功法 ●"]
    J1 --> P["产品销售 ●"]
    J2 --> V["画面 ●"]
    G --> S["场景 ●"]
    V --> E["收尾 ●"]
    S --> E
    P --> E
    E --> H["钩子 ●"]
    H --> CM["组合Agent"]
    style X2 fill:#444,color:#999,stroke-dasharray: 5 5

图5 · 内容标签体系(26 个,6 大类)

flowchart LR
    subgraph 结构["结构类"]
        A1["开场★"]; A2["转场"]; A3["收尾★"]; A4["钩子★"]; A5["预告"]
    end
    subgraph 内容["内容类"]
        B1["心法★"]; B2["痛点★"]; B3["动机铺垫★"]; B4["案例★"]; B5["见证"]
        B6["冷知识"]; B7["金句★"]; B8["共鸣"]
    end
    subgraph 技法["技法类"]
        C1["技法★"]; C2["功法★"]; C3["跟练★"]; C4["安全提示"]
    end
    subgraph 产品["产品类"]
        D1["产品销售★"]; D2["产品体验★"]; D3["产品回指"]
    end
    subgraph 表现["表现类"]
        E1["画面★"]; E2["场景★"]; E3["情绪"]; E4["氛围"]; E5["互动"]
    end
    subgraph 辅助["辅助类"]
        F1["答疑"]; F2["双主播"]; F3["毛边"]; F4["仪式"]
    end

图6 · 模型管理(每个 Agent 可选不同模型)

flowchart LR
    subgraph 模型池["模型注册(OpenAI 兼容,可同时挂多个)"]
        M1["🟦 DeepSeek<br/>deepseek-chat / R1"]
        M2["🟩 硅基流动 / 智谱GLM"]
        M3["🟧 Kimi / 通义"]
        M4["⬜ 本地 Ollama"]
    end
    subgraph 画布["画布节点(每Agent独立选模型)"]
        A1["主控Agent 🟦DeepSeek-R1<br/>(强推理:拆解/调度)"]
        A2["心法Agent 🟩GLM<br/>(文风对比)"]
        A3["画面Agent 🟧Kimi<br/>(文风对比)"]
        A4["质检Agent 🟦DeepSeek-R1<br/>(严格规则执行)"]
        A5["组合Agent 🟦长上下文<br/>(拼装+总检读全稿)"]
    end
    M1 --> A1
    M1 --> A4
    M1 --> A5
    M2 --> A2
    M3 --> A3

图7 · 节点状态机(每个 Agent 工作状态清晰可见)

flowchart LR
    P["待派发 🟦灰"] --> R["生成中 🟦蓝<br/>(显示模型+已耗时)"]
    R --> Q["质检中 🟡黄<br/>(显示第几道)"]
    Q --> H["待人工审查 🟣紫"]
    H -->|"✅通过"| A["已通过 🟢绿"]
    H -->|"🔁打回"| RW["打回重做 🟠橙<br/>(显示第几轮)"]
    RW --> R
    R -->|"生成失败"| F["⚠️失败 🔴红<br/>(点击看原因)"]
    Q -->|"质检FAIL"| RW
    F -->|"人工修复后重跑"| R
    F -->|"人工跳过"| SK["跳过 ⬜灰斜线"]
    F -->|"停用节点"| D["停用 ⬛暗"]
    P -->|"上游停用"| SK
    style F fill:#7f1d1d,color:#fff
    style A fill:#14532d,color:#fff

图8 · 失败处理闭环(生成不出来 → 必提醒人工)

flowchart TD
    FAIL["Agent 生成失败"] --> RETRY{"可自动重试?<br/>超时/限流/截断"}
    RETRY -->|"是(最多2次)"| R1["指数退避重试"]
    R1 -->|"成功"| OK["✅ 继续流程"]
    R1 -->|"仍失败"| MAN
    RETRY -->|"否(拒审/Key错误/余额不足)"| MAN["🔴 转人工<br/>节点红标+通知中心提醒<br/>(不静默、不假装成功)"]
    MAN --> PANEL["失败处理面板<br/>失败Agent/模型/错误原文/调用日志/输入上下文"]
    PANEL --> ACT["人工修复动作"]
    ACT -->|"🔁重试"| R1
    ACT -->|"🔄换模型"| M2["换模型重跑"]
    ACT -->|"📝改规则"| R2["改rules.md重跑"]
    ACT -->|"✂️调任务切片"| R3["改写段描述重跑"]
    ACT -->|"⏭️跳过"| SK["跳过(组合注明缺段)"]
    ACT -->|"⏸️停用"| D["停用节点"]
    ACT --> MEM["填修复原因 → 记忆建议<br/>→ 待确认池 → 沉淀防复发"]
    style MAN fill:#7f1d1d,color:#fff
    style MEM fill:#6d597a