我如何构建一个检测 AI 生成的虚假参考文献的工具

发布: (2026年1月6日 GMT+8 00:27)
10 min read
原文: Dev.to

Source: Dev.to

引言

LLM 已经成为日常学术和技术写作的一部分。
但学术界已经指出了一个问题已有一段时间
(Rolling Stone article): LLM 非常擅长捏造引用
它们看起来可信,几乎与真实论文相匹配,却自信地引用根本不存在的工作。学术界将这些捏造的引用称为 幽灵引用

用期刊编辑的震惊收尾我的一年 🧵

“今天检查新稿件时,我审阅了一篇论文,里面把两篇我没有写的论文归给了我。作者这么做当然很愚蠢。但我很好奇,于是搜索了其中一个标题,结果变得非常怪异……” — Ben Williamson (@benpatrickwill.bsky.social) (2025‑12‑19)

正如Ben Williamson 教授Aaron Tay所解释的,根本问题根深蒂固:

“幽灵引用问题是一种已经慢性化的疾病,现已急性化。
这种感染早于生成式 AI;技术只是降低了我们的免疫反应,同时加速了传播。”

问题更加严重,因为具备通用网络搜索能力的 LLM 可能无法可靠地验证引用——网络本身就包含假引用,形成了危险的反馈循环。即使这些来源是错误的,也常被视为真实;它们在已发表文献中出现得越多,可信度就越高。例如,针对 Williamson 教授工作的一个幽灵引用已经在 Google Scholar 中累计了43 次引用

解决审稿人的负担

同行评审人员本已工作繁忙,而现在——由于虚假引用的激增——他们必须 手动将每一条参考文献复制粘贴到搜索引擎中 以验证其是否真实存在
(Jan Laksar 的 LinkedIn 帖子)。

这是一项枯燥、回报低的工作,往往会被跳过,而转而关注论文的实际内容。由此产生的 “验证缺口” 正是幽灵引用得以潜入的地方。

当它发生在我身上

当我发现 我的论文在一篇已发表的文章中被错误引用 时,这种抽象的担忧变成了具体的问题
Lidian Y. C. S. 的 LinkedIn 帖子)。

在期刊中看到错误的元数据让我警醒,于是我创建了 CERCA,这是一款开源工具,旨在帮助研究者、审稿人和编辑快速核实参考文献的准确性。它的目标是提升学术写作的信任度、透明度和可靠性。

什么是 CERCA?

CERCA(Citation Extraction & Reference Checking Assistant,引用提取与参考文献检查助手)是一款轻量级的命令行工具,能够:

  1. 扫描 PDF 并提取参考文献列表。
  2. 查询可信的仓库(OpenAlex、Crossref、Zenodo)。
  3. 标记可能无效的引用,并给出置信度分数。
  4. 显示不匹配的元数据字段(作者姓名、标题、年份等)。

演示

Cerca checking a file

在几秒钟内,CERCA:

  • 从 PDF 中提取参考文献,
  • 查询 OpenAlex、Crossref 和 Zenodo,
  • 标记可疑的引用,
  • 高亮显示哪些元数据字段不匹配。

与手动复制粘贴每条参考文献相比,您只需几分钟即可获得一份可供审阅的验证报告。

Development Insights

构建 CERCA 需要解决一些有趣的工程挑战,尤其是围绕 模糊匹配书目解析 的问题。

1. 解析凌乱的引用

学术引用有数十种格式(APA、MLA、IEEE、ACM、Vancouver 等)。创建一个能够可靠提取参考文献且不产生误报的解析器是首个难点。我使用了 Cermine,这是一款能够处理 PDF 解析和元数据提取的 Java 库。

2. 验证逻辑

第二个挑战是判断 何时 引用是拼写错误还是幻觉。我实现了模糊匹配启发式算法,将提取的元数据与可信 API 返回的记录进行比对。该工具可以检测以下问题:

问题示例(虚假引用)
作者列表不匹配6 位捏造作者,遗漏 9 位
标题不完整标题被截断或更改
第一作者姓名不一致拼写错误或错误的第一作者

示例

