用途
Reference Hallucination Arena 用于评估大语言模型推荐真实学术参考文献的准确性。它基于 OpenJudge 的 RefArenaPipeline,通过外部学术数据库核验模型生成的 BibTeX 引用,量化幻觉率与字段级准确度,并给出模型排名。
主要能力
- 从 JSON/JSONL 数据集加载查询。
- 从目标模型收集 BibTeX 格式的参考文献回复。
- 解析模型输出中的 BibTeX 条目。
- 将每条引用与 Crossref、PubMed、arXiv、DBLP 交叉核验。
- 计算核验率、逐字段准确率(标题、作者、年份、DOI)、学科细分准确率,并对模型评分与排名。
- 生成 Markdown 报告与可视化图表。
- 支持断点续跑(checkpoint)、并发核验、报告语言选择(en/zh),以及可选的 Tavily 联网搜索增强模式(ReAct agent)。
使用方式
先安装依赖:
pip install py-openjudge
pip install matplotlib
准备 YAML 配置文件(定义数据集路径、目标模型端点、核验参数、输出与报告设置)和 JSON/JSONL 数据集文件。
CLI 运行示例:
python -m cookbooks.ref_hallucination_arena --config config.yaml --save
支持 --fresh 忽略检查点重新开始,--output_dir 覆盖输出目录。
Python API 示例:
import asyncio
from cookbooks.ref_hallucination_arena.pipeline import RefArenaPipeline
async def main():
pipeline = RefArenaPipeline.from_config("config.yaml")
result = await pipeline.evaluate()
for rank, (model, score) in enumerate(result.rankings, 1):
print(f"{rank}. {model}: {score:.1%}")
asyncio.run(main())
配置需提供模型 API 密钥(如 OPENAI_API_KEY、DASHSCOPE_API_KEY 等,可自定义端点与密钥)。可选配置 Crossref 联系邮箱与 PubMed API 密钥以提升速率限制;仅在启用工具增强模式时需要 Tavily API 密钥。
数据集每条查询包含 query(必填)、discipline、num_refs、language、year_constraint 等可选字段。
适用场景
- 评测不同 LLM 在学术文献推荐任务中的幻觉倾向。
- 比较模型在计算机科学、生物医学、物理、化学、社会科学等学科的引用可靠性。
- 生成包含逐字段准确率与学科分布的评估报告,用于模型选型或研究。
限制
- 依赖外部学术数据库 API,网络或超时会导致核验状态为 ERROR。
- 核验结果受数据库覆盖范围与匹配阈值影响;
verified_threshold默认 0.7。 - 图表生成依赖 matplotlib。
- 工具增强模式额外依赖 Tavily API。
- 具体模型效果、费用与平台支持需以实际配置和运行环境为准,资料中未提供更细的收费或效果保证信息。