行业知识库全链路机制(P0-P4)

行业知识库全链路机制(P0-P4)

工艺规程知识库从"静态展示"升级为"采集→提取→生成→资产化"完整闭环。

新增5个核心模块、15个API端点、1213行代码。


一、做了什么

阶段模块文件解决什么问题
P0AnySearch桥接server/services/anysearch-pskb-bridge.js搜索"湿法磷酸"不再只返回网页,优先返回结构化工艺规程
P1行业采集器server/core/industry-kb-collector.js磷化工只有53条、白酒52条,自动从67/52个topic采集扩充到target 5000条
P2BOM提取器server/core/pskb-bom-extractor.js机械加工16万工艺但BOM=0,自动从工序文本提取设备/原料/工装/刀具
P3企业生成器server/core/enterprise-spec-generator.js企业无数据时,选行业模板+描述经验差异→LLM生成企业专属工艺规程
P4资产化桥接server/core/pskb-asset-bridge.js工艺规程变成可估值数据资产(成本法/收益法/市场法)

二、架构图

                    ┌─────────────────────────────────────────────────┐
                    │              行业知识库全链路                      │
                    └─────────────────────────────────────────────────┘

  ┌─ P0: 搜索 ────────────────────────────────────────────────────────────┐
  │                                                                       │
  │  用户搜索 "湿法磷酸"                                                   │
  │       ↓                                                               │
  │  AnySearch.search(domain='pskb')                                      │
  │       ↓                                                               │
  │  本地pskb源优先 → 命中: 返回工艺规程+工序+BOM                          │
  │       ↓ 未命中                                                        │
  │  远程AnySearch → 返回网页结果                                          │
  │                                                                       │
  └───────────────────────────────────────────────────────────────────────┘

  ┌─ P1: 采集 ────────────────────────────────────────────────────────────┐
  │                                                                       │
  │  industry-profile-loader                                              │
  │    .kb_pipeline.topics (磷化工67个/白酒52个)                           │
  │       ↓                                                               │
  │  planCollection() → 找出缺失topic (磷化工55个/白酒37个)                 │
  │       ↓                                                               │
  │  collectTopic("磷酸净化")                                             │
  │       ↓                                                               │
  │  AnySearch搜索 → LLM提取工艺结构 → 写入pskb_spec/step/bom             │
  │                                                                       │
  └───────────────────────────────────────────────────────────────────────┘

  ┌─ P2: BOM提取 ─────────────────────────────────────────────────────────┐
  │                                                                       │
  │  机械加工 163,441条工艺,BOM=0                                         │
  │       ↓                                                               │
  │  planExtraction('machining') → 98,055条待提取                          │
  │       ↓                                                               │
  │  extractByRules(specId)                                               │
  │    从step.text提取: 工装Z1-475/压板/胎具/刀具/数控/铣床...             │
  │       ↓ 或                                                            │
  │  extractByLLM(specId) → LLM智能提取完整BOM                            │
  │       ↓                                                               │
  │  写入pskb_bom (level/material/spec/qty/unit/role)                     │
  │                                                                       │
  └───────────────────────────────────────────────────────────────────────┘

  ┌─ P3: 企业生成 ────────────────────────────────────────────────────────┐
  │                                                                       │
  │  企业"云天化"无工艺数据                                                 │
  │       ↓                                                               │
  │  listTemplates('phos_chem') → 展示53个行业模板                         │
  │       ↓                                                               │
  │  企业选择"湿法磷酸(二水法)" + 描述差异:                               │
  │    "我们用半水法,萃取温度80℃,反应釜3m³"                              │
  │       ↓                                                               │
  │  generateFromTemplate(templateId, "云天化", 经验描述)                   │
  │       ↓                                                               │
  │  LLM基于模板+经验 → 生成企业专属工艺规程                                │
  │       ↓                                                               │
  │  saveEnterpriseSpec() → 写入pskb (source_type=template+experience)    │
  │                                                                       │
  └───────────────────────────────────────────────────────────────────────┘

  ┌─ P4: 资产化 ──────────────────────────────────────────────────────────┐
  │                                                                       │
  │  pskb_spec "湿法磷酸(二水法)"                                        │
  │       ↓                                                               │
  │  assetizeSpec('phos_chem:1')                                          │
  │    → data_assets (type=process_spec)                                  │
  │    → quality_score=65 (字段完整度+工序+物料)                           │
  │    → value_score=26,900 (基础值20000+工序×500+物料×200)               │
  │       ↓                                                               │
  │  valuateAsset('pskb_asset:phos_chem:1')                               │
  │    → 成本法: 11,900元 (工序×500+物料×200+5000)                        │
  │    → 收益法: 2,690元 (使用次数×单价+基础值×10%)                        │
  │    → 市场法: 26,900元 (基础值×行业系数1.0)                             │
  │    → 加权估值: 11,216元 (成本40%+收益40%+市场20%)                      │
  │                                                                       │
  └───────────────────────────────────────────────────────────────────────┘

