Skip to content

cite-verify:参考文献真实性核对 ​

写论文带脚本,结果可复核Python 3.9+,无第三方依赖需要联网下载源码(ZIP)

逐条到 Crossref、OpenAlex、arXiv、DBLP 检索 BibTeX 条目,找出查不到(可能是 AI 编造的)和作者、年份对不上的参考文献。

为什么需要 ​

大模型编造的参考文献常见两种:标题看起来合理但查不到;标题对得上,作者或年份却是错的。它们看起来和真的一样,靠肉眼很难发现。会议已经开始严查:ICLR 2026 明确规定,论文中出现编造的参考文献可以直接拒稿。

能做什么 ​

  1. 读取 .bib,默认只核对正文中实际引用了的条目;
  2. 按标题依次在 Crossref、OpenAlex、arXiv、DBLP 中检索,找到标题足够相似的记录;
  3. 比较年份(允许预印本和正式版相差 1 年)和第一作者;
  4. 输出“找到 / 信息不一致 / 查不到 / 检索失败 / 跳过”五类结果,查不到的给出最接近的检索结果,方便判断是不是标题记错了。

同一个标题可能有多条记录(正式版、预印本、别人上传的副本),只要有一条的作者和年份对得上就算找到,避免误报。

只是偶尔用一下?

网页版:科研工具箱 · 参考文献真实性核对,粘贴 .bib 就能核对(检索 Crossref、OpenAlex 和 Semantic Scholar,不查 arXiv、DBLP,也没有缓存)。只有标题、第一作者姓氏和年份会发给这些检索服务,整个 .bib 不会上传。

安装 ​

装到当前项目(.claude/skills/),macOS / Linux
curl -LO https://skills.bnuai.com/download/skills/cite-verify.zip && mkdir -p .claude/skills && unzip -o cite-verify.zip -d .claude/skills
装到个人目录,所有项目都能用,macOS / Linux
curl -LO https://skills.bnuai.com/download/skills/cite-verify.zip && mkdir -p ~/.claude/skills && unzip -o cite-verify.zip -d ~/.claude/skills
装到当前项目,Windows PowerShell
Invoke-WebRequest https://skills.bnuai.com/download/skills/cite-verify.zip -OutFile cite-verify.zip; Expand-Archive cite-verify.zip -DestinationPath .claude\skills -Force

压缩包从本站下载,不需要 Node.js 或 GitHub。带脚本的技能需要 Python 3.9 以上。更新时重新下载解压、覆盖原文件夹即可。

怎么用 ​

text
帮我核对一下 paper/ 里引用的参考文献是不是都真实存在。

AI 帮你写过相关工作或参考文献之后,也建议跑一遍。Agent 会运行脚本,再对“查不到”的条目逐条联网搜索,最后告诉你哪些必须自己确认来源。

示例 ​

对一份掺了一条编造文献、一条信息错误的 .bib 运行核对:

text
# 参考文献核对结果

核对了 5 条(全部):找到 2,信息不一致 1,查不到 1,检索失败 0,跳过 1。

> 注意:DBLP 请求失败(返回了人机验证页面(HTTP 202))。这些条目的结果只基于其他数据源。

## ❌ 查不到(1)
- li2024fake:Hierarchical Reinforcement Learning for Layer-Aware KV Cache Offloading in
  Edge-Cloud LLM Serving with Diffusion Policies

## ⚠️ 信息不一致(1)
- ho2020wrong:Denoising Diffusion Probabilistic Models
  - 年份不一致:bib 中是 2017,OpenAlex 中是 2020
  - 第一作者不一致:bib 中是 smith,OpenAlex 中是 Jonathan Ho

## ➖ 跳过(1)
- vllm:(无标题)
  - 没有 title 字段,跳过(网页、软件等条目请人工核对)

## ✅ 找到(2)
- vaswani2017attention:Attention Is All You Need
  - arXiv:http://arxiv.org/abs/1706.03762v7
- kwon2023paged:Efficient Memory Management for Large Language Model Serving with PagedAttention
  - Crossref:https://doi.org/10.1145/3600006.3613165

某个数据库访问失败时(例如 DBLP 有时要求人机验证),结果开头会注明,其他数据库照常检索。

直接运行脚本 ​

bash
python3 skills/cite-verify/scripts/citeverify.py 论文目录/           # 只核对正文引用了的条目
python3 skills/cite-verify/scripts/citeverify.py refs.bib            # 核对全部条目
python3 skills/cite-verify/scripts/citeverify.py refs.bib --strict   # 有问题时返回退出码 1,可以放进 CI

检索结果缓存 30 天。设置环境变量 CITEVERIFY_MAILTO=你的邮箱 可以使用 Crossref 和 OpenAlex 的礼貌访问池。

权限说明 ​

会联网访问 api.crossref.org、api.openalex.org、export.arxiv.org、dblp.org,只发送参考文献的标题、第一作者姓氏和年份。缓存写在 ~/.cache/research-skills/。

局限 ​

  • “查不到”不等于一定是编造的:很新的论文、中文文献、技术报告、书籍章节可能没有被收录,需要人工确认。
  • 只核对文献是否存在、元数据是否正确,不核对论文是否真的说了你引用它的那句话。引用的观点要自己读原文确认。