Cerqueira, M.; Tavares, A.; Couto, C.; Maciel, R.; Santos, D.; Figueira, A.
"Assessing software practitioners' work engagement and job satisfaction."

CERCA 检测到:

⚠️ 作者列表不匹配(6 位捏造,9 位遗漏)
⚠️ 标题不完整
⚠️ 第一作者姓名不一致

正确的参考文献:

Cerqueira, L., Nunes, L., Guerra, R., … & Mendonça, M. (2025). Assessing Software Practitioners’ Work Engagement and Job Satisfaction in a Large Software Company—What We Have Learned. SN Computer Science, 6(3), 273.

3. 可信来源

CERCA 查询 OpenAlexCrossrefZenodo——这些仓库提供 DOI 级别的元数据,较少出现“假引用”问题。该工具会聚合结果,计算置信度分数,并呈现简洁报告。

入门指南

# Clone the repository
git clone https://github.com/lidianycs/cerca.git
cd cerca

# Install dependencies (requires Python 3.9+)
pip install -r requirements.txt

# Run CERCA on a PDF
cerca check path/to/your-paper.pdf

输出为一个 Markdown 表格,汇总每个参考文献、其验证状态以及任何不匹配的字段。

为什么重要

  • 减少审稿人工作量 – 再也不需要手动复制粘贴。
  • 提升文献质量 – 在出版前捕获虚假引用。
  • 增强信任 – 作者、编辑和读者可以依赖准确的参考文献。

加入行动

如果您在自己的工作中遇到幽灵引用,或想帮助改进 CERCA:

  • 在 GitHub 上给仓库加星
  • 提交问题,并附上误报/漏报的示例。
  • 贡献 代码或文档。

我们共同努力,遏制虚假引用的传播,确保学术交流的可信度。

🔍 手动备选
如果自动搜索失败,您可以右键手动搜索参考文献标题。

🔐 隐私优先设计 – PDF 文件永不上传,也永不离开您的机器。所有 PDF 解析和参考文献提取均在本地完成。

技术栈

  • Java + JavaFX – 跨平台桌面应用
  • Cermine – PDF 解析和元数据提取
  • OpenAlex、Crossref、Zenodo API – 参考文献验证
  • JavaWuzzy – 处理引用变体和拼写错误

我选择这套技术栈是为了使用 JavaFX 构建跨平台兼容的 Java 桌面应用(Windows、macOS、Linux)。

为什么开源?

因为该工具的目的在于透明。它解决了一个共同的问题,通过将 CERCA 开源,我邀请社区审计代码、改进解析器并集成更多数据库。

它采用 GNU Affero 通用公共许可证 (AGPL‑3.0) 授权。

谁可以使用 CERCA?

  • 研究人员 进行最终稿件检查
  • 审稿人 评估参考文献的一致性
  • 编辑 支持编辑质量控制
  • 元研究者 与可重复性工作流

再次加入行动

幽灵引用威胁学术信任。CERCA 是一个起点,但它需要你的专业知识。

立即尝试:

📥 下载 CERCA (v1.1‑alpha) – Windows | macOS | Linux

Cerca 并未完全解决幽灵引用的问题,仍在持续开发中。这是一个小而实用的步骤。如果它能帮助研究者捕捉到哪怕一个错误引用,节省审稿人的时间,或鼓励对 AI 生成文本进行更批判性的参与,那么它已经实现了自己的目的。

帮助改进它:

  • 🐛 发现边缘案例?
  • 💡 有想法?
  • 🔧 想贡献代码?

👉🏾 下载工具并在此处查看仓库

本项目邀请研究和开发社区一起实验、评估并共同构建更好的工具。

分享你的成果: CERCA 在你的工作中捕捉到了幽灵引用吗?欢迎在评论中告诉我。

Back to Blog

相关文章

阅读更多 »

RGB LED 支线任务 💡

markdown !Jennifer Davishttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%...

Mendex:我为何构建

介绍 大家好。今天我想分享一下我是谁、我在构建什么以及为什么。 早期职业生涯与倦怠 我在 17 年前开始我的 developer 生涯……