三、API端点一览(15个)

P0: 搜索(通过AnySearch)

| 方法 | 端点 | 说明 |

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

| POST | /api/anysearch/search | {"query":"湿法磷酸","domain":"pskb"} → 返回工艺规程 |

P1: 采集

方法端点说明
GET/api/pskb/collect/plan?industry=phos_chem查看采集计划(topics/已有/缺失)
POST/api/pskb/collect/topic{"industry":"phos_chem","topic":"磷酸净化"} → 采集单个
POST/api/pskb/collect/industry{"industry":"phos_chem"} → 批量采集

P2: BOM提取

方法端点说明
GET/api/pskb/bom/plan?industry=machining查看哪些工艺缺BOM
POST/api/pskb/bom/extract{"spec_id":"machining:27202940"} → 规则提取
POST/api/pskb/bom/extract{"spec_id":"phos_chem:1","use_llm":true} → LLM提取
POST/api/pskb/bom/extract-industry{"industry":"machining","limit":50} → 批量

P3: 企业生成

方法端点说明
GET/api/pskb/templates?industry=phos_chem行业模板列表(供企业选择)
POST/api/pskb/generate{"spec_id":"phos_chem:1","enterprise_name":"云天化","experience":"我们用半水法"}
POST/api/pskb/generate-scratch{"industry":"phos_chem","enterprise_name":"新企业","experience":"我们做黄磷"}
POST/api/pskb/save-enterprise{"industry":"phos_chem","enterprise_name":"云天化","generated":{...}}

P4: 资产化

方法端点说明
GET/api/pskb/asset/plan资产化计划(各行业工艺数/已有资产数)
POST/api/pskb/asset/assetize{"spec_id":"phos_chem:1"} → 资产化单个
POST/api/pskb/asset/assetize-industry{"industry":"phos_chem","limit":100} → 批量
POST/api/pskb/asset/valuate{"asset_id":"pskb_asset:phos_chem:1"} → 估值

四、使用示例

示例1: 通过AnySearch搜索工艺规程

# 搜索"湿法磷酸"——优先返回本地知识库的结构化工艺规程
curl -X POST http://localhost:3006/api/anysearch/search \
  -H "Content-Type: application/json" \
  -d '{"query":"湿法磷酸","domain":"pskb","max_results":3}'

# 返回: source=local:pskb, items=[{title:"湿法磷酸(二水法)",spec_id:"phos_chem:1",step_count:5}]

示例2: 查看磷化工采集计划

curl http://localhost:3006/api/pskb/collect/plan?industry=phos_chem

# 返回:
# {
#   "label": "磷化工",
#   "total_topics": 67,        // 配置了67个采集关键词
#   "existing_specs": 53,      // 已有53条工艺规程
#   "missing_topics": 55,      // 55个topic还没采集到
#   "target": 5000,            // 目标5000条
#   "missing_list": ["磷酸净化","溶剂萃取","磷酸浓缩",...]
# }

示例3: 从机械工艺提取BOM

# 查看哪些工艺缺BOM
curl http://localhost:3006/api/pskb/bom/plan?industry=machining
# 返回: total=98055, without_bom=98055

# 规则提取(不需要LLM,快速)
curl -X POST http://localhost:3006/api/pskb/bom/extract \
  -H "Content-Type: application/json" \
  -d '{"spec_id":"machining:27202940"}'
# 返回: extracted=4, items=[{material:"工装Z1-475",role:"耗材"},{material:"压板"},{material:"胎具"},{material:"刀具"}]

