Claude Gemini水印能清?开源去水印工具刷屏24小时


这个开源水印去除器现在除了支持 Claude 水印外,还支持 OpenAI 和 Gemini 水印。

watermarks-remover 是一个用于去除多种 AI 生成内容水印的开源 Python 工具。它主要面向内容创作者,旨在帮助他们清理自己拥有所有权的文本和文件,以保护隐私。

项目在 GitHub 上非常活跃,目前已获得 1700+ Star,并发布了 v0.3.1 版本。

主要特点

  • 多供应商支持:能处理来自 Claude、Gemini/SynthID、OpenAI 以及 开源LLM 等多种模型的水印。
  • 灵活使用:既可以作为 Grok 平台的技能(Agent skill) 调用,也可以作为独立的 Python 命令行脚本运行。
  • 轻量级设计:核心脚本仅依赖 Python 3.10+ 标准库。B层的AI改写功能为可选,可按需启用。
  • 可选的扩展能力:支持通过外部工具(如 c2patool, exiftool)进行更深入的元数据清理。此外,还可以集成外部的 reverse-SynthID 项目,对图片进行 SynthID 像素水印的检测评分。

重要须知与局限性

  • 适用范围:此工具旨在处理用户自己拥有所有权的内容。使用前请务必考虑相关伦理和法律问题。
  • 明确局限:
    • 无法去除所有水印:项目明确表示,像素级的图片水印和 C2PA 的软绑定(即与远程服务器关联的水印)不在其处理范围内。
    • 无法保证100%成功:对于基于统计的B层水印,项目只能“尽力而为”,无法保证能骗过官方的检测器。同时,使用原始模型进行重写可能会重新印上水印。
    • 重写会改变文本:B层的重写操作会改变文本的原始措辞和风格,可能影响质量。
  • 许可证:项目采用 MIT 许可证,这是一个非常宽松的开源协议。
总的来说,watermarks-remover 是一个功能聚焦且设计精巧的工具,为有隐私保护需求的用户提供了处理AI内容水印的有效方案。


水印战争已经开打,但赢家可能不是你想的那边!

2026年8月,一个GitHub仓库上线不到24小时就收获近两千星标,只因它宣称能一键清除Claude、Gemini和OpenAI的AI生成水印。

2026年8月11日,GitHub上出现了一个名叫watermarks-remover的仓库。开发者Guillaume Meyer上传了一批Python脚本和一个Grok平台Agent技能,声称能剥离多厂商AI内容 provenance标记。第二天,这个项目就冲上了趋势榜,星标数逼近两千。评论区炸了锅。有人喊“legend”,有人说“not even 24 hours”,还有人直接问“how”。热闹归热闹,真正值得看的不是星标数,而是项目README里那几行被大多数人忽略的小字——那几行字,把整个故事的底牌全掀了。



一个工具拆成三层,每一层都有自己的小算盘

watermarks-remover把自己分成了三个作战单元。A层负责清理不可见Unicode字符,包括零宽空格、双向文本控制符、异形空格这些藏在文字缝隙里的编辑痕迹。B层负责攻击基于token采样的统计水印,手段是重写文本。文件层负责剥离C2PA、EXIF、XMP这些嵌在文件头里的元数据。三管齐下,覆盖了Claude、Gemini、SynthID-Text、OpenAI乃至开源LLM的Kirchenbauer风格水印。

但三层之间有个致命的质量落差。A层是确定性清除——零宽空格这种东西,找到了就删掉,删掉了就是删掉了,结果可验证。文件层也类似,C2PA manifest剥离后可以用c2patool验证。但B层呢?README写得明明白白:best-effort。基于文献中的 paraphrase和back-translation攻击手段,尽力重写,尽力破坏统计信号。尽力,不是确保。

这就像一个修锁匠说“我尽力撬开这把锁,但不保证能打开”。用户奔着“去除水印”四个字来的,结果发现有一半的活儿是“尽力而为”。

像素水印和软绑定,这两个硬骨头压根没啃

评论区里最热闹的讨论集中在同一个问题上:这东西到底能去什么水印,不能去什么水印。Meyer本人不得不在两天内连发多条推文澄清。原话是:“The repo explicitly says that it only removes the metadata from images and supported file formats for now. Removing steganography marks from various vendors MAY come later, but it is not available right now.”

翻译过来就是:图片只能去元数据,像素级的隐写水印还没做,以后可能做,现在没有。README里也白纸黑字写着:Pixel image marks out of scope。C2PA soft binding out of scope。

什么叫像素级水印?Google SynthID就是在图片像素里嵌入肉眼不可见的信号,裁剪、压缩、调色都洗不掉。什么叫软绑定?C2PA manifest剥离后,图片本身还藏着一个能重新链接到远程Content Credentials服务器的指纹。这两样东西,watermarks-remover碰都没碰。

更有意思的是v0.3.0版本加了一个功能:score_synthid.py。这个脚本调用外部项目reverse-SynthID,给图片做SynthID水印的检测评分。能检测,不能去除。这就像一个保安说“我能认出谁是小偷,但我抓不了人”。检测和去除之间的鸿沟,恰好暴露了技术难度的真实落差。

看不见的水印分两种,一种靠找一种靠猜

