规范蒸馏工坊 — 把一本规范标准蒸馏成一组可执行 skill 的元工具
一句话定位
把 GB / JGJ / CECS / DB 等工程技术标准(含条文说明、附录、标准图集)里沉淀的可执行知识——判定规则、限值、公式、强制条款、流程、构造措施——逐字核对地提纯为一组可被 agent 在干活时自动激活的 skill 卡。
它不是把 PDF 喂给 RAG 让你"查",而是让规范"随身在线"替你"判":
- 知识库(RAG):你问 → 检索段落 → "第 X 条说了……"(找给你看)
- 本工具:场景触发 → 自动激活对应卡 → "R/S=0.93 → 查表 → 评 B 级"(替你判定)
与"知识库 + RAG"的本质区别
| 维度 | 知识库(RAG) | 规范蒸馏工坊 |
|---|---|---|
| 存什么 | 规范原文(文档) | 蒸馏后的可执行规则 |
| 怎么触发 | 你提问 → 检索段落 | agent 识别场景自动激活 |
| 回答形态 | "第 X 条说了……" | "R/S=0.93 → 查表 → 评 B 级" |
| 幻觉防线 | 依赖检索质量,可能断章 | 逐字核对 + 三重验证 + 数值判定实测 |
| 边界意识 | 无——问砌体也硬答 | 超范围拒答并指向正确规范 |
| 版本管理 | 新旧文档可能混着答 | 版本钉死,差异特标 |
规范的幻觉损失是工程事故级的数字错误,所以本工具第一红线是"逐字核对",不是"获得启发"。
三道质量红线(违反即阻止输出)
- 防幻觉:条文编号、数值、公式、符号必须回贴原文逐字核对,严禁凭训练记忆生成。OCR 出的可疑数值强制人工确认。
- 效力分层:每条规则标注来源层级——强制性条文 / 正文条文 / 条文说明 / 附录。引用不越级(不能把"条文说明"当"强条"用)。
- 版本钉死 + 强条时效:锁定"标准号 + 年份",并自动核查强制条文是否被通用规范(GB 55xxx 系列)替代/废止。
核心方法论:七阶流水线(Spec→Skill Pipeline)
沿用了"拆书→执行卡"的元方法框架,但针对规范文本特性(条文/条文说明双层、限值表、公式、用词效力分级)做了全面改造,并内置四大独有增量。
阶0 建档 Inventory → SPEC_MAP.md(章节地图/版本/强条清单/用词效力/公式表/附录/替代关系)
阶1 抽取 Extract → 候选池(6 路并行:流程/规则/公式/强条/术语/图集)
阶2 验证 Verify → 通过的单元(三重门槛:可印证/可判定/有差异价值)
阶3 锻造 Forge → 每张 skill 卡用 CARD 六段构造
阶4 织网 Link → LINK.md 跨规范引用网 + 术语词典(多规范联动增量)
阶5 抗压 Stress → 数值判定题 + 边界题 + 兄弟卡诱饵,通过率<80% 回炉
阶6 出厂 Ship → DIGEST.md 规范精要 + 安装到 skills 目录
CARD 六段卡结构(每张 skill 卡)
- C (Clause 条文原文):逐字引用条文原文 + 编号,≤200 字/段,严禁转述。
- A (Anchor 锚点):附录算例 / 条文说明工程示例 / 关联表格,给"怎么用"的落点。
- R (Rule 判定规则):1-2-3 步骤 + if-then 判定分支(评级/限值比较)。
- D (Deploy 触发场景):什么工程情境下用它 → 写入 skill 的
description字段。 - B (Boundary 边界):适用范围 / 与其他规范冲突衔接 / 常见误用(新旧版混淆、单位错用)。
- V (Verify 核验):来源层级标注 + 至少 1 道数值判定题(见阶5)。
何时调用此 skill
用户说类似:
- "把《民用建筑可靠性鉴定标准》GB 50292 蒸馏成 skill"
- "把这本检测规范拆成可调用的技能"
- "帮我把 JGJ 125 做成 skill,以后评级时直接用"
- "distill this specification into skills: <path>"
输入要求(开始前必须确认)
- 规范文本来源:规范全文文件路径(PDF/TXT/MD)且必须含条文说明与附录(若有)。文本提取:优先用
pdfskill;不可用则用 Python(pdfplumber / PyMuPDF)提取,或视觉 / OCR 能力;扫描版必须先 OCR 再提取。收到文件后立即计算 SHA256 记到 SPEC_MAP,用于版本钉死溯源。不要在只有目录/部分章节的情况下蒸馏;更严禁凭训练记忆复述条文——宁可停下来问用户要文件。 - 规范元信息:标准号 + 年份 + 名称(如
GB 50292-2015 《民用建筑可靠性鉴定标准》),以及是否现行有效/是否已被替代。 - 是否首次试点:第一次用建议先蒸馏 1 本验证流程再批量。
输出结构
specs/<spec-slug>/ # slug 如 gb-50292-2015
├── PIPELINE_STATE.md # 流水线状态(断点续跑用)
├── SPEC_MAP.md # 阶0 产出: 章节地图/版本/强条/用词效力/公式表/附录/替代关系
├── candidates/ # 阶1 产出: 原始候选池(审计用)
├── rejected/ # 阶2 淘汰单元 + 原因(审计用)
├── verified.md # 阶2 产出: 通过三重验证的单元 + 理由
├── LINK.md # 阶4 产出: 跨规范引用网 + 术语词典
├── DIGEST.md # 阶6 产出: 面向工程师的规范精要
├── <skill-slug-1>/
│ ├── SKILL.md # CARD 六段卡
│ └── test-prompts.json # 抗压测试题
└── <skill-slug-2>/ ...
四大独有增量(与同类工具的核心差异)
- 强条时效校验:阶0 拿到强条清单后,自动对照 GB 55xxx 通用规范,标注"已废止 / 现行 / 转引 XXX"。例:GB 50204-2015 的 9 条强条已于 2022-04-01 被 GB 55008-2021 全文强制替代而废止。详见
assets/obsolescence-check.md。 - 图集处理能力:图集(标准图集 / 构造详图集)文字部分(总说明、节点注、材料表)可提取为规则 / 构造卡;图形大样需 OCR + 人工确认尺寸,不进自动判定。见
extractors/atlas-extractor.md。 - 多规范联动网:阶4 自动抽取本规范引用的其他规范、被替代关系,生成 LINK.md 跨规范引用网,多本规范蒸馏后互联(如抗震构造问题自动指向 GB 50011 对应条文)。
- 项目实测沉淀:内置某保障性住房项目真实蒸馏经验与坑点(扫描版先 OCR、数值题必给虚构合理数据、版本必须钉死),作为示例与边界提醒,比空讲流程更贴实战。
质量红线(完整)
- 条文编号、数值、公式、符号必须逐字核对原文,严禁凭训练记忆生成(防幻觉第一红线)。
- 每个 skill 卡必须标注效力的来源层级:正文条文 / 强制性条文 / 条文说明 / 附录。
- 每个 skill 卡必须通过全部三重验证,且有完整 C / A / R / D / B / V 六段。
- 每个 skill 卡必须有
test-prompts.json,含数值判定题 + 同规范兄弟卡诱饵 + 适用范围外边界题。 description必须写明工程触发条件,不能只是"一个关于 X 的 skill"。- 版本存疑(现行/废止/局部修订不确定)时,先用 standard-doc-finder 或 web 搜索核实,再继续。
- 强条必须过"强条时效校验"——凡被 GB 55xxx 通用规范替代的,标注废止并转引,不遗漏。
与生态中其他 skill 的定位
- standard-doc-finder(上游,可选):找规范文件、核版本有效性。缺 → web 搜索或用户给的链接核实。
- 规范蒸馏工坊(本工具):蒸馏规范(条文/规则/公式/强条/图集)→ 可执行卡。
- report-reviewer(下游,可选):用蒸馏出的卡审核报告,卡作其条文依据。
- darwin-skill(进化,可选):进化任意 skill。缺 → 阶5 由主流程自测兜底,结论标注 fallback。
- pdf skill(文本提取):缺 → Python(pdfplumber / PyMuPDF)或视觉/OCR;扫描版先 OCR。
> 任何降级都不改变质量红线:逐字核对、效力分层、版本钉死、强条时效、三重验证 + 压力测试一项不能少。
调用惯例
- 永远先试点 1 本——除非用户明确说"批量"。
- 阶段之间主动汇报进度——不要静默跑完再 dump 结果。
- 不凭记忆写条文——没文本就停下来问;提取后必须回贴原文核对。
- 保留审计轨迹——candidates/ 和 rejected/ 都要留。
- 随时可续跑——每完成一个阶段就更新 PIPELINE_STATE.md(当前阶段 / 已完成产物 / 各卡状态 / 下一步)。