# LLM提取(更智能,慢)
curl -X POST http://localhost:3006/api/pskb/bom/extract \
  -H "Content-Type: application/json" \
  -d '{"spec_id":"machining:27202940","use_llm":true}'

示例4: 企业无数据——模板+经验生成

# 步骤1: 浏览行业模板
curl http://localhost:3006/api/pskb/templates?industry=phos_chem
# 返回: templates=[{id:"phos_chem:1",name:"湿法磷酸(二水法)",step_count:5},...]

# 步骤2: 基于模板+经验生成(需要LLM)
curl -X POST http://localhost:3006/api/pskb/generate \
  -H "Content-Type: application/json" \
  -d '{
    "spec_id": "phos_chem:1",
    "enterprise_name": "云天化",
    "experience": "我们用半水法,萃取温度80℃,反应釜3m³,产品P2O5 40%"
  }'
# 返回: generated={name:"云天化湿法磷酸(半水法)",steps:[...],bom:[...],changes:["改为半水法","调整萃取温度"]}

# 步骤3: 确认保存
curl -X POST http://localhost:3006/api/pskb/save-enterprise \
  -H "Content-Type: application/json" \
  -d '{"industry":"phos_chem","enterprise_name":"云天化","generated":{...}}'
# 返回: id="enterprise:phos_chem:云天化:xxx", steps=2, bom=3

示例5: 工艺规程资产化+估值

# 资产化单个工艺规程
curl -X POST http://localhost:3006/api/pskb/asset/assetize \
  -H "Content-Type: application/json" \
  -d '{"spec_id":"phos_chem:1"}'
# 返回: asset_id="pskb_asset:phos_chem:1", quality_score=65, value_score=26900

# 估值
curl -X POST http://localhost:3006/api/pskb/asset/valuate \
  -H "Content-Type: application/json" \
  -d '{"asset_id":"pskb_asset:phos_chem:1"}'
# 返回:
# {
#   "cost_value": 11900,       // 成本法: 工序×500+物料×200+5000
#   "income_value": 2690,      // 收益法: 使用次数×单价+基础值×10%
#   "market_value": 26900,     // 市场法: 基础值×行业系数
#   "weighted_value": 11216,   // 加权: 成本40%+收益40%+市场20%
#   "weights": {"cost":0.4,"income":0.4,"market":0.2}
# }

五、数据流

行业配置(kb_pipeline.topics)
    ↓
P1采集器 → AnySearch搜索 → LLM提取 → pskb_spec/step/bom
    ↓                                    ↓
P2 BOM提取器 ← 从step.text提取物料 → pskb_bom
    ↓
P3 企业生成器 ← 模板+经验 → LLM → pskb_spec(source_type=template+experience)
    ↓
P4 资产化桥接 → data_assets(type=process_spec) → asset_valuations
    ↓
数据资产(可交易/可估值/可治理)

六、文件清单

| 文件 | 行数 | 说明 |

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

| server/services/anysearch-pskb-bridge.js | 115 | P0: AnySearch本地源注册 |

| server/core/industry-kb-collector.js | 220 | P1: 行业采集器 |

| server/core/pskb-bom-extractor.js | 280 | P2: BOM提取器 |

| server/core/enterprise-spec-generator.js | 200 | P3: 企业生成器 |

| server/core/pskb-asset-bridge.js | 260 | P4: 资产化桥接 |

| server/routes/process-spec-kb.js | +150 | 路由端点扩展 |

| server.js | +2 | bridge加载 |


七、验证结果

验证项结果
P0: AnySearch搜索"湿法磷酸"✅ source=local:pskb, 返回湿法磷酸工艺规程
P1: 磷化工采集计划✅ 67 topics, 53已有, 55缺失, target 5000
P1: 白酒采集计划✅ 52 topics, 52已有, 37缺失, target 5000
P2: 机械BOM计划✅ 98055条无BOM, 可批量提取
P2: 规则提取✅ 从"铣内形"提取出工装Z1-475/压板/胎具/刀具
P3: 模板列表✅ 磷化工53个模板可选
P3: 企业保存✅ "云天化半水法"保存成功, 可搜索到
P4: 资产化✅ quality=65, value=26900
P4: 估值✅ 成本11900+收益2690+市场26900→加权11216元
← 返回案例列表
分享:
🤖 Try Now →
🤖
🎁