NIST GenAI Profile (NIST AI 600-1)
Day 151(OCC 2026-13,内部模型验证)+ Day 152(EU AI Act,对外披露义务)给了我们「流程」与「合规义务」两套框,但都没有给出一份具体的 GenAI 风险清单——幻觉、信息完整性、危险内容这些 LLM 专属风险该挂到哪里。NIST AI 600-1(GenAI Profile)补的就是这一块。今天在 B16 曲线上的动作是:把本仓已建的 failureTaxonom
阶段: B16 · 治理一页纸 + AI 原型 + 可用性(Day 151-160) 标签: #nist-ai-600-1 #genai-risk #failure-taxonomy #risk-coverage
今日导引(由浅入深)
Day 151(OCC 2026-13,内部模型验证)+ Day 152(EU AI Act,对外披露义务)给了我们「流程」与「合规义务」两套框,但都没有给出一份具体的 GenAI 风险清单——幻觉、信息完整性、危险内容这些 LLM 专属风险该挂到哪里。NIST AI 600-1(GenAI Profile)补的就是这一块。今天在 B16 曲线上的动作是:把本仓已建的 failureTaxonomy.ts(B14 产物)逐条挂到 600-1 的 12 类风险,统计覆盖率,看哪些风险没有对应控制。这是从「我有评测」到「我能证明评测覆盖了权威风险清单」的一步。今天的最小可判定产出:风险覆盖表 + X/12 覆盖率数字写入 GOVERNANCE_MAP。
1. 机理精读
NIST AI 600-1 把通用 RMF 落到 GenAI。 NIST AI RMF 1.0(2023)是通用框架,四大功能 Govern / Map / Measure / Manage。但通用框架对「LLM 会幻觉、会泄密、会生成危险内容」这些 GenAI 专属风险讲得不够具体。NIST AI 600-1(Generative AI Profile,2024-07) 就是 GenAI 专用 profile:它列出 12 类 GenAI 风险,并把每一类挂到 Govern / Map / Measure / Manage 四功能下的具体控制建议。
12 类风险的清单。 NIST AI 600-1 列的 12 类 GenAI 风险(编号便于映射):
- CBRN 信息或能力
- Confabulation(即幻觉/编造)
- 危险、暴力或仇恨内容
- 数据隐私
- 环境影响
- 有害偏见与同质化
- 人机配置 / automation bias(过度信任)
- 信息完整性(information integrity)
- 信息安全
- 知识产权
- 淫秽 / 虐待 / 非自愿内容(CSAM 等)
- 价值链与组件集成
AML LLM 场景里命中最狠的是 #2 confabulation(SAR 引用了不存在的交易=凭空捏造证据)与 #4 数据隐私(PII 泄露),其次是 #8 信息完整性(误判类型学)、#7 automation bias(调查员过度信任 AI 结论)、#12 价值链(依赖第三方 GPAI)。#1/#5/#10/#11 在 AML 场景天然不相关,做 gap 分析时不应硬算「待补」。
为什么必须用 600-1 而不是只引 RMF 1.0 核心。 RMF 1.0 核心是「方法论骨架」,但它不告诉你「LLM 会幻觉」该归到哪。600-1 把抽象的「Measure」具体化成「针对 confabulation 你要做什么测量」。对 AML SAR 这种高敏 GenAI 场景,只引 RMF 1.0 而不引 600-1,等于有了治理框架却漏掉了 GenAI 专属风险清单——审查人一眼能看出。
四功能 Govern / Map / Measure / Manage 在本仓的落点。 600-1 把每类风险挂到四功能下,本仓对应:
- Govern(治理职责/政策)→
docs/AML_GOVERNANCE_MAP.md的 RACI + ADR(Day 154)。 - Map(识别上下文与风险)→
failureTaxonomy.ts的 6 类失败定义本身就是「识别」产物。 - Measure(测量风险)→
evalChecks.ts(确定性检查)+cohensKappa.ts(裁判校准)+groundTruthEval.ts(recall/precision/FPR)。 - Manage(处置/缓解)→
hitl.ts(人审兜底)+gate.ts(fail-closed 拦截退化)+ 对抗 eval 的红队。
四功能里本仓最强的是 Measure(已有多套确定性 + 统计检查),最弱、最依赖外部数据的是 Measure 的「真值」(金标待下载、κ 待手标)——这正是诚实 gap。
覆盖率分析是核心动作。 把本仓的失败分类法(failureTaxonomy.ts 的 6 类)逐条映射到 600-1 的 12 类,能回答两个问题:(1) 本仓 taxonomy 覆盖了 12 类中的哪几类(X/12);(2) 哪些 600-1 风险没有对应控制(gap)。后者比前者更有价值——它是「下一步该补什么控制」的输入。例如本仓 taxonomy 强在 confabulation(hallucination 类)、信息完整性(typology_misjudge)、格式/契约,但对「环境影响」「CBRN」「知识产权」等类目天然不命中(AML 场景不相关),而「automation bias」(人机配置)则由 hitl.ts 的 HITL 闸门覆盖——需逐条勾对后给出准确的 X/12。
边界:600-1 是风险清单 + 控制映射,它不规定生效日期(那是 AI Act 的事,Day 152),也不规定验证流程独立性(那是 MRM 的事,Day 151)。三者各管一段,Day 154 收敛。
资源出处:NIST AI 600-1 Generative AI Profile(2024-07)。
2. 推导 / 手算 / 代码走读
本日的覆盖率统计依赖真实的 src/aml/failureTaxonomy.ts。逐条走读其真实符号与归类(用于映射 600-1):
FAILURE_TAXONOMY是只读 6 类常量,每类有稳定id(进 CI/看板的 key):tool_failure、hallucination、context_pollution、retrieval_miss、format_violation、typology_misjudge。- 映射到 600-1 的对应关系(逐条勾对):
hallucination(「SAR 引用本案不存在的交易 id/金额」,severity=critical)→ confabulation / 信息完整性。typology_misjudge(assessCase().topTypology ≠ case.label,severity=high)→ 信息完整性(误报/漏报)。context_pollution(把良性噪声当证据,severity=high)→ 信息完整性 / 人机配置(automation bias 抬高误报)。retrieval_miss(核心证据交易未召回,severity=high)→ 信息完整性 / 价值链(检索组件局限)。tool_failure(下游工具抛错/超时/结构非法,severity=critical)→ 价值链与组件集成 / 信息安全。format_violation(段落不足、金额非两位、缺诚实标注,severity=medium)→ 信息完整性 / 人机配置。
isBenignNoise(memo, channel)是确定性谓词(channel==='card'或 memo 属「工资代发/账单代扣/日常消费」即良性噪声),它让context_pollution的判定可代码化——对应 600-1 的 Measure 功能:风险要能被确定性测量。suggestFailureClasses(c, assessment, sar)把上述 decisionRule 串起来给标注者建议命中类(hallucination/context_pollution/format_violation/typology_misjudge)——它是「建议非自动判定」,真正 critical 判定走evalChecks的确定性检查。- gap 识别:600-1 的「数据隐私(PII 泄露)」并不在这 6 类失败里(它由对抗 eval 的 PII masking 任务覆盖,见
src/agent/eval/tasks.ts),所以做覆盖率时要把「跨文件控制」也算进来,避免低估 X/12。 FailureLabel接口:failureTaxonomy.ts还定义了开放编码标注记录{caseId, classId, note, annotator: 'human' | 'llm-judge'}——它区分人工与 LLM 标注,呼应「关键评分保留人工」(2026-01)。这正是把 600-1 的 Measure 落到「谁来测、用人还是 LLM」的具体契约。
6 类 taxonomy → 12 类 600-1 的映射表(落 GOVERNANCE_MAP 用)。
| 本仓失败类(severity) | 600-1 风险类 | 证据/检查 |
|---|---|---|
| hallucination(critical) | #2 confabulation / #8 信息完整性 | evalChecks: cited_tx_exist |
| typology_misjudge(high) | #8 信息完整性 | evalChecks: top_typology_consistent + 金标 |
| context_pollution(high) | #8 信息完整性 / #7 automation bias | isBenignNoise() 谓词 |
| retrieval_miss(high) | #8 信息完整性 / #12 价值链 | citedTxIds 非空下界守卫 |
| tool_failure(critical) | #12 价值链 / #9 信息安全 | error 字段/契约字段检查 |
| format_violation(medium) | #8 信息完整性 | evalChecks 确定性检查 |
| (跨文件)PII masking | #4 数据隐私 | src/agent/eval/tasks.ts |
| (跨文件)HITL 闸门 | #7 automation bias | src/aml/hitl.ts canAutoFile()===false |
X/12 的最终数字按上表 + 跨文件控制逐条勾对后写入 GOVERNANCE_MAP(不臆造具体数);天然不相关的 #1/#5/#10/#11 不计入待补 gap。
3. 今日实战
- 打开
src/aml/failureTaxonomy.ts,把现有 6 类失败逐条挂到 NIST AI 600-1 的 12 类风险(按上节映射)。 - 把「跨文件控制」一并计入:PII 隐私 ←
src/agent/eval/tasks.ts的 PII masking;automation bias ←src/aml/hitl.tsHITL 闸门。 - 统计覆盖率 X/12(有几类被本仓控制覆盖),并列出未覆盖且相关的 gap。
- 把映射表 + X/12 覆盖率数字写入
docs/AML_GOVERNANCE_MAP.md(已含 NIST-AI-600-1 行,本日补具体映射)。
4. 今日实测 / 产出
- 风险覆盖表 + 覆盖率数字(X/12 类)——
failureTaxonomy.ts已存在,映射为文档对齐工作 ✅ 可落地;具体 X/12 数字按 taxonomy 实际类目逐条勾对后写入。 - 不臆造具体覆盖率数;X/12 以实际勾对结果为准,跨文件控制(PII/automation bias)一并计入避免低估。
GOVERNANCE_MAP已含「NIST AI RMF — GenAI Profile (NIST-AI-600-1, 2024-07)」行(Govern/Map/Measure/Manage across the 12 GenAI risks)。
本日自检清单(可勾对)。
- 6 类 taxonomy 全部映射到 ≥1 个 600-1 风险类。
- 跨文件控制(PII #4、automation bias #7)已计入,避免低估 X/12。
- 天然不相关类目(#1/#5/#10/#11)排除出待补 gap。
- X/12 精确数字——按实际类目勾对后填,不臆造。
5. 常见误区 / 陷阱
- 只引 AI RMF 1.0 核心而忽略 600-1 的 GenAI 专属 12 类——AML LLM 场景必须用 GenAI Profile,否则漏掉 confabulation/PII 等关键风险。
- 做覆盖率时只数本文件 6 类,漏算跨文件控制——PII、automation bias 由别的模块覆盖,只看
failureTaxonomy.ts会低估 X/12。 - 把不相关类目(CBRN/环境影响)硬算「未覆盖 gap」——AML 场景天然不命中的风险不应计入待补 gap,否则虚增工作量。
- 把
suggestFailureClasses当自动判定器——它只给标注建议,真正 critical 判定走evalChecks确定性检查。 - 覆盖率高就以为「风险已控」——映射只证明「我考虑了这类风险」,不证明「控制有效」;有效性要靠 Measure 的真值(金标 + κ),而这部分仍 gated。
6. 学习资源(每条带 YYYY-MM)
- NIST AI 600-1 Generative AI Profile(2024-07)——本日 12 类 GenAI 风险与控制映射来源。
- NIST AI RMF 1.0(2023-01)——通用框架底座,600-1 在其上落 GenAI。
- Hamel Husain + Shreya Shankar evals 工作流(开放编码→轴向编码→LLM-as-judge,Lenny's Newsletter / hamel.dev,2025-09)——本仓
failureTaxonomy.ts方法论出处。 - 「LLM 模拟用户是不可靠代理,关键评分保留人工」(2026-01)——
FailureLabel.annotator区分人工/LLM 的依据。 - OCC Bulletin 2026-13(2026-04)+ EU AI Act Omnibus(2026-04~06)——Day 151-152 互补框。
- 本仓
src/aml/failureTaxonomy.ts+docs/AML_GOVERNANCE_MAP.md(2026-06)——代码与文档交叉引用。
SOTA检查 (2026-06 更新)
- 当前主流方案:NIST AI 600-1(2024-07)仍是当前 GenAI 风险权威 profile,未被取代,current;12 类风险 + Govern/Map/Measure/Manage 映射为行业事实标准。
- 是否仍 SOTA:是。2026-06 无替代版本发布。
- 过时黑名单(AVOID):只引 AI RMF 1.0 核心而忽略 600-1 的 GenAI 专属 12 类——AML LLM 场景必须用 GenAI Profile;把「映射覆盖率」当「控制有效性」。
- 下次复查点:复查 NIST 是否发布 600-1 更新版或配套 measurement 指南(NIST 近年节奏快);2026-08-02 与 AI Act Art.50 一并复查披露相关风险类目(#8 信息完整性、#4 数据隐私)。
衔接
- 昨天:Day 152 — EU AI Act Omnibus 时间线(建 governance_dates,锁定 Art.50 2026-08-02 披露义务)。
- 今天:把本仓 6 类失败分类法挂到 NIST 600-1 的 12 类 GenAI 风险,统计 X/12 覆盖率,识别 gap。
- 明天:Day 154 — 一页纸治理设计(把 OCC 2026-13 + AI Act Art.50 + NIST 600-1 三框收敛成单页 RACI + 8 控制点 + ADR)。