wanshuiyin/Anti-Autoresearch
GitHub: wanshuiyin/Anti-Autoresearch
面向机器生成学术论文的审稿侧完整性取证工具,通过确定性规则引擎检测论文内部的数据矛盾、引用幻觉和实验造假等 27 种 hack-pattern。
Stars: 1 | Forks: 0
# Anti-Autoresearch 🛡️
[](https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep/stargazers) · [](https://arxiv.org/abs/2605.03042) · [](https://huggingface.co/papers/2605.03042) · [](https://mp.weixin.qq.com/s/tDniVryVGjDkkkWl-5sTkQ) · [](https://github.com/VoltAgent/awesome-agent-skills) · [](LICENSE) · [](README_CN.md)
**针对研究论文的实质性完整性取证 —— 尤其是机器生成的**
**(autoresearch / AI-Scientist 式)输出。**
自动研究已大行其道,提交至审稿堆中的机器生成内容比例正快速增长——而其中很大一部分**站不住脚**:表格与正文不符,缺失基线对比,开源代码无法复现其自身论文的结论。审稿人、领域主席和诚实的作者越来越需要**验证**这些,而不仅仅是怀疑。这正是本仓库致力于填补的空白。
**这并非假想。** 摘自 NeurIPS 2026 周期一位公开审稿人账号的内容(仅作说明用,非引用),其中有一批问题几乎与本仓库编码的分类法一一对应:
第四个案例用一句话概括了本仓库的立论:**表面的精美绝不等同于内容的诚实。**
## 🔒 如何保持公正(防范“LLM-slop”的设计)
对于此类工具,最直接的质疑就是:“*让 LLM 给另一个 LLM 写的论文打分纯粹是噪音。*” 我们有三个结构性的防御措施,而不仅仅是一句免责声明:
1. **证据账本。** 一次确定性的扫描会将论文转换为 `claims.json` ——带有锚定文本范围和哈希值的声明。每一条发现(finding)都必须引用一个 `claim_id` 和逐字对应的文本范围。**没有锚定范围 -> 绝对不能成为高严重性级别的发现。**
2. **LLM 绝不打分。** 审计员(Auditor)仅*提议*发现;**确定性裁决器**(`tools/adjudicate_findings.py`,纯规则驱动)负责给出定论。相同的发现 -> 必然得出相同的定论,最终决策中完全排除了模型的参与。
3. **可观测性级别。** 每次运行都会声明其所能观测到的范围(L0 仅有 PDF -> L2 包含仓库代码+结果);在仅有 PDF 的运行中,需要代码验证的发现会被**自动降级**。你永远不能仅凭一份 PDF 就断言“造假”。详见 [references/observability-levels.md](references/observability-levels.md)。
**外观 / AI 风格信号设有独立的防火墙。** AI 风格的行文、重复的表格、LLM 生成的图表和注水页数只会作为*高假阳性背景信息*上报:裁决器将 `presentation-signals` 以及分类法 F 中的每一个 `pattern_id` 硬性限制在 `minor` 级别,因此它们最多只能达到 `SOFT_FLAGS` ——绝不会成为判定学术不端的定论。这种限制是直接在代码中强制执行的(位于 `tools/adjudicate_findings.py` 中的 `SURFACE_ONLY_SKILLS`),而不仅仅是口头承诺。
此外,**评估工具**(`eval/`)会在每次变更时,在干净的 + 合成人造错误的测试夹具上证明确定性核心的有效性——衡量的是假阳性率/召回率,而不是主观感觉。
## 🏗️ 架构
```
input (pdf | pdf+latex | pdf+repo+results)
│
▼ [evidence-ledger] artifact_manifest.json (+ observability level) + claims.json ← deterministic
│
▼ fan out auditors (each reads the ledger, emits span-anchored findings):
consistency-audit flagship · paper vs itself · ARIS paper-claim-audit
citation-forensics exists? correct? right context? · ARIS citation-audit
baseline-comparison-audit missing/weak/mistuned baselines · ARIS paper-claim-audit
experiment-forensics L2: fake GT / self-norm / phantom · ARIS experiment-audit
presentation-signals surface/AI-flavor · auxiliary, capped at minor
adversarial-case-builder evidence-bound memo, no verdict · ARIS kill-argument
│
▼ [adjudicate_findings.py] rules, not a model → REPORT.md + report.json ← deterministic
```
| 路径 | 用途 |
|------|------|
| `skills/` | 七个审计员技能(由 LLM 提议发现,文本范围锚定) |
| `workflows/anti-autoresearch/` | 端到端编排器 |
| `tools/` | 确定性核心骨架:manifest/可观测性推导 · 账本构建器 · 数值检查 · 裁决器 |
| `schemas/` | JSON 契约:claims · finding · report · artifact manifest |
| `references/` | hack-pattern 分类法(核心贡献)· 可观测性级别 · 审稿人独立性 · 取证契约 |
| `eval/` | 干净的 + 合成人造错误的测试夹具,以及回归测试工具 |
| `tests/` | 裁决器的门禁单元测试(防范 LLM 垃圾输出的不变量) |
| `docs/` | 相对于现有工作的定位 · 局限性 |
## ⚠️ 诚实的局限性
- **取证 ≠ 学术不端的实锤。** 输出结果仅为*提供给人类审查的红旗*,绝非指控。
- **仅 PDF(L0)只能捕捉不一致性和表面特征,无法发现所有造假**——它无法验证外部真实情况或运行代码。
- **确实存在假阳性**(合理的整数凑整、单随机种子的初步实验、刻意确定的范围选择)。因此我们设置了分级、FP 风险标签以及评估测试工具——而不是简单的二元“有罪”判定。
- **本分类法是一个不断完善的文档。** 了解这些信号的恶意行为者可能会绕过它们;这是一张安全网,而非绝对的保证。详见 [docs/limitations.md](docs/limitations.md)。
## 🧬 出处:衍生自 ARIS
[**ARIS — Auto Research in Sleep**](https://github.com/wanshuiyin/Auto-claude-code-research-in-sleep)
是一个 AI 研究 Agent 技能平台,能够运行端到端的研究流水线
(文献 -> 想法 -> 实验 -> 论文)——并且**内置了完整性护栏**,这正是它能够成为该审计工具可靠基础的原因:
- 🛡️ **三层审计堆栈**确保了 ARIS *自身*输出的诚实性:
`experiment-audit`(伪造的真实值/分数归一化/虚假结果)、
`result-to-claim`(该主张是否有科学依据?),以及零上下文的
`paper-claim-audit` + `citation-audit`(报告的数据和引用的文献是否站得住脚?)。Anti-Autore 正是将这些同样的审计机制**向外**指代。
- 🔬 **跨模型对抗性审查**是核心准则:执行者和审稿人必须来自不同的模型家族,因此没有任何 LLM 会评判自己的输出。
Anti-Autoresearch 继承了这一点*并*将其强化——在这里,模型仅仅负责**提议**
发现;由确定性的裁决器做出决定。
**同一枚硬币的两面。** ARIS 展示了如何*负责任地*进行自动研究;
而 Anti-Autoresearch 则致力于标记那些不负责任的自动研究。一个公开发布自身审计堆栈的生成器清楚地知道这些流水线会在哪里出问题——因为它正是从内部设计防范这些失败的。这就是本仓库带来的独特视角。
**技能映射关系** —— Anti-Autoresearch 的技能是 ARIS 审计技能的复制与重构,专为**第三方审计未知提交内容**而设计,而非让作者检查自己的工作:`consistency-audit` <- `paper-claim-audit`、
`experiment-forensics` <- `experiment-audit`、`citation-forensics` <- `citation-audit`、
`baseline-comparison-audit` <- `paper-claim-audit`、`adversarial-case-builder` <-
`kill-argument`,外加全新的 `evidence-ledger` 核心骨架和 `presentation-signals`。
## 📖 引用
Anti-Autoresearch **衍生自 ARIS** 并重用了其审计 DNA。如果本
仓库对您的研究 / 论文 / 审稿有所帮助,请引用 ARIS 的方法学
论文:
```
@article{yang2026aris,
title={ARIS: Autonomous Research via Adversarial Multi-Agent Collaboration},
author={Yang, Ruofeng and Li, Yongcan and Li, Shuai},
journal={arXiv preprint arXiv:2605.03042},
year={2026}
}
```
## ⚖️ 许可证
MIT —— 详见 [LICENSE](LICENSE)。
学术界容忍不可靠的自动研究已经太久了——
Anti-Autoresearch 是最终能揪出它的利器。
……完整列出的另外 17 个(涵盖所有 6 大类)
**A · 数值自洽性** - `HP-AGG-DRIFT` — 论文宣称是“跨随机种子的平均值”,但实际数据却用了表现最好的种子。 - `HP-DENOM-DRIFT` — 某张表格对所有任务取平均;结论中却悄悄只使用了适用子集的数据。 - `HP-UNIT-DIR-MISMATCH` — 点数悄悄变成了百分比,或者把“越低越好”的指标当成“越高越好”来大肆宣扬。 - `HP-CAPTION-MISMATCH` — 图注声称 N=5 且为方法 B;但图表显示两者皆非。 - `HP-APPENDIX-CONTRA` — 附录重跑了同一个指标,但结果却与正文矛盾。 **B · 方法与范围** - `HP-ABLATION-ATTRIB` — 论文将效果归功于组件 X,但所有的消融实验都将 X 与 Y 捆绑在一起。 - `HP-THEOREM-SCOPE-DRIFT` — 摘要兜售一个普适性定理;但实际上几乎全是由假设条件在起作用。 **C · 基线完整性** - `HP-WEAK-BASELINE` — 新方法获得了充分的调参和计算资源,而基线模型显然没有。 - `HP-SIG-OVERLAP` — 仅以微弱优势“超越”,且带有重叠的误差条或未展示随机种子。 **D · 实验完整性**(需要代码/结果 — L2) - `HP-SELF-NORM` — (L2) 得分接近 1.0 是因为除以了模型自身输出的最大值。 - `HP-DEAD-METRIC` — (L2) 存在一个没有被任何地方调用且没有产出结果的 metric 函数,却被拿来讨论。 **E · 引用完整性** - `HP-CITE-CONTEXT` — 真实存在的论文,却张冠李戴:引用它来支持一个它明确表示不涉及的主张。 **F · 外观与表层信号**(上限设为 `minor` —— 绝不作为定论) - `HP-THIN-FLOAT` — 一项“广泛的实证研究”不知为何只有两个表格和一张孤零零的图表。 - `HP-LLM-FIGURE` — 所谓的“图表”只是模型生成的装饰性图片,而非真正的数据图或示意图。 - `HP-PAGE-PADDING` — 超大尺寸的浮动图表、重复的文本或空洞的文字只是在凑页数。 - `HP-JARGON-STUFF` — 堆砌密集的专业术语,而周围的论证却几乎毫无实质内容。 - `HP-AI-FLAVOR` — 套话过渡句和千篇一律的段落节奏;这只能作为背景参考,而非证据。标签:AI生成检测, Claude Code技能, Homebrew安装, 内容伪造检测, 学术审查, 学术诚信, 自动化科研, 质量保证, 逆向工具