传统软件出了问题,工程师通常能追到版本、依赖、配置与日志。AI 系统却常被一个模糊名称概括:使用了“某大模型”,至于具体检查点、检索数据、提示模板和工具权限,未必有人说得清。
透明度的安全价值,不是公开越多越好,而是让每个关键组件可识别、可验证、可追溯。文档是入口,证据和控制才是防线。
## 先画出真实 AI 供应链
一个问答应用可能包含基础模型、量化文件、分词器、推理容器、系统提示、向量模型、知识库、重排器、第三方工具和前端组件。
为每项记录来源、版本、内容哈希、维护者、许可证、部署位置和更新方式。AI 物料清单可以借鉴 SBOM 的思想,但还需覆盖模型、数据与提示资产。
清单要由构建流水线自动生成。手工文档很快过期,尤其当平台自动切换模型别名或知识库每天更新时。
## 名称可见不代表文件可信
攻击者可以给恶意模型或数据包起一个熟悉名称。下载后校验哈希与签名,固定不可变版本,构建过程保存来源和时间。
容器、Python 包、CUDA 库和模型文件一起进入发布证据。只验证模型权重,却忽略加载它的自定义代码,仍可能执行危险逻辑。
开放权重带来检查与私有部署能力,也让攻击者更容易研究行为边界。透明度改变攻防双方信息,并不会自动消除风险。

## 数据血缘要能回到单个批次
训练、微调、检索和评测数据分别建版本。原始数据只读保存,清洗与标注生成派生版本,记录转换代码与操作者。
当某条回答泄露或错误时,团队应能查到它来自模型记忆、检索文档、用户输入还是工具返回。没有这层血缘,删除一份源文件也无法证明影响已经消失。
高敏感数据采用最小化与隔离,透明清单只记录必要元数据,不把原文或密钥写进清单本身。
## 提示与外部内容必须分区
网页、邮件、文档和工具返回都属于不可信数据。即使它们声称“忽略前面指令”,也不能获得系统权限。
把系统指令、用户请求和外部证据放在明确通道中。检索结果进入模型前保留来源,工具调用前由程序验证参数和权限。
OWASP 的生成式 AI 风险清单持续把提示注入、敏感信息泄露、供应链与过度代理列为重要问题。防御不能只靠再加一句提示,而要在模型外建立访问控制。
## 输出透明还需要执行隔离
展示模型理由或引用,无法证明输出安全。模型生成的 SQL、代码、URL 和 HTML 都应像外部输入一样验证。
工具使用最小权限账号,写入、外发、支付和删除动作需要额外确认。将模型输出映射到有限枚举与 JSON Schema,拒绝未知字段。
执行环境设置网络、文件与时间限制。即使模型被诱导,也只能在狭窄沙箱中行动。
## 日志要支持重放而不是监视一切
记录请求 ID、模型版本、提示模板版本、检索文档 ID、工具名称、参数校验结果、延迟和最终状态。敏感正文可以脱敏或只存哈希。
日志应回答“哪一步改变了结果”,而不是无限保存用户内容。访问日志本身也要授权、加密和设定保留期限。
对概率模型,完全逐 token 重现不总是可能。至少保存采样参数、随机种子支持情况和外部依赖快照,让调查能尽量接近原条件。

## 透明指标必须接受验证
“通过安全测试”没有测试范围就没有意义。公开或内部报告要写明模型版本、攻击类别、样本数、权限设置和失败定义。
红队结果与修复结果分别保存,修复后跑回归。对拒绝率、泄露率和工具越权率同时看正常任务损失,避免系统通过拒绝所有请求获得漂亮安全分数。
供应商声明可以作为线索,不能替代自己的环境验证。NIST 2026 年关于 AI 供应链透明度的公开材料也强调清点、理解、适配控制与证明有效性的连续过程。
## 透明度也要控制暴露面
公开系统提示、内部路径和精确防护阈值可能帮助绕过攻击。面向用户提供来源、模型大类和限制,面向运维保留详细版本与日志,面向审计提供受控证据。
密钥、漏洞细节和个人数据不属于透明内容。目标是让责任和行为可核查,而不是把所有内部信息放到互联网上。
## 从一次发布流水线改造开始
先让每次发布生成机器可读清单,固定模型、容器、提示和数据版本。随后加入签名验证、最小工具权限和请求级追踪。
再选择提示注入、供应链替换和越权工具三类场景做演练,验证能否发现、隔离、回退并说明影响范围。
AI 透明度时代真正的安全变革,是从“相信一个名字或说明”转向“验证一个具体构建和一次具体运行”。看得见只是开始,能证明、能限制、能回放才是安全能力。
## 参考资料