Skip to content

Latest commit

 

History

History
160 lines (113 loc) · 4.05 KB

File metadata and controls

160 lines (113 loc) · 4.05 KB

RealCite

学术文献引用真实性检测工具 - 检测AI幻觉产生的虚假引用

English | 中文

这个工具是干什么的?

当你使用ChatGPT等AI工具辅助写论文时,AI可能会"编造"一些不存在的参考文献(这叫AI幻觉)。RealCite可以自动检测你的BibTeX文件中的引用是否真实存在。

从零开始运行(3步)

第1步:创建Python环境

# 使用conda创建新环境(推荐Python 3.9+)
conda create -n realcite python=3.11 -y
conda activate realcite

第2步:安装RealCite

# 进入项目目录
cd /data/250010040/workspace/project/realcite

# 安装(开发模式)
pip install -e .

第3步:运行验证

# 验证一个BibTeX文件
realcite your_references.bib

# 或者用我们提供的测试文件试试
realcite tests/fixtures/valid.bib -v

就这么简单!

使用示例

命令行使用

# 最简单的用法:直接验证
realcite references.bib

# 保存报告到文件
realcite references.bib -o report.md

# 输出JSON格式(方便程序处理)
realcite references.bib -f json -o report.json

# 详细模式(显示验证过程)
realcite references.bib -v

# 只用特定的验证源
realcite references.bib --sources dblp,arxiv

Python代码中使用

from realcite import RealCite

# 创建验证器
checker = RealCite()

# 验证BibTeX文件
report = checker.validate("references.bib")

# 查看结果
print(f"总共: {report.total_count} 条引用")
print(f"已验证: {report.verified_count}")
print(f"可疑: {report.suspicious_count}")
print(f"未找到: {report.not_found_count}")

# 导出报告
checker.export_report(report, "report.md", format="markdown")

输出结果说明

状态 含义
✅ 已验证 (verified) 在学术数据库中找到了匹配的文献
⚠️ 可疑 (suspicious) 找到了部分匹配,但置信度不够高,建议人工核实
❌ 未找到 (not_found) 在所有数据库中都没找到,很可能是虚假引用
⛔ 错误 (error) 验证过程出错(如标题太短无法验证)

验证源说明

RealCite会依次查询以下学术数据库:

数据库 说明 适合验证
DBLP 计算机科学领域最权威 CS会议/期刊论文
Semantic Scholar AI领域覆盖全面 AI/ML/NLP论文
arXiv 预印本权威来源 arXiv预印本
CrossRef DOI官方数据库 有DOI的任何文献

项目结构

realcite/
├── src/realcite/          # 源代码
│   ├── main.py            # 命令行入口
│   ├── core.py            # 核心验证逻辑
│   ├── parser.py          # BibTeX解析
│   ├── matcher.py         # 匹配算法
│   ├── reporter.py        # 报告生成
│   └── validators/        # 各数据库验证器
│       ├── dblp.py
│       ├── semantic_scholar.py
│       ├── arxiv.py
│       └── crossref.py
├── tests/                 # 测试文件
│   └── fixtures/          # 测试用的bib文件
│       ├── valid.bib      # 真实文献
│       ├── fake.bib       # 虚假文献
│       └── mixed.bib      # 混合文献
├── pyproject.toml         # 项目配置
└── README.md              # 本文件

常见问题

Q: 为什么有些真实的文献被标记为"可疑"?

A: 可能是因为:

  • 标题拼写与数据库中略有不同
  • 文献太新,还没被索引
  • 非CS领域的文献(DBLP只收录CS)

可以尝试降低阈值:realcite references.bib --threshold 0.6

Q: 验证速度很慢?

A: 每条引用需要查询多个API,每个API有请求间隔限制。100条引用大约需要3-5分钟。

Q: 需要API密钥吗?

A: 基本使用不需要。但如果验证量大,建议申请Semantic Scholar的API Key以提高限额。

运行测试

# 安装测试依赖
pip install pytest pytest-mock

# 运行测试
pytest tests/ -v

许可证

MIT License