AI 文本水印通过修改模型令牌选择概率分布,在保持语义自然的前提下嵌入统计特征,可用于检测 AI 生成内容。
当人们听到"AI 水印"时,往往会想象某种可见的东西:隐藏的字符、特殊符号,或者嵌入在每个句子中的元数据。
文本水印的工作原理与此不同。
它的基本思路是:在保持生成文本自然的前提下,对模型的 token 选择过程进行微小的统计调整。
LLM 并不是直接"写出一个句子",而是一次生成一个 token。
假设 Claude 已经生成了:
"The company launched a new…"
此时,模型会计算可能的后续 token 概率:
正常情况下,模型从这个概率分布中进行采样。
水印机制可以修改这个选择过程,同时不改变响应的整体含义。
关键词是"选择"。
如果只有一个合理的延续,几乎没有什么可以操纵的空间。
2 + 2 =
模型极大概率会生成:
4
在这里没有太大的统计自由度。
而对于:
"The new system provides…"
可能的延续包括:
存在许多合理的选择。
这正是统计水印发挥作用的空间。
一个概念性的水印系统可以使用密钥对候选 token 创建确定性的分区。
假设候选 token 被分成两组:
product, secure, efficient, scalable
platform, powerful, flexible, advanced
实际的分组是由算法生成的,而非人工指定。
模型仍然会考虑所有候选 token,但当多个候选 token 概率相近时,水印可以略微倾向于偏好组中的 token。
结果对人类读者来说仍然看起来很正常。
重要的是,这个模式在统计上是不寻常的。
这是最容易误解的部分。
"每当 Claude 写 'important' 时,那就是水印。"
实际上,信号分布在许多生成决策中。
把每个 token 选择想象成一次微小的统计投票。
单个选择几乎不提供任何信息。
成千上万的选择可以揭示出一种模式。
Token 1 → 轻微水印偏好
Token 2 → 无有用偏好
Token 3 → 水印偏好
Token 4 → 水印偏好
Token 5 → 强制选择
Token 6 → 无有用偏好
Token 7 → 水印偏好
...
单个决策实际上是不可见的。
总体统计模式才是关键。
生成器知道秘密的水印规则。
因此,检测器可以检查一段文本并问:
"这个模型选择的词是否包含水印预期的统计模式?"
它不需要找到一个魔法词。
相反,它计算的是:
观察到的模式 vs. 预期的随机模式
如果观察到的模式在普通生成情况下极不可能出现,检测器就会更有信心认为水印存在。
这本质上是一个统计假设检验问题。
TEXT
▼ Tokenize the text
▼ Analyze generation choices
▼ Apply watermark/key test
┌────────┴────────┐
▼ ▼
Signal detected Signal too weak
│ │
▼ ▼
Likely AI-origin Inconclusive
Anthropic 并未公开精确的生产级检测算法和阈值。
假设水印只产生微小的统计偏差。
对于 20 个 token,随机 chance 很容易淹没这个信号。
对于 2,000 个 token,检测器有更多的观察数据。
这类似于抛掷一枚略有偏差的硬币。
如果一枚硬币正面朝上的概率是 51%:
AI 水印基于类似的统计原理。
生成的文本越多 → 观察越多 → 潜在的检测信号越强。
这就是为什么非常短的 AI 生成答案难以可靠分类的原因。