技术文章

AI 生成内容标识怎么落到系统里

《人工智能生成合成内容标识办法》施行之后,落地的难点不是「要不要加标识」,而是三个问题:加在哪、导出后还在不在、什么情况下可以不标。

2026-09-30 合规 · 内容标识 · 工程实践

《人工智能生成合成内容标识办法》2025 年 9 月 1 日施行。做过落地的都知道,这条政策真正的难点不是”要不要加标识”,而是三个具体问题:

  1. 标识加在哪——文件里,还是数据库里?
  2. 用户导出、下载、转发之后,标识还在不在?
  3. 什么情况下可以不标?

下面按这三个问题讲。

一、先分清显式和隐式,它们不是一回事

办法里其实是两套要求:

显式标识隐式标识
依据第四条第五条
是什么用户能感知到的标识写在文件元数据里的标识
要求强度应当应当(数字水印是”鼓励”)
能否豁免可以(第九条)不能

最后一行是整件事的边界:显式标识有豁免通道,隐式标识没有任何豁免。

很多人以为”用户申请了就能不标”,这是错的——用户申请只能免掉显式标识,隐式标识永远要写。

二、隐式标识:最常见做错的地方

最常见的错误是:把标识存在自己的数据库里,以为就完事了。

办法第五条要求的是”在文件元数据中添加”——是文件本身,不是你的库。

正确做法是按媒体类型写进容器:

媒体类型写入位置
JPEGAPP1 段(XMP)
PNGiTXt 块(XMP)
WebPXMP
MP4udta box
音频ID3v2

要写入的字段,按第五条是三样:

  • 生成合成内容属性信息
  • 服务提供者名称或者编码
  • 内容编号

怎么判断自己有没有做对? 拿一个生成出来的文件,用一个跟你系统完全无关的工具打开它的属性面板。如果只能在你自己的后台查到,那就是没做。

三、显式标识:难点在”导出之后”

第四条里有一句很容易被忽略的话:提供下载、复制、导出等功能时,应当确保文件中含有满足要求的显式标识。

意思是:界面上挂着角标不算,用户拿到手的那份文件里也得有。

分媒体的做法不太一样:

媒体做法注意
图片角落常驻角标,写进图片本体不是前端叠一层图层
视频开头若干秒的画面内提示 + 常驻角标两处要同一次重编码写入
音频合成时作为第一句念出要能配文案和语速

视频这里有个具体的工程点:开头的画面提示和角落角标必须在同一次编码里写进去。 分两次做要么多编一遍,要么两处标识不同步——用户截图的时候只截到一处,就露了。

四、一个能省一半机器时间的决策

视频类产品通常会遇到两件都要做重活的事:

  1. 输出内容审核——要抽帧送审
  2. 加标识——要重新编码

分开做的话,同一个视频要被解码两遍、编码两遍、读写两遍。

合并成一次流水线:一次解码拿到的帧,一路送审核、一路用来编码带标识的成品。

转码是重活。省一遍等于省一半机器时间,而且少一个中间文件,少一处出错的可能。

五、内容编号不要复用业务 ID

第五条要求隐式标识里有”内容编号”。

图省事的做法是直接用任务 ID 或者素材 ID 当编号。问题在于:任务和素材都是会被清理、会被用户删除的业务数据,而标识台账是要长期留的。

所以编号应该独立生成,跟业务 ID 解耦。比如用「前缀 + 日期 + 随机段」的形式,保证对外可索引、可检索。

这样即使任务记录被清理掉了,靠编号仍然能定位到当时的标识台账和证据。

六、豁免:怎么做到”能豁免但不失控”

第九条给了豁免通道,但条件很严——用户申请、在用户协议中明确用户义务和使用责任、依法留存日志不少于六个月。三条缺一不可。

落地的时候有几个点必须处理好:

点做法
默认状态默认必须带显式标识,豁免是明确的申请动作,不是随手开关
申请留痕记录协议版本、受理时间、IP 与 UA
可撤销用户随时能撤回豁免
界面提示始终保留——豁免只作用于用户拿到的文件,不影响平台界面的告知

最后一条最容易做错:有人以为豁免了就把界面提示也去掉,那是把”用户拿到的文件”和”平台展示的内容”混为一谈了。

七、几个容易漏的细节

一、加不加显式标识要一次决定。

在结果落库的时候就定下来,不要存两份文件、也不要在下载时动态生成。后者会在缓存、CDN、并发上给你制造一堆麻烦。

二、源片要留。

如果以后需要重新加工(比如公开分享时补显式标识),有源片就不用重新生成一遍。本地只做加速缓存,源片放永久存储。

三、用户删除不能碰到合规证据。

合规相关的证据副本要放在独立的前缀下,不进用户配额、不进回收站、不参与存储巡检——否则用户一删,你的证据就没了。

四、音频的内容审核最容易漏。

音频的标识通常做了(隐式写进 ID3v2、显式念在第一句),但音频内容本身的审核经常被落下。这块要不要做、怎么做,建议单独评估。

五、留存期限要真的填上。

后台做了留存治理,但如果不填具体期限,跑的还是代码默认值。上线前记得把各类数据的留存期填实。

八、上线前自查清单

  • 隐式标识写进了文件本体(不是只落库)
  • 每种媒体格式都有对应的写入实现
  • 隐式标识字段包含:生成合成属性、服务者名称/编码、内容编号
  • 内容编号独立生成,不复用业务 ID
  • 显式标识在导出/下载的文件里仍然存在
  • 视频的画面提示和角标是同一次编码写入
  • 豁免默认关闭,申请走明确流程,且记录协议版本与受理信息
  • 豁免不影响界面提示
  • 源片有长期保留位置
  • 合规证据与用户数据隔离
  • 各类数据留存期限已实际配置
  • 用户协议里写明了标识的方法与样式(第八条)
  • 备案材料里包含标识相关材料(第十二条)

最后

标识这块的坑,基本都出在两个混淆上:文件里的标识 vs 数据库里的标识,以及平台界面 vs 用户拿到的文件。想清楚这两条,剩下的都是工程活。

具体条款以官方原文为准,本文只讲落地时容易踩的地方。