TellWorldAI 世界档案
问档案English

首页›原理

原理

文本水印(Watermarking)

文本水印是在语言模型生成的文字里嵌入一种人看不见、但程序能从一小段词元中检测出来的信号,用来判断一段文本是否出自某个模型。

时代 生成式 AI 普及

是什么

文本水印(watermarking)指的是在模型输出中嵌入一个信号:人读不出来,文本照常通顺,但用算法从一小段词元(token)里就能检测到[1]。它追求的不是把内容藏起来,而是给文本留下一个可以核验的统计指纹。

怎么工作

Kirchenbauer 等人提出的方案作用在生成阶段。在生成一个词之前,先随机选出一组「绿色词元」,然后在采样(sampling)时轻微地偏向这些绿色词元——是「软」的推动,不是硬性指定[1]。因为只是抬高一点概率,当某个非绿色词明显更合适时,模型仍然会选它,句子读起来依旧自然。

举个直观的例子:假设模型正在写一句话,此刻的绿色集合里恰好有几个合理的候选词,采样器就把它们的概率稍微调高,于是写出来的句子里绿色词出现的次数会比纯靠随机多一些。单独一个绿色词什么也说明不了;但积累到几十个词元,「绿色偏多」这个偏差就会在统计上显现出来。

检测使用一个高效的开源算法,不需要访问语言模型的 API,也不需要它的参数[1]。也就是说,检测方不必是模型的所有者,也不必去查询这项服务。作者提出了一个统计检验,给出可解释的 p 值(p-value),并推导了一个信息论框架来分析这套方案的灵敏度——需要多少文本、判断能有多可靠[1]。这里的 p 值可以理解成回答这样一个问题:假如这段文字没有被标记,出现这么多绿色词的可能性有多小。

从哪来

这套框架由 Kirchenbauer 等人在 2023 年 1 月提出,面向专有(proprietary)语言模型[1]。动机很直接:把模型放在 API 后面提供服务的厂商,很难证明某段文字确实出自自己的系统。水印给这样的提供方一个办法——先把输出标记上,之后再核验。

作者在一个来自 Open Pretrained Transformer 系列、参数量达到数十亿的模型上测试了方法,报告说水印可以在对文本质量影响可忽略的情况下嵌入[1]。这个权衡是这类方案的核心问题:痕迹重到影响写作就不可用,轻到检测不出来也没有意义。

局限

论文也讨论了鲁棒性与安全性:如果水印能被改写(paraphrasing)或编辑去掉,它能提供的来源保证就更弱[1]。原因是结构性的——印记存在于一个个词元的取舍里,任何重写这些取舍的过程,比如换一种说法、大改一遍、让文本再经过另一个模型,都会冲淡检测器要找的那个偏差。

还有一层更普遍的统计限制。检验给出的是置信程度,不是证明:文本越短,判断越不稳定,结论也只和检验背后的假设一样可靠。另外,检测虽然不需要模型本身,却仍要依照同一套标记规则来复现绿色集合,否则绿色词的比例无从比较[1]。

为什么重要

对任何想弄清一段文字出处的人来说,水印把一个没法回答的问题变成了可以测量的问题。它既不是作者身份的证明,也不是绝对的溯源;它是一个带有明确置信度的统计信号,同时有一个已知的弱点——改写。

注释与来源

  1. A Watermark for Large Language Modelshttps://arxiv.org/abs/2301.10226

引用本页: 文本水印(Watermarking). TellWorld, https://www.tellworld.net/zh/learn/watermarking. 更新于 2026-11-07