企业 AI 治理体系的建立——从模型管理、数据安全到合规审计
一、AI 治理的核心是控制风险,不是拖慢创新
企业引入 AI 后,出现了一个普遍矛盾:业务团队希望尽快上线 AI 功能,安全和合规团队要求控制风险。不做治理,模型接入缺乏规范,Prompt 包含敏感数据就发给了外部 API,模型输出的结果直接呈现给用户没有人工校验。但过度治理又会导致每个 AI 项目都要经过漫长的审批流程,错过了业务窗口。
AI 治理体系应该解决的是"让 AI 使用在可控的范围内规模化",而不是"让每个 AI 调用都得找人签字"。具体来说,它需要回答三个问题:用了哪些模型、数据是否安全、决策可不可追溯。我们的做法是建立三层治理:模型管理、数据安全和合规审计。
二、AI 治理体系架构:三层递进,一层比一层具体
三层治理的分工是清晰的。模型管理层回答"用了哪些模型、谁的模型、什么版本、效果如何"的问题。所有 AI 模型——不论是大语言模型、推荐模型还是视觉模型——都需要在模型目录中注册,包含供应商、版本号、访问方式、Prompt 模板、评估指标和负责人。未注册的模型不允许在生产环境调用。
数据安全层回答"数据出没出去、有没有包含敏感信息"的问题。这包括调用 AI 外部 API 时的数据脱敏、训练数据源的安全审批、以及数据出境的合规管控。核心原则是:敏感数据在离开企业边界之前必须脱敏。
合规审计层回答"每一条 AI 调用能不能追溯、决策有没有依据"的问题。它要求所有的 AI 调用都记录审计日志,保存请求摘要、模型响应摘要和调用上下文,同时要求关键决策(审批建议、风险评估、内容发布)的 AI 输出具备可解释性。这三个层次通过一个 AI 治理委员会来协调,委员会由技术、安全、法务和业务代表组成,每两周做一次治理评审。
三、模型管理层的 Java 实现:模型目录与调用网关
所有 AI 调用必须通过统一的 AI 调用网关,而不是业务服务直接调用模型 API。
@Service
public class AiCallGateway {
private final ModelRegistry modelRegistry;
private final PromptTemplateEngine promptEngine;
private final DataMasker dataMasker;
private final AuditLogger auditLogger;
/**
* 统一模型调用入口
* @param context 调用上下文(业务场景、用户 ID、租户 ID)
* @param request AI 请求
* @return AI 调用结果(含审计信息)
*/
public AiCallResult invoke(AiCallContext context, AiCallRequest request) {
// 1. 模型校验:模型是否在注册目录中,版本是否允许调用
ModelRegistration model = modelRegistry.getModel(
request.modelId(), request.version());
if (model == null) {
throw new AiGovernanceException("模型未注册或版本不支持:" +
request.modelId() + " v" + request.version());
}
if (!model.isAllowed(context.tenantId(), context.scene())) {
throw new AiGovernanceException("该业务场景未授权使用此模型");
}
// 2. Prompt 模板加载与数据脱敏
String prompt = promptEngine.render(model.promptTemplateId(), request.params());
String sanitizedPrompt = dataMasker.mask(prompt, context.tenantId());
// 3. 封装调用信息
AiCallRecord record = AiCallRecord.builder()
.tenantId(context.tenantId())
.userId(context.userId())
.scene(context.scene())
.modelId(request.modelId())
.modelVersion(request.version())
.promptHash(DigestUtils.sha256Hex(sanitizedPrompt))
.promptSummary(truncate(sanitizedPrompt, 200))
.timestamp(Instant.now())
.build();
auditLogger.log(record);
// 4. 调用模型
try {
AiResponse response = model.invoke(sanitizedPrompt);
auditLogger.result(record.id(), truncate(response.content(), 500),
response.tokenCount(), response.latency());
return AiCallResult.success(record.id(), response);
} catch (Exception e) {
auditLogger.error(record.id(), e.getClass().getSimpleName());
throw e;
}
}
}
Prompt 模板的管理也非常重要。每个业务场景的 Prompt 模板需要在 Prompt 管理平台中注册和维护,每次修改记录版本号、修改人和修改时间。模板中的变量字段需要声明数据类型和脱敏策略——例如用户姓名需要保留姓氏,订单金额无需脱敏,手机号码需要完全掩码。模板上线前需要经过安全审批,确认 Prompt 中不包含任何可被注入利用的指令。
四、数据安全与合规审计:两条不容妥协的底线
数据安全的核心是"数据分类分级 + 脱敏策略执行"。所有数据字段按敏感程度分为 L1(公开)、L2(内部)、L3(敏感)、L4(高度敏感),不同级别有不同的脱敏策略和出境管控。L4 级数据(身份证号、银行卡号、生物特征)不允许在任何情况下离开企业网络,包括调用外部 AI API。L3 级数据(手机号、邮箱、地址)在调用外部 AI 时必须脱敏。L2 和 L1 级数据可以正常使用但需要有审计记录。
敏感数据在代码层面通过注解声明,脱敏策略在网关层自动执行。
合规审计的核心是"全量记录 + 定期抽样"。所有 AI 调用都记录到审计日志,保存 180 天。审计日志包含调用时间、业务场景、模型 ID 和版本、Prompt 摘要(SHA256 做查重比对,不存明文)、响应摘要、token 消耗和延迟。安全团队每月对审计日志做一次抽样检查,重点关注两类异常:同一业务场景的 Prompt 模板发生了不应有的变化、以及敏感数据分类为 L3 及以上的字段是否被正确脱敏。
对于决策型 AI 场景——例如 AI 辅助审批、AI 风险评估、AI 内容审核——还需要记录决策依据。当 AI 给出"不通过"或"高风险"的结论时,模型需要输出影响该决策的关键因子和参考依据。这些信息不是给用户看的,而是给审计用的——当有人质疑"为什么这个订单被拒非常有效",系统可以追溯出 AI 依据了哪些数据做出了判断。
五、总结
企业 AI 治理不是限制,而是提供可规模化的安全保障。模型管理确保所有模型可知可控,数据安全确保敏感信息不出边界,合规审计确保每条调用可追溯可解释。三层治理分别回答"用了什么""安不安全""能不能追溯"这三个核心问题,让 AI 在企业中规模化使用具备治理基础。


