欢迎光临
我们一直在努力

GitHub 6.8k Star:watermarks-remover,一条命令清理AI文本里的隐形字符和图片的溯源信息

从零部署完整教程 · 新手照着做就能跑起来 · 效率工具指南 · 原创教程

watermarks-remover 部署教程:AI 溯源标记清理工具 Python 零依赖使用详解

摘要:watermarks-remover 是 GitHub 6.8k Star 的 AI 溯源标记清理工具,纯 Python 标准库实现、零第三方依赖。本文记录 Windows 从克隆到使用的完整过程,包含文本隐形 Unicode、图片 C2PA/EXIF 元数据清理和真实验证结果,适合关注隐私的开发者与内容创作者。


watermarks-remover 用于清理你自己拥有或有权处理的内容中的 AI 溯源标记——隐形 Unicode 字符、统计型文本水印、以及文件的 C2PA/EXIF/XMP 元数据。它是命令行脚本 + AI 智能体 Skill,没有图形界面。

⚠️ 用途边界:用于隐私、工程卫生、研究;不是规避 AI 披露规则、把 AI 内容伪装成人工的工具。清掉标记 ≠ 内容从未 AI 辅助。

本文要点

  • 纯 Python 3.10+ 标准库,零第三方依赖,clone 即用;
  • 覆盖文本隐形字符 + 图片/文档 C2PA/EXIF 元数据;
  • 两种用法:命令行脚本 + AI 智能体 Skill;
  • 本文含 Windows 部署全流程 + 真实验证结果 + 常见问题。

一、GitHub 项目数据

项目数据
Star 6.8k
主要语言 Python
技术栈 Python 3.10+ 标准库(核心零依赖)
最新版本 v0.4.0
许可证 MIT

二、它能解决什么问题

层处理什么怎么处理
Layer A 隐形 Unicode(零宽字符、特殊空格、bidi、tag 字符) 确定性 Python 脚本
Layer B 统计型(token 采样)文本水印 rewrite_text.py 重写(可选接 Ollama)
Files C2PA / EXIF / XMP / 文档属性 PNG、JPEG、SVG、PDF、DOCX、ODT、HTML、MD

三、环境准备

软件要求说明
Python ≥3.10 核心脚本只用标准库,实测 3.12.10
git 任意 clone 源码用
c2patool(可选) 任意 检查 C2PA 清单
exiftool(可选) 任意 残余元数据剥离(尤其 PDF)

核心功能不需要 pip install 任何东西——连图像元数据处理都是用 struct/zlib 手工解析的,不用 Pillow。

四、部署步骤(两条路径)

路径 1:git clone + 直接运行(核心,最简单,实测走通)

git clone –depth 1 https://github.com/guillaumemeyer/watermarks-remover.git
cd watermarks-remover

脚本在 skills/remove-ai-marks/scripts/ 目录,直接运行:

SCRIPTS=skills/remove-ai-marks/scripts
python "$SCRIPTS/inspect_text.py" 文件.md # 检查文本隐形字符
python "$SCRIPTS/clean_text.py" 文件.md -o 清理后.md # 清理文本
python "$SCRIPTS/inspect_file.py" 文件.png # 统一检查(文本/图像/容器)
python "$SCRIPTS/clean_file.py" 文件.png -o 清理后.png # 统一清理

Windows 下 git clone 直连 GitHub 通常能通;打不开时可用国内镜像(gitcode gh_mirrors/ 或 ghfast.top 加速)。

路径 2:Agent Skill 安装(给 AI 智能体用)

mkdir -p .grok/skills
ln -sfn "$(pwd)/skills/remove-ai-marks" .grok/skills/remove-ai-marks

装好后对 AI 说「清理这份文档的 AI 水印 / C2PA 元数据」即可。Windows 下 ln -sfn 可用 git bash 执行,或直接手动复制目录。

💡 可选进阶:像素级水印(SynthID 评分、CtrlRegen 去除)需额外 clone 第三方项目 + 装 torch,体积大且 CtrlRegen 后端无 LICENSE。核心功能用不到,想进阶再按 README 的 setup_synthid.sh / setup_ctrlregen.sh 引导。

五、怎么用(场景化)

场景 1:清理 AI 文本的隐形 Unicode —— 零宽字符粘贴到代码/文档里会出诡异问题:

python "$SCRIPTS/clean_text.py" draft.md -o draft.cleaned.md –stats

场景 2:清理图片的 C2PA、EXIF 元数据 —— 发布前剥离拍摄设备、软件、AI 溯源信息:

