posts/eu-ai-act-transparency-engineering.md
欧盟 AI 新规生效,角落标签救不了你
一句「内容由 AI 生成」,解决不了一条内容生产链上的所有责任。
1500 万欧元,或者企业全球年营业额的 3%。
从 8 月 2 日开始,欧盟《人工智能法》第 50 条的透明度要求正式适用。欧盟委员会的规则速览把处罚上限写得很直白,也把受影响的场景摊在了桌面上,聊天机器人要说明自己是 AI,生成内容要带机器可读标记,深度伪造和部分公共利益文本要做清晰披露。

图一,企业固定金额上限为 1500 万欧元,另有全球年营业额 3% 的比例上限规则
好家伙,看到这里,很多产品团队的第一反应大概是让前端加一行灰字。
「AI 生成,仅供参考。」
工单关闭,棒棒的。
可惜这事儿没这么省心。欧盟委员会 7 月发布的实施指南区分了两套完全不同的责任。一套面向系统提供方,要求直接交互时告知 AI 身份,并给生成或操纵的内容加入机器可读标记。另一套面向系统部署方,要求在深度伪造、情绪识别、生物特征分类,以及特定公共利益文本等场景做可感知披露。
一个是机器要读得到,一个是人要看得见。
你在页面角落放一句免责声明,最多碰到了第二层的边。内容一旦被下载、转码、截图、转发,那个标签很可能原地失踪。机器可读来源也没有凭空出现,审核记录、编辑责任和生成链路更不会自己长出来。
所以我对这次新规的判断很明确。
透明度不再是文案问题,而是一项产品架构能力。
这篇不是法律意见,具体业务仍然要让熟悉欧盟《人工智能法》的律师确认。但从工程视角看,团队现在就能开始补的东西已经很清楚了。
一张标签为什么不够
先拆开两个很容易混在一起的词。
「可见标签」给人看。它告诉用户,这段音频、图片、视频或文字使用了 AI。标签要清楚、能被感知,不能藏在三层菜单后面,也不能只在用户鼠标悬停时闪一下。
「机器可读标记」给系统看。它需要让平台、检测工具或下游服务能够识别内容由 AI 生成或操纵。欧盟委员会的指南概览用的要求是有效、可互操作、稳健和可靠,并且以技术可行为边界。
这两个层次解决的不是同一个问题。
假设一个常见场景,一款 SaaS 用生成模型替商家制作商品演示视频。页面上有清楚的 AI 标签,用户下载后发到另一个平台,标签没有进视频画面,也没有进入文件元数据。转码服务再跑一遍,原始文件里的信息也丢了。到了消费者眼里,它就是一段普通演示视频。
页面合规了,内容没合规。
欧盟发布的 AI 内容图标说明给了几个很实用的产品提示。标签最迟要在用户第一次接触相关内容时可见,不能被浮层遮住;内容下载或转发后,标识仍应保留;标签最好支持辅助技术读取,配套文字要讲人话,别扔一串缩写让用户猜。
欧盟图标本身是可选的,而且官方特意提醒,用了图标不等于自动合规。这点有点子牛逼,因为它直接戳破了最常见的产品幻觉。大家总想找到一张万能贴纸,贴上去就能过关。监管写得很清楚,图标只是披露界面的一种实现,责任仍然在部署方。
于是工程目标也要跟着换。
别只问「页面有没有 AI 标签」,要问「来源信息能不能跟着内容走」。
先分清你是谁
第 50 条反复出现两种角色,提供方和部署方。
提供方负责开发 AI 系统,或者用自己的名称、商标把系统投放市场。部署方则是在自己的业务里使用这套系统。角色不是按公司大小分,也不是简单按谁训练模型来分。
一家公司可能同时扮演两个角色。
你基于第三方大模型做了一款视频生成产品,底层模型公司是上游提供方,你可能是下游系统的提供方。等你把这套产品用在自家营销内容里,你又成了部署方。责任沿着供应链流动,不会因为 API 是租来的就停在上游。
坦率讲,这里最容易翻车的不是没人做事,而是每个人都以为别人会做。
模型厂商说输出已经带标记,应用团队没验证转码后还在不在。应用团队说界面已经提示,内容运营下载后又用剪辑软件导出一遍。平台以为发布者会披露,发布者以为平台会自动识别。一路都有人,到头来一路都没接住。
比较稳的做法,是先画一张内容责任图。
从用户输入开始,经过哪个模型、哪个后处理器、哪个人工审核环节、哪个存储桶、哪个分发渠道,直到下载和二次分享。每个节点旁边写三件事,谁拥有它,来源信息怎样传递,标记丢失时谁负责阻断。
如果这张图画不出来,别急着讨论用哪种水印。
连责任边界都不知道,技术方案只会把混乱自动化。
真正要改的是生成链路
透明度能力最好从内容生成的那一刻开始,而不是等发布前再补。
一个最小的来源记录,可以长这样。
{
"content_id": "asset_20260803_001",
"origin": "ai_generated",
"provider": "model_vendor",
"model": "model_version",
"generated_at": "2026-08-03T03:00:00Z",
"human_review": {
"status": "reviewed",
"owner": "editor_id",
"reviewed_at": "2026-08-03T03:20:00Z"
},
"disclosure": {
"visible_label": true,
"machine_readable_mark": true,
"policy_version": "eu_ai_act_article_50_v1"
},
"transform_chain": ["generate", "crop", "subtitle", "export"]
}
这不是欧盟规定的固定 schema,也不是照抄就能过审的模板。它只是把工程上最容易丢的几件事放进同一条记录,内容从哪来,用了什么模型,经过哪些变换,有没有人审,谁承担编辑责任,当前套用哪一版披露策略。
为什么要记 transform_chain?
因为来源标记最怕后处理。
图片裁剪一次,视频重编码一次,音频抽轨一次,文档转成截图一次,都可能把原来的元数据剥掉。你的生成服务即使做对了,后面的 FFmpeg、CDN 图片处理、社交媒体压缩仍然可能把结果洗成白板。

