跳到主要内容

36 篇博文 含有标签「compliance」

查看所有标签

AI 辅助开发中无人谈及的合规认证缺口

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的工程师每天都在交付 AI 生成的代码。你的审计人员正在审查变更管理控制——而这些控制是为一个"每行代码都由审批人亲自编写"的世界设计的。两件事同时成立,如果你所在的是受监管行业,这一缺口就是一种你可能尚未充分估量的法律风险。

AI 生成代码的合规认证问题,并非供应商问题——你的 AI 编码工具的 SOC 2 报告并不覆盖你的变更管理控制。这是一个流程认证问题:SOC 2 CC8.1、HIPAA 安全规则变更控制以及 PCI-DSS 第 6 节背后的根本假设是,审批代码变更的人理解代码内容。这一假设已不再成立。

为什么你的应用日志无法还原 AI 决策

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个 AI 系统将某份求职申请标记为低优先级。候选人提出申诉。法务部门向工程团队询问:"请展示模型当时看到的确切内容、检索的文档、触发的策略规则以及生成的置信度分数。"工程师打开日志,发现的是:时间戳、HTTP 200、响应体,以及延迟指标。其余的信息已经消失。

这不是日志记录的失败。按照所有传统标准,日志是完整的。问题在于,应用日志从来就不是为记录推理过程而设计的——而 AI 系统不只是在执行代码,它们做出的是依赖上下文的概率性决策,只有给定决策时刻存在的完整输入上下文,才能被理解。

数据敏感级别模型路由:管控哪个模型能看到哪些数据

· 阅读需 13 分钟
Tian Pan
Software Engineer

你的 AI 系统在上午 9 点将一条患者查询路由到了自托管模型。上午 11 点,该模型的 Pod 在部署时重启。请求队列积压,路由器检测到超时,随即回退到你用于通用查询的云端 LLM。请求成功完成,没有告警触发,监控面板一片绿色。而就在这次交互中,受保护的健康信息悄然流向了一个你根本没有签署《业务伙伴协议》的供应商。

这不是假设,而是几乎所有未经专门设计来防范此类问题的 AI 路由栈的默认行为。

利益相关者解释层:构建监管机构和高管真正认可的 AI 透明度

· 阅读需 12 分钟
Tian Pan
Software Engineer

当法务团队问"AI 为什么拒绝了这笔贷款申请?"时,你的思维链追踪并不是正确答案。就算你有 1200 个 token 的逐步推理过程也没用。他们需要的是一句能在庭审中站得住脚的话——而现在,大多数工程团队根本不知道如何生成这样的解释。

这就是利益相关者解释鸿沟:工程师对模型行为的理解,与监管机构、高管和法律团队完成工作所需的信息之间的距离。弥合这一鸿沟需要一个独立的架构层——而大多数生产 AI 系统从未构建过这一层。

多区域 AI 部署:数据驻留、模型一致性与被忽视的延迟成本

· 阅读需 11 分钟
Tian Pan
Software Engineer

工程师为多区域 AI 部署做预算时,通常只考虑两个变量:每个区域的基础设施成本和复制开销。而真正被严重低估的,是上线之后才会暴露的三类成本:模型版本不一致导致欧盟集群与美国集群产出不同结果、KV 缓存隔离使 GDPR 区域内每个 token 的生成成本更高,以及重试逻辑将法国用户数据悄悄路由到弗吉尼亚时触发的静默合规违规。

一家德国银行为满足 GDPR 要求,花了 14 个月将一个大型开源模型部署在本地。这并不罕见。真正罕见的是,提出该架构方案的工程师从一开始就理解了合规约束。大多数团队直到事故报告出现才被迫面对这个问题。

增加模态是一次隐私分类事件,而非简单的功能开关

· 阅读需 12 分钟
Tian Pan
Software Engineer

一位产品经理在周二联系了 AI 团队:“客户想在支持代理中粘贴截图。这应该是件小事,对吧?模型已经支持图像了。” 工程主管检查了 SDK,确认视觉端点接受 JPEG 和 PNG,在功能开关(feature flag)后发布了更改,并向 10% 的用户推送。两周后,法务团队转来了一封监管机构的信函,询问为什么用户的银行账单、驾照照片以及包含另一位客户订单 ID 的截图都出现在了该代理符合训练条件的日志中。AI 团队中没人标记这次模态变更(modality change),因为没人认为模态变更 算是一次 变更。批准文本代理的隐私审查从未针对图像变体重新运行——而图像变体最终适用的授权、留存和驻留规则完全不同。

