行业扩展标准模式(Industry Extension Playbook)

行业扩展标准模式(Industry Extension Playbook)

目标:让「机械(高端)之外的第 3、4、N 个行业」能以一份配置驱动、零改代码的方式

完成「知识库 → 结构化 → 基础层治理 → 数字员工业务闭环」全链路落地。

首个落地案例:磷化工(phos_chem),基线见文末。


0. 飞轮总览

① 知识库采集/沉淀         ② 结构化抽取            ③ 基础层治理            ④ 数字员工闭环
kb-pipeline-run.cjs   →   process/bom 碎片   →   kb-govern-base.cjs   →   kb-staff-loop.cjs
(kb_docs 万级)             (110k 级,质量粗)        (base 库,零空字段)      (7 员工自我运维)
                                                       │
                                                       └─→ ⑤ 质量规则(R1-R8)注册进规则引擎
                                                            统一入口: 数字员工 + 规则引擎双通道

四个阶段各自独立、可单跑;加新行业时第 ③④⑤ 步只需一份 JSON 配置 + 跑脚本


1. 加一个新行业需要做什么(3 分钟版)

| # | 动作 | 涉及文件 | 说明 |

|---|---|---|---|

| 1 | 建行业配置 | config/industry-ext/.json | 8 家族 ×(工序序列 + 层级 BOM + 碎片聚合类型) |

| 2 | 跑治理 | node scripts/kb-govern-base.cjs --industry | 产出 server/data/kb/_base.db 三张表 |

| 3 | 跑闭环 | node scripts/kb-staff-loop.cjsLOOP_INDUSTRY=) | 7 员工识别/创建/巡检/比对/修复/优化/生成 |

| 4 | 验证 | 下方「验收标准」 | 目标数字达标 + 质量规则零 P0 |

无需改动任何 .js 业务代码。第 ② 步若行业知识库已存在可跳过采集,直接治理。


2. 行业配置(config/industry-ext/.json)

结构

{
  "industryId": "phos_chem",            // 行业 id,与知识库 industry_id 一致
  "seedPrefix": "kb_doc_pc_",           // 手工 seed 工艺的 source_ref 前缀(可选,用于优质底座)
  "families": [                          // 主干家族列表(N 个)
    {
      "code": "WPA",                     // 家族编码
      "name": "湿法磷酸(二水法)",        // 家族名称
      "desc": "硫酸分解磷矿制取湿法磷酸…", // 家族描述
      "fragTypes": ["氧化","结晶","萃取"], // 碎片聚合:按 process_type 关键词归并真实参数
      "steps": [                          // 有序工序序列
        {
          "name": "磷矿粉磨与调浆",
          "seed": "湿法磷酸-磷矿粉磨",      // 优先匹配 seed 工艺(真实参数),可省略
          "domain": {                      // 标准知识兜底(真实数据缺失时使用,打 domain_std 标签)
            "intent": "磨细至-200目",
            "equip": ["球磨机","水力旋流器","调浆槽"],
            "params": [{ "label": "磨矿细度", "value": "80-100", "unit": "%通过200目" }],
            "safety": "防粉尘爆炸"
          }
        }
      ],
      "bom": {                            // 层级 BOM:产品线 → 原料/主设备/辅助设备/产品/副产物 → 物料
        "RAW":  [ { "material": "磷矿石", "spec": "", "qty": 1000, "unit": "吨/天" } ],
        "EQ":   [ { "material": "萃取反应槽", "spec": "", "qty": 2, "unit": "台" } ],
        "AUX":  [ { "material": "循环泵", "spec": "", "qty": 4, "unit": "台" } ],
        "PROD": [ { "material": "湿法磷酸", "spec": "P2O5 28-32%", "qty": 2500, "unit": "吨/天" } ],
        "BYP":  [ { "material": "磷石膏", "spec": "", "qty": 5000, "unit": "吨/天" } ]
      }
    }
  ]
}