图二,内容可以不断变形,来源凭证不能半路掉队
真正靠谱的流水线会在每一个转换节点做检查。
输入有标记,输出也必须有。输出不支持原格式,就换成等效实现。既没有机器可读标记,也没有可见披露,流水线直接失败,别让内容继续往分发端走。
这和写代码时跑类型检查很像。你不会因为上游函数返回类型正确,就默认十次转换以后仍然正确。来源信息也应该有自己的契约测试。
怎么说呢,监管条文落到工程里,经常就是这么朴素。
一组字段,一条状态机,一堆不太浪漫但必须跑的测试。
这里还要留一个技术抽象层。法律要求的是可检测、机器可读、有效、稳健和可互操作,并没有让所有团队把命运押在同一种具体格式上。可以评估内容凭证、嵌入式元数据、水印或检测接口,但业务层最好只依赖统一的来源能力,不要把某个供应商的私有字段散落在每一条发布链路里。
供应商换了,格式升级了,法规解释变了,只改适配器。
不然半年后你会得到一套很熟悉的遗留系统,每个服务都说自己支持透明度,字段名却有七种,导出一次就丢一半。厉害了,合规债务也能做成分布式系统。
把例外写成状态机
很多团队看到「人工审查」四个字,会长舒一口气。
确实,欧盟的图标与标签说明提到,面向公共利益事项的 AI 生成文本,如果经过人工审查或编辑控制,并且自然人或法人承担编辑责任,可能不落入对应的可见披露要求。标准编辑辅助、没有实质改变输入数据或语义的功能,也存在边界和例外。
但「有人看过」不是一个可靠状态。
谁看过,看了什么,能不能退回,改了哪些事实,谁最终批准发布,出了问题谁能把记录调出来,这些才是编辑责任的工程形态。
把它写进状态机,事情会清楚很多。
generated 只代表内容生成完成,不能直接发布。review_required 代表需要人工核验。编辑确认来源、事实和表达后进入 reviewed,再由具有责任权限的人批准到 approved。任何后续实质修改,都把状态打回 review_required。
别让一个叫 is_human_reviewed 的布尔值承载全部希望。
布尔值不会告诉你审核发生在修改前还是修改后,也不会告诉你审核者是否真的拥有编辑责任。很多所谓人工在环,到头来只是运营同学点了一下「确认」。页面很完整,证据很空。
欧盟关于透明度行为准则的问答还说明,行为准则是自愿工具,不签署并不会让义务消失。非签署方需要用其他同等充分的方式证明自己怎样完成机器标记和可见披露,可能还要面对更多信息请求。
所以证据链不是为了某次检查临时拼材料。它应该是系统每天运行时自然产生的副产品。
版本化的策略,带时间戳的审核记录,标记写入结果,下载与转发测试,异常内容的阻断日志。平时没人看它们,出问题时它们就是团队能不能解释清楚的分水岭。
上线前跑一遍这五个测试
如果现在只能做一轮快速排查,我建议先跑五个测试。
第一,身份测试。
新用户第一次进入聊天、语音或智能体界面,能不能在交互发生前或最迟发生时明确知道对面是 AI。提示是否依赖一段没人会读的服务条款,换成移动端小屏后还看不看得到。
第二,下载测试。
把图片、音频、视频和文档下载到本地,再用常见工具打开,来源信息是否仍能被读到。重新导出一次以后还在不在。如果不能保留,是否有可见标签或其他等效路径接住。
第三,转发测试。
把内容经过实际会用到的 CDN、压缩器、转码器和分享链路。别只测原文件。生产环境最擅长在你没留意的地方「优化」掉关键元数据。
第四,无障碍测试。
标签有没有足够对比度,屏幕阅读器能不能读到,短暂出现的提示是否停留足够久,第二层详情能不能用键盘访问。欧盟图标说明明确鼓励使用 alt 文本或 ARIA 标签,并让配套文案避免行话。
第五,证据回放测试。
随机抽一条三个月前的内容,只给一个 content_id,团队能不能在几分钟内还原模型版本、生成时间、变换链、审核人、策略版本和最终披露结果。还原不了,就说明日志只是存在,并没有形成证据。
你想想看,这五项都不是多前沿的 AI 技术。
它们更像支付链路、隐私同意和审计日志。麻烦,琐碎,做完不会出现在模型榜单上。但当 AI 开始替产品持续生产文字、图片、语音和视频时,真正能让系统长期跑下去的,往往就是这些不抢镜的脚手架。
《人工智能法》正式文本把第 50 条透明度义务放进了最高 1500 万欧元或全球年营业额 3% 的处罚档。欧委会速览也列出一项有限过渡安排,8 月 2 日前已经投放市场的生成式 AI 系统,仅就机器可读标记义务可延到 12 月处理。具体版本和适用条件仍应由法务确认,但工程团队没必要等到临近期限才开始盘点。
因为最费时间的从来不是加一句文案。
是让一条来源信息从模型输出开始,穿过裁剪、转码、下载、转发和人工审校,最终还活着。
那条不起眼的标记,才是这次新规真正照到的地方。