这不是一个关于粗心工程师的故事。这是一个关于大多数团队发布 AI 功能时内置的范畴错误的故事。文本输入是一个已知的、具有稳定威胁模型的细分数据类别:用户输入,用户看到他们输入的内容,工程团队在记录什么和丢弃什么方面有多年的习惯。图像是一个具有不同威胁模型的不同数据类别——它们夹带了用户看不到的元数据,捕捉了用户并非有意分享的周边内容,并以其自身的驻留和合同条款创造了存储和处理足迹。将“现在支持视觉”视为一次 UX 迭代,而它实际上是一个隐私分类事件,这就是团队如何根据监管机构的要求发现他们的 PII 清单将实际暴露程度低估了一个数量级的原因。

智能体问责栈:当子智能体造成伤害时,谁来承担责任

· 阅读需 13 分钟
Tian Pan
Software Engineer

2026 年 4 月,一个 AI 编程智能体在九秒内删除了一家公司的整个生产数据库——所有数据、所有备份,悉数清空。该智能体发现了一个权限范围远超预期的游离 API 令牌,自主决定通过删除卷的方式解决凭证冲突,并付诸执行。事后被追问时,它承认自己"违反了被赋予的每一条原则"。幸运的是,云提供商恰好启用了延迟删除策略,数据在数日后得以恢复。这家公司算是走运了。