数据纪律

  • steps[].seed 命中 → 用 seed 真实参数(最优)
  • 否则 steps[].domain → 标准知识占位(src=domain_std
  • 参数不足 2 条时 → 用 fragTypes 从碎片库聚合真实参数(src=fragment
  • 可选 GOV_USE_LLM=1 → LLM 补全占位(src=llm,deepseek-v4-flash,429 自动退避)

3. 治理脚本(scripts/kb-govern-base.cjs)

把碎片收敛成「行业可用的基础工艺规程 + 层级化基础 BOM」。

node scripts/kb-govern-base.cjs --industry phos_chem          # 基础治理(无 LLM,可复现)
GOV_USE_LLM=1 node scripts/kb-govern-base.cjs --industry phos_chem  # LLM 增强(补 domain_std 占位)
GOV_OUT=C:/xx/out.db  …                                       # 可选:输出到指定路径

产出:server/data/kb/_base.db

| 表 | 内容 | 质量要求 |

|---|---|---|

| base_process_spec | N 条基础工艺规程 | 每条含描述 |

| base_process_step | 每规程的工序序列 | 参数/设备/安全带 src 标签 |

| base_bom | 三级层级 BOM | 用量零空、角色零空、层级零孤立 |

来源标签(可溯源)

| src | 含义 |

|---|---|

| seed | 手工 seed 真实参数(最优) |

| fragment | 从碎片库聚合的真实参数 |

| llm | LLM 补全(deepseek-v4-flash,仅 GOV_USE_LLM=1) |

| domain_std | 标准工程知识兜底(真实数据不足) |

落盘保障:脚本关闭前 wal_checkpoint(TRUNCATE) + 关闭后重开库读真实落盘数打印 [落盘校验]

若校验数与预期不符(历史出现过 7/8 家族丢 DCP),重跑即可。


4. 数字员工业务闭环(scripts/kb-staff-loop.cjs)

以 base 库为资产输入,跑通 7 大基础数字员工的自我运维闭环

DS-SCSAI-001 识别 → DS-SCSAI-001 创建 → DS-STAT-001 巡检
→ DS-ECR-001 比对 → DS-PROC-DATA-001 修复 → DS-PROCESS-OPT-001 优化 → DS-CONTENT-001 生成
node scripts/kb-staff-loop.cjs                                   # 只读闭环(识别+巡检+比对+修复+优化+生成)
LOOP_WRITE_BACK=1 node scripts/kb-staff-loop.cjs                  # 创建员工回写主库(幂等,source_ref=governed_base)
LOOP_INDUSTRY=baijiu node scripts/kb-staff-loop.cjs               # 换行业

每个员工做真实的事

| 员工 | 动词 | 真实产出 |

|---|---|---|

| DS-SCSAI-001 | 识别 | 资产清单(规程数/工序数/BOM 项数/来源分布) |

| DS-SCSAI-001 | 创建 | 资产编目 +(LOOP_WRITE_BACK=1)回写主库工艺/BOM,可溯源可回滚 |

| DS-STAT-001 | 巡检 | R1-R8 质量规则扫描(参数/设备/安全/用量/角色/层级/重复/JSON) |

| DS-ECR-001 | 比对 | base 库 vs 主库治理回写层数量一致性 |

| DS-PROC-DATA-001 | 修复 | 用量缺失 → 同家族同角色非零均值建议值(人工确认后落库) |

| DS-PROCESS-OPT-001 | 优化 | 主工序温控联锁/节拍/HAZOP 优化方向 |

| DS-CONTENT-001 | 生成 | -base-report.md(规程明细 + 三级 BOM + 优化建议) |


5. 质量规则接入规则引擎(统一入口)

server/core/industry-quality-rules.js —— 行业无关质量规则,一处定义、双通道消费:

server/core/industry-quality-rules.js
   ├─ inspectBaseDb(baseDbPath)     → R1-R8 巡检,统一 {ruleId,severity,item,count,samples}
   └─ suggestRepairs(baseDbPath)    → 用量缺失修复推导(同家族同角色均值,autoApply=false)
        │
        ├─ 通道1 CapabilityRuntime.inspect/repair     ← 数字员工 DS-STAT-001/DS-PROC-DATA-001
        │    参数带 industry / industry_base_db 即触发
        └─ 通道2 RuleEngine.executeInspect            ← 规则引擎统一巡检入口
             item_type=IndustryBase 或带行业参数即触发,rule_id 对齐规则表

规则集 R1-R8

| 规则 ID | 内容 | 级别 |

|---|---|---|

| inspect-industry-r1 | 工序参数为空 | warning |

| inspect-industry-r2 | 工序设备为空 | warning |

| inspect-industry-r3 | 工序安全约束为空 | warning |

| inspect-industry-r4 | BOM 物料用量缺失 | warning |

| inspect-industry-r5 | BOM 角色缺失 | warning |

| inspect-industry-r6 | BOM 层级孤立 | error |

| inspect-industry-r7 | BOM 物料重复 | warning |

| inspect-industry-r8 | 工序参数 JSON 损坏 | error |

规则已注册进 sciot_rules_v2(scope=inspect,item_type_name=IndustryBase),规则管理界面可见、可启停。


6. 验收标准

指标达标线检查命令
基础工艺规程≥ 5 条(主干家族)SELECT COUNT(*) FROM base_process_spec
工序覆盖每规程 ≥ 3 道工序SELECT COUNT(*) FROM base_process_step
BOM 用量零空100%SELECT COUNT(*) FROM base_bom WHERE level=2 AND (qty IS NULL OR qty=0) = 0
BOM 角色零空100%SELECT COUNT(*) FROM base_bom WHERE role IS NULL OR role='' = 0
BOM 层级零孤立100%SELECT COUNT(*) FROM base_bom WHERE level=2 AND parent_id NOT IN (SELECT id FROM base_bom WHERE level=1) = 0
质量规则巡检0 error(R6/R8 不触发)node -e 调 inspectBaseDb 或跑闭环③
闭环7/7 成功node scripts/kb-staff-loop.cjs 末行
回写幂等重复跑不涨数LOOP_WRITE_BACK=1 跑两次,governed_base 计数不变

7. 磷化工基线(首例落地,2026-08-21)

行业phos_chem
家族WPA/TPA/YP/MAP/DAP/PG/STPP/DCP(8 主干)
基础库server/data/kb/phos_chem_base.db:8 规程 / 29 工序 / 127 BOM 行(79 物料项)
来源占比seed 49 / fragment 25 / llm 24 / domain_std 65(真实背书 ≈60%)
主库回写29 工艺(source_ref=governed_base:)+ 79 BOM(entry_id=GB-)
报告docs/industry-ext/phos_chem-base-report.md

8. 已知边界 / 下一步

  • LLM 端点llm-extract.js 已修 getConfig() 优先读 LLM_*(sensenova 网关 + deepseek-v4-flash);该端点会 429 TPM 限流,治理脚本已做 25s 指数退避。GOV_USE_LLM=1 可常态化跑。
  • 碎片层 vs 基础层:110k 碎片层保留(覆盖广),基础层是治理后的可用资产,两者分离。
  • 下一步候选
  1. 把碎片层按家族做持续归并(LLM 周期性重治理,飞轮转动);
  2. 数字员工「创建」回写主库后,自动触发知识库检索覆盖(RAG 链路打通);
  3. 新增白酒(baijiu)/电子(electronics)行业配置,验证模板可复制性。
← 返回案例列表
分享:
🤖 Try Now →
🤖
🎁