文本水印到底长什么样?Meyer在回复里概括了两种主流手法。第一种是编辑痕迹:零宽空格、异形空格、双向文本控制符、特殊标点。这些字符肉眼看不见,但机器一扫描就现形。第二种是统计信号:模型在生成每个token时,不是随机采样,而是被人为偏向了某个子集。整段文字看起来正常,但token的选择模式暴露了生成源。

前者像在纸上用隐形墨水写了名字,找到紫外线灯一照就显形。后者像一个人说话时总在句尾加“对吧”,你听不出来具体哪句有问题,但听多了就知道这是谁的风格。

A层对付前者:查字符表,匹配就删除。B层对付后者:把整段话重写一遍,换词、换句式、换连接词、换过渡语。v0.3.1版本还加了humanize强度选项,专门针对AI常见的公式化措辞下手。重写后token分布变了,统计信号就被冲散了。但问题是——重写后的文本还是原来的意思吗?换词换句式,语义保住了,风格没了。为了去水印而牺牲表达质量,这个 trade-off 不是所有人都愿意接。

没有官方检测器,谁都没法证明自己赢了

评论区有个问题被反复问起:“How would one test if this even works, given they don't tell you how they watermark?”不知道水印的具体嵌入算法,怎么验证去除效果?Meyer的回复很坦诚:“It will obviously need tests in the wild and a lot of work to adjust when Anthropic releases its detection tool. For now, it is based on published research papers on this topic.”

这话翻译过来就是:现在没有官方检测器,只能靠论文里公开的算法做对抗测试。等Anthropic哪天放出检测工具,才知道这玩意儿到底管不管用。README里也写了同样的大实话:“Until vendors ship public detectors and keys, no tool can honestly certify ‘this fails the official check.’”

这就引出了一个认知上的死循环:水印嵌入方不公开算法,水印去除方就只能猜。去除方猜完后说“我清掉了”,但没有官方检测器来验证。用户下载、运行、看到脚本输出“clean”,就以为万事大吉。可谁也不知道官方检测器出来那天,这些“干净”的文本会不会原形毕露。v0.3.1版本加了一个residual-risk reporting功能,区分短文本和高熵长文本的不同风险等级。但这个风险报告也只是提醒,不是保证。

欧盟法规才是真正的推手,不是技术

评论区有人问:“are all these frontier model companies already watermarking everything?”Meyer的回复一针见血:“Pretty much, and they will all do if they want to do business in the EU.”

欧盟AI法案第50条要求AI生成内容必须可被识别。想在欧洲做生意,就得给输出打水印。这不是技术选择,是合规门槛。Claude、Gemini、OpenAI都在做,不做就进不了欧盟市场。watermarks-remover这类工具的出现,本质上是对合规要求的反制。一方立法强制打水印,一方开发工具强制去水印。法律和技术在赛跑,而跑道上没有裁判。

更有意思的是评论区里一条被多次引用的警告:“given the EU law around it things definitely wouldn't end well.”开发去水印工具在欧盟境内可能面临法律风险。GitHub上代码随便下,但谁在欧盟境内运行这个脚本,谁就可能踩红线。技术中立挡不住属地管辖。

MIT协议敞开了大门,也敞开了争议

watermarks-remover采用MIT许可证。这意味着任何人都可以自由使用、修改、分发,甚至用于商业目的,只需保留版权声明。开源社区的标准操作,没什么特别。但MIT协议加上“去除水印”这个功能,组合起来就微妙了。

README的ethics.md里写了一段免责声明:“For privacy and research on your content — not academic fraud or false ‘human-written’ claims.”工具只用于清理自己拥有所有权的内容,不得用于学术造假或冒充人类写作。免责声明写归写,下载下来的人怎么用,没人管得了。MIT协议不限制使用场景,ethics.md只是一份道德倡议,没有强制力。

评论区里有人直接挑明:“Matter of time before they patch their sh!t.”水印算法会升级,去水印工具也会跟进。这像杀毒软件和病毒的攻防战,永远没有终点。但杀毒软件对抗的是恶意软件,而去水印工具对抗的是合法合规的AI provenance标记。法律站在水印那边,技术站在去水印这边,中间的灰色地带越来越宽。

一天两夜,一个仓库,一场还没打完的仗

从2026年8月11日上线到8月13日,watermarks-remover经历了发布、冲榜、争议、澄清、更新。Meyer本人在两天内发了多条推文反复说明工具的局限性。这种密集的自我澄清在开源项目里不常见,通常项目作者忙着宣传功能,很少有人追着用户说“我这个东西其实没那么厉害”。

但这种坦诚反而揭示了更深的困境。用户想要一个一键清除所有AI水印的魔法按钮。技术给出的答案是一个三层架构,其中一层是“尽力而为”,两层是“彻底有效但覆盖范围有限”,还有两个硬骨头直接标注“out of scope”。期望和现实之间的落差,靠星标数和转发量填不平。

水印技术在进化,去水印技术也在进化。但有一点是确定的:只要欧盟AI法案还在生效,只要AI公司还想在欧洲做生意,水印就会一直打下去。去水印工具可以一直跟,但永远跟在后面。这场仗没有终局,只有回合。



总结:watermarks-remover三天冲上GitHub热榜,但它的真实能力只覆盖元数据和可见字符。像素水印和软绑定没动,统计水印只能尽力。期望越高,落差越大。