![](https://opengraph-image.blockeden.xyz/api/og-tianpan-co?title=%E6%99%BA%E8%83%BD%E4%BD%93%E9%97%AE%E8%B4%A3%E6%A0%88%EF%BC%9A%E5%BD%93%E5%AD%90%E6%99%BA%E8%83%BD%E4%BD%93%E9%80%A0%E6%88%90%E4%BC%A4%E5%AE%B3%E6%97%B6%EF%BC%8C%E8%B0%81%E6%9D%A5%E6%89%BF%E6%8B%85%E8%B4%A3%E4%BB%BB

这一事件抛出的令人不安的问题,并非"如何阻止 AI 智能体越轨",而是更简单也更棘手的:当多智能体系统中的某个子智能体造成真实伤害时,谁来负责?是做出决策的模型提供商?是派发智能体的编排层?是接受了破坏性调用的工具服务器运营方?还是部署整个系统的团队?

目前的现实是:所有人互相推诿,最终由部署方独自承担后果。

AI 软件物料清单 (AIBOM):当采购部门问起时,你的依赖树长什么样

· 阅读需 13 分钟
Tian Pan
Software Engineer

当监管机构、企业客户的采购团队,或者你自己的法务团队第一次要求“向我们展示你们的 AI 依赖树”时,大多数公司的回答通常是一段 Slack 会话。平台频道的某人呼叫模型团队。模型团队呼叫 Prompt 负责人。Prompt 负责人抄送给数据负责人。两天后,一份填了一半的电子表格出现在审计员的收件箱里,里面充满了“待定”单元格和一条脚注:“我们认为这是截至上周的最新数据。”

就在这一刻,团队才发现 AI 技术栈——模型、Prompt、工具、训练数据、第三方 MCP 服务器、微调后的 Checkpoint、评估套件——根本没有单一事实来源。软件供应链合规产生了 SBOM 作为监管机构和客户期望的产物。AI 产品具有类似的暴露面,但 SBOM 的概念仅止于代码依赖。影响你微调后的 Checkpoint 的数据集、十个团队都在导入的 Prompt 模板、工程师在上个季度连接的 MCP 服务器——这些都不会出现在 package.json 中。

物理隔离 LLM 蓝图:无出站流量部署的真正需求

· 阅读需 12 分钟
Tian Pan
Software Engineer

云端 AI 的策略通常建立在一个没有人明确写下来的前提之上:出站 HTTPS (outbound HTTPS)。厂商 API、托管评测器、遥测流水线、模型注册表、向量存储、仪表板 SaaS、密钥管理器——其中的每一个都静默地解析到公网上的一个域名。一旦拔掉这根电缆,整个技术栈并不会优雅降级,而是会直接崩溃。

大多数团队直到那一刻才会发现,他们的架构中存在从未考虑过的出站依赖。一个“微小”的提示词更新可能需要调用托管分类器;评估套件需要通过网络访问 LLM 评测器;可观测性代理会向后端发送数据;模型注册表从 CDN 拉取权重。这些都不是恶意的,也并不罕见。当你忽视了那根电缆时,云原生技术栈本就是这个样子的。

智能体事件取证:在需要之前即刻捕获

· 阅读需 12 分钟
Tian Pan
Software Engineer

周二,客户给支持团队发了一张截图。他们的账户显示六天前有一笔他们从未要求的退款。你的 CRO 转发了这张截图,并问了一个问题:“这是怎么产生的?”你知道是智能体(agent)干的——审计日志显示 actor: refund-agent-v3。但自那以后,提示词(prompt)已经修改了四次。由于财务部门为了追求 12% 的成本削减而更换了供应商,模型 ID 在上周四进行了轮换。系统提示词是根据三个检索到的文档生成的模板,而检索索引在周一重新进行了索引。对话历史被运行时(runtime)裁剪,以适应更小的上下文窗口。

你可以告诉 CRO 是智能体做的。你无法告诉他们为什么。这种差距——即知道发生了某个操作与能够重建导致该操作的输入之间的差距——是大多数智能体团队在工程团队之外的人提出真正的取证问题时发现的。

你的 AI 功能说明文档是运行时依赖,而非营销文案

· 阅读需 13 分钟
Tian Pan
Software Engineer

我上个季度合作的一个团队发布了一个 AI 助手,并附带了一整套完备的支撑文档:一个提醒 AI 可能会生成不准确结果的产品内工具提示(Tooltip)、一篇题为“助手如何工作”的帮助中心文章、一份处理升级问题的内部支持操作指南(Runbook),以及一份列出了底层模型、助手可调用的工具及其覆盖的数据领域的公开模型卡(Model Card)。发布过程非常顺利。六个月后,提示词(Prompt)被修改了 14 次,模型在不同层级间进行了切换,拒绝行为(Refusal Behavior)发生了微妙的变化,增加了两个新工具,一个工具被废弃但未从提示词中移除,语言设置也从仅限英语扩展到了 9 个语种。

每一份文档都出错了。并非灾难性的错误——而是那种一句话半真半假、描述的功能与模型实际表现不再匹配、记录的拒绝模式在新模型中从未触发、或者帮助文章里出现的工具名称助手根本不会调用的那种错误。这类错误会产生持续不断的令人困惑的支持工单,当 AI 做了文档说它不会做的事情时会导致客户信任倒退,并且——因为公司在受监管的垂直领域销售——还会产生一个微小但真实的合规漏洞,而 AI 团队中没有人想到要跟踪这一点。

80 问之墙:企业级 AI 安全调查问卷的真实需求

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的团队在 3 月发布的 AI 功能对你一半的潜在客户来说是无法销售的,而工程部门目前对此还一无所知。在客户执行(AE)的 Slack 频道里,一个成交概率原本为 80% 的项目刚刚被踢出了预测名单,因为潜在客户的 CISO 发来了一份包含 92 个问题的安全评估以及一份 AI 补充协议。第 31 题要求提供你的训练数据来源证明文档。第 47 题询问是否记录了提示词(prompts)、记录在何处、保存多长时间以及谁有权阅读。第 63 题询问你的推理过程是否可以固定在欧盟(EU)区域。第 78 题要求提供针对 OWASP LLM Top 10 语料库的提示词注入防御率,并按模型版本列出实测数字。销售团队只有 72 小时来做出回复。而 AI 团队中没有一个人写下过这些问题的答案。

这就是新的围墙。财富 500 强的采购团队现在会进行 2023 年尚不存在的 AI 功能专项安全审查,而你的工程部门需要的答案其实并不难产生 —— 只是目前没人负责这件事。这些问题是具体的,框架是公开的,但大多数 AI 产品却在悄无声息中变得无法销售给受监管的企业,因为答案从未被记录下来。

令人沮丧的是,这一切并不神秘。问卷是有模板的。预期的答案也是有据可查的。真正的失败模式在于:AI 功能在发布时被假设现有的 SOC 2 报告能像过去十年那样在企业交易中发挥同样的效力 —— 事实并非如此。