python "$SCRIPTS/inspect_image.py" shot.png
python "$SCRIPTS/clean_image.py" shot.png -o shot.cleaned.png

场景 3:清理 PDF / DOCX 的文档属性 —— 移除作者、软件、公司等属性:

python "$SCRIPTS/clean_file.py" notes.docx -o notes.cleaned.docx

场景 4:审计目录 / 网站 —— 批量检查哪些文件带 AI 溯源标记:

python "$SCRIPTS/audit_dir.py" 目录
python "$SCRIPTS/audit_website.py" 网站sitemap.xml

场景 5:让 AI 帮你清理 —— 装成 Skill 后,直接对 AI 说「把这份文档的 AI 水印清掉」。

六、踩坑记录(实测)

坑 1:Windows 控制台打印隐形字符报 GBK 编码错误

现象:自己写脚本 print() 含零宽字符的字符串时,报 UnicodeEncodeError: 'gbk' codec。

原因:Windows 中文控制台默认 GBK 编码,无法编码 U+200B 等字符。

解决:工具本身的 –stats/–json 输出是 JSON,不受影响;自己写测试脚本时加 export PYTHONIOENCODING=utf-8。

坑 2:可选像素功能依赖 torch,体积大且下载慢

现象:想用 SynthID 评分 / CtrlRegen 像素去除,发现要装 torch/diffusers,体积几个 GB。

原因:像素级功能需要深度学习框架,且 CtrlRegen 后端无 LICENSE(视为 all-rights-reserved)。

解决:核心功能完全不需要它们,跳过即可;需要像素级去除再按 README 的 setup 脚本引导。

七、功能验证(真实输出)

构造含隐形字符(U+200B 零宽空格、U+2060 词连接符)的测试文本,检测:

Suspicious: 2
Hits:
[zwj_family/probable] U+200B ZERO WIDTH SPACE (Cf) x1 @ [8]
[zwj_family/probable] U+2060 WORD JOINER (Cf) x1 @ [22]

清理后:

{
"input_length": 24,
"output_length": 22,
"removed": {"U+200B ZERO WIDTH SPACE (Cf)": 1, "U+2060 WORD JOINER (Cf)": 1},
"removed_count": 2
}

清理后再次检测 Suspicious: 0,隐形字符全部移除。另验证:图像脚本零依赖(只用 struct/zlib,不用 Pillow)、clean_file.py 正常处理 Markdown、ZWJ/ZWNJ 等「承重隐形字符」默认保留不误删。

八、常见问题

Q1:是 UI 软件还是浏览器插件?

都不是,是「命令行脚本 + AI 智能体 Skill」,没有图形界面。

Q2:核心功能真的不用装任何依赖吗?

是的,只用 Python 标准库(struct、zlib 等),连图像都不用 Pillow。

Q3:清掉水印后,别人就查不出是 AI 写的了吗?

不能这样理解。它清的是「确定性」的隐形 Unicode 和元数据;统计型文本水印、SynthID 像素信号等「软绑定」信号可能残留。清掉标记 ≠ 从未 AI 辅助,请诚实使用。

九、总结

watermarks-remover 部署极简、定位清晰:Python 零依赖、clone 即用,一个脚本搞定文本隐形字符 + 文件元数据的检测与清理。处理 AI 生成内容、协作文档或关心隐私,值得一试。

完整命令速查

# 1. 克隆仓库
git clone –depth 1 https://github.com/guillaumemeyer/watermarks-remover.git
cd watermarks-remover
# 2. 脚本目录
SCRIPTS=skills/remove-ai-marks/scripts
# 3. 文本:检测 + 清理
python "$SCRIPTS/inspect_text.py" 文件.md
python "$SCRIPTS/clean_text.py" 文件.md -o 清理后.md –stats
# 4. 图片:检测 + 清理
python "$SCRIPTS/inspect_image.py" shot.png
python "$SCRIPTS/clean_image.py" shot.png -o shot.cleaned.png
# 5. 统一处理(文本/图像/容器)
python "$SCRIPTS/inspect_file.py" 文件
python "$SCRIPTS/clean_file.py" 文件 -o 清理后文件
# 6. 批量审计
python "$SCRIPTS/audit_dir.py" 目录

项目地址:[guillaumemeyer/watermarks-remover (https://github.com/guillaumemeyer/watermarks-remover)

标签:watermarks-remover、AI水印、Python、C2PA、隐私、源码部署

赞(0)
未经允许不得转载:171主机测评 » GitHub 6.8k Star:watermarks-remover,一条命令清理AI文本里的隐形字符和图片的溯源信息
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址