Skip to content

BeiZi6/anti-aigc-zh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Anti-AIGC-ZH

基于八种主流 AIGC 检测算法原理的中文学术文本与图像反制工具

Claude Code Skill Version License Language

这是什么?

Anti-AIGC-ZH 是一个 Claude Code Skill,专为中文学术写作场景设计。它不是简单的"换词降重"工具,而是从 AIGC 检测算法的底层原理出发,通过反向工程实现精准反制。

核心理念:理解检测原理,才能有效反制。

适用场景

  • 毕业论文(本科/硕士/博士)的 AIGC 检测预处理
  • 学术期刊投稿前的 AI 痕迹清理
  • 论文图像(流程图、示意图等)的 AI 元数据清除
  • CNKI、维普、万方等国内检测平台的针对性优化

功能特性

文本反制:五层策略体系

本工具同时应用五层改写策略,从 token 级到篇章级全维度覆盖:

第一层:打破概率最优性(反 DetectGPT)

DetectGPT 通过检测文本在 log-probability 空间的曲率来判断 AI 生成。AI 文本倾向于选择概率最高的 token,词汇选择过于"最优"。

反制策略:系统性同义词替换,优先选用非高频词,插入学科特定术语,使用非典型但合理的句式。

"采用/使用" → "运用/选用/借助"
"基于"     → "鉴于/立足于/依托"
"通过"     → "经由/借助/依靠/凭借"
"实现"     → "达成/完成/得以实现"
"表明"     → "显示/揭示/印证"

第二层:制造困惑度波动(反 Binoculars)

Binoculars 用双模型交叉困惑度检测,AI 文本的信息密度分布过于均匀平滑。

反制策略:长短句交替,段内信息密度波动,句式复杂度变化,连接词不规律使用。

量化指标

  • 句长方差 > 5(避免 AI 式均匀句长)
  • 每 300 字至少 1 次非常规语序
  • 每 1000 字至少 10 种不同连接词
  • 同一修饰词在 500 字内不重复超过 2 次

第三层:破坏 Token 序列模式(反 SynthID)

SynthID 在生成时嵌入统计水印。只要 token 替换率超过 30-40%,水印信号就会被有效破坏。

反制策略:重组句子结构,替换核心动词和连接词,消除 AI 高频词汇黑名单。

AI 高频词汇黑名单(部分):

此外、值得一提的是、值得注意的是、不言而喻、毋庸置疑、显而易见、 综上所述、总而言之、旨在、致力于、赋能、助力、深入探讨、全面分析

第四层:词频与节奏控制(反统计指纹)

反制策略:控制核心概念词频率,句首词汇多样化,修饰词密度调节,主被动语态比例控制在 20%-30%。

第五层:篇章级人格化(反分类器 + 反重写距离 + 反连贯性检测)

国内平台(知网、维普、万方)普遍使用微调 BERT/RoBERTa 分类器,学到的特征远超 token 级困惑度,还包括段落展开模式、论证深度分布等篇章级特征。Raidar 方法利用 LLM 重写后的编辑距离判断——AI 文本处于模型"不动点"附近,重写后变化极小。

反制策略(三个维度同时作用):

维度 A — 段落结构多样化(反分类器):

  • 连续 5 段至少 3 种展开模式(总分总、例证先行、反驳式、递进式、悬念式)
  • 论证深度不均匀,段落长度方差 > 30%
  • 学术立场鲜明化,约 30% 的论述使用强判断

维度 B — 引入人类噪声(反重写距离):

  • 每 1000 字 3-5 处学科黑话/个人化表述
  • 非对称并列结构、长句嵌入插入语
  • ≥ 40% 的引用使用非标准整合格式

维度 C — 全局论证弧线设计(反连贯性检测):

  • 引入论证张力和回溯,结论留开放性问题
  • 相邻段落信息密度差 > 20%
  • 20-30% 的段落过渡使用"硬切"而非"软过渡"

图像反制:两层防护

反 C2PA:清除来源元数据

C2PA 元数据记录了图像的 AI 生成来源,嵌入在 EXIF/XMP 区域。

# 方法一:使用 exiftool 清除
exiftool -all= image.png

# 方法二:Python PIL 重新保存
from PIL import Image
img = Image.open('input.png')
img.save('output.png')

反 Sentry-Image:扰乱统计特征

AI 图像的统计指纹存在于像素级模式中,通过后处理可有效扰乱:

from PIL import Image
import numpy as np

img = Image.open('ai_generated.png')
w, h = img.size

# 1. 轻微缩放
img = img.resize((int(w*0.98), int(h*0.98)), Image.LANCZOS)
img = img.resize((w, h), Image.LANCZOS)

# 2. 微量高斯噪声(肉眼不可见)
arr = np.array(img).astype(np.float32)
noise = np.random.normal(0, 2, arr.shape)
arr = np.clip(arr + noise, 0, 255).astype(np.uint8)
img = Image.fromarray(arr)

# 3. JPEG 压缩再转回(破坏频域特征)
img.save('temp.jpg', quality=88)
img = Image.open('temp.jpg')

# 4. 输出(自动清除 EXIF)
img.save('output.png')

工作流程

三段式输出结构

每次改写都输出完整的三部分报告:

┌─────────────────────────────────────┐
│  1. AIGC 风险分析                    │
│     逐段扫描,标注风险等级和问题      │
├─────────────────────────────────────┤
│  2. 改写结果                         │
│     四层策略同时作用,输出完整文本     │
├─────────────────────────────────────┤
│  3. 自检报告                         │
│     token 替换率、句长方差、          │
│     黑名单命中、技术准确性确认        │
└─────────────────────────────────────┘

三种使用场景

场景 输入 处理方式
文本改写 学术文本段落 四层策略改写 + 自检报告
图像处理 论文图像 C2PA 清除 + 统计特征扰乱
全文审查 完整论文 分段风险评估 + 分批改写

附带工具:Chunked File Writer

论文改写的输出通常很长(动辄数千字),容易触发 Claude Code 的单次输出 token 上限,导致改写结果被静默截断——文件看起来写入成功了,但实际只有开头部分。

本仓库附带 chunked-file-writer Skill,专门解决这个问题:

它解决什么问题?

问题 症状 原因
改写结果被截断 文件只有开头几段,后面的段落消失 单次 Write 超出 token 上限
重试无效 多次重试结果完全相同 始终在同一位置截断
公式丢失 LaTeX 公式密集的段落更容易截断 公式 token 密度是纯文本的 2-3 倍

工作原理

需要写入文件
    │
    ▼
估算内容 token 量
    │
    ├─ < 2000 tokens ──→ 直接 Write
    │
    ├─ 2000-4000 tokens ──→ 分批写入(Write + Edit 追加)
    │
    └─ > 4000 tokens ──→ 优先 Agent 子进程

Token 估算参考

  • 中文文本:约 1.5 token/字
  • LaTeX 公式:约 3-5 token/字符(比纯文本高 2-3 倍)
  • 表格、代码块:约 2 token/字符

关键规则

  1. 写入前估算:根据内容量选择写入策略
  2. 禁止无效重试:同一个截断的 Write 最多重试 1 次,然后切换策略
  3. 写入后验证:检查文件大小和末尾内容,确认完整性

安装

前置要求

安装步骤

# 安装主 Skill:Anti-AIGC-ZH
mkdir -p ~/.claude/skills/anti-aigc-zh
cp SKILL.md ~/.claude/skills/anti-aigc-zh/SKILL.md

# 安装附带 Skill:Chunked File Writer(推荐)
mkdir -p ~/.claude/skills/chunked-file-writer
cp skills/chunked-file-writer/SKILL.md ~/.claude/skills/chunked-file-writer/SKILL.md

安装后,在 Claude Code 中使用 /anti-aigc-zh 即可调用改写功能。chunked-file-writer 会在长文本写入时自动触发,无需手动调用。

使用示例

示例 1:文本改写

在 Claude Code 中输入:

/anti-aigc-zh

请改写以下段落:

本文采用深度学习方法,基于 Transformer 架构,通过大规模预训练实现了
文本分类任务的显著性能提升。此外,实验结果表明,该方法在多个基准数据
集上均取得了优异表现。值得注意的是,与传统方法相比,本文提出的模型具
有更强的泛化能力。

示例 2:图像处理

/anti-aigc-zh

这张流程图是用 AI 生成的,请帮我处理一下,确保通过检测。

示例 3:全文审查

/anti-aigc-zh

请审查我的毕业论文,标注所有高风险段落。

[粘贴论文全文]

绝对约束

改写过程中严格遵守以下规则:

  1. 技术术语、公式、数学符号、引用标记、参考文献编号 100% 原样保留
  2. 代码片段、算法伪代码、路径名 100% 原样保留
  3. 核心逻辑链和因果关系 不变
  4. 改写后字数与原文偏差 不超过 ±15%
  5. 保持学术严谨性,不引入口语化表达
  6. 不添加原文没有的信息,不删除原文的关键论点
  7. 图像处理不得改变图表中的数据内容和标注信息

检测算法原理速查

算法 检测原理 核心弱点 反制层
DetectGPT 困惑度曲率检测 词汇选择过于"概率最优" 第一层
Binoculars 双模型交叉困惑度 信息密度分布过于均匀 第二层
SynthID Token 概率水印 水印依赖原始 token 序列 第三层
微调分类器 BERT/RoBERTa 深度特征分类 对篇章级改写鲁棒性差 第五层 A
Raidar LLM 重写距离检测 人类噪声增大重写距离 第五层 B
篇章连贯性 全局论证弧线分析 依赖 AI 的"过度完美"特征 第五层 C
C2PA 图像元数据认证 元数据存储在 EXIF/XMP 图像层
Sentry-Image 图像统计特征 依赖像素级统计模式 图像层

与类似工具的区别

特性 Anti-AIGC-ZH 传统降重工具 通用改写工具
基于检测算法原理 ✅ 8 种
多层策略同时作用 ✅ 五层 ❌ 单层
图像反制
量化自检报告
学术约束保护 部分
中文优化 部分

项目结构

anti-aigc-zh/
├── SKILL.md                              # 主 Skill:AIGC 反制改写
├── skills/
│   └── chunked-file-writer/
│       └── SKILL.md                      # 附带 Skill:大文件安全写入
├── README.md
└── LICENSE

注意事项

  • 本工具针对中文学术文本优化,英文场景策略有差异
  • 单次改写建议不超过 3000 字,超长文本建议分段处理
  • 包含大量公式推导的段落,重点改写文字描述,公式保持原样
  • 可指定目标检测平台(CNKI、维普、万方、Turnitin)进行针对性调整
  • 改写结果保存为文件时,强烈建议同时安装 chunked-file-writer,避免长文本截断

技术栈

  • 运行环境Claude Code CLI
  • 图像处理:Python PIL/Pillow + NumPy
  • 元数据清除:exiftool / PIL

许可证

MIT License

贡献

欢迎提交 Issue 和 Pull Request。

如果你有以下方面的建议,特别欢迎:

  • 新的检测算法反制策略
  • 更多的 AI 高频词汇黑名单补充
  • 针对特定检测平台的优化方案
  • 使用案例和效果反馈

About

基于五种主流 AIGC 检测算法原理的中文学术文本与图像反制工具 | Claude Code Skill

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors