RAG-QA-ARENA

RAG-QA-ARENA 是一个基于偏好的比较数据集,我们为此提供详细的教程

数据获取

您可以通过发送邮件给任何一位作者来获取数据集。

处理流程

您将在 Google Drive 中找到一个 RAG Arena 文件夹。请将该文件夹中的数据文件放入您 GitHub 仓库中的 rag-qa-arena 文件夹中。

索引和回答

在原始命令中添加 -a 标志可以跳过评估并获取原始 parquet 文件。

例如:

python -m /eval/eval_node -f path/to/main_folder -q path/to/question_parquet -a

使用 rag-qa-arena 文件夹中的 change.ipynb 将 parquet 转换为评估用的 JSON 格式。将处理后的 JSON 文件放在 data/pairwise_eval 文件夹中,按照以下结构组织:

📁 rag-qa-arena
└── 📁 data
    └── 📁 pairwise_eval
        └── 📁 GraphRAG
            ├── 📄 fiqa.json
            ├── 📄 lifestyle.json
            ├── 📄 recreation.json
            ├── 📄 science.json
            ├── 📄 technology.json
            └── 📄 writing.json
        └── 📁 NodeRAG
            ├── 📄 fiqa.json
            ├── 📄 lifestyle.json
            ├── 📄 recreation.json
            ├── 📄 science.json
            ├── 📄 technology.json
            └── 📄 writing.json
        └── 📁 NaiveRAG
            ├── 📄 fiqa.json
            ├── 📄 lifestyle.json
            ├── 📄 recreation.json
            ├── 📄 science.json
            ├── 📄 technology.json
            └── 📄 writing.json

直接与 LFRQA 比较

修改脚本,添加您的 openai_key

对于 Mac 和 Linux 系统:

bash run_pairwise_eval_lfrqa.sh

对于 Windows 系统:

run_pairwise_eval_lfrqa.bat

比较一对 LLM 生成结果

修改脚本,添加您的 openai_key

对于 Mac 和 Linux 系统:

bash run_pairwise_eval_llms.sh

对于 Windows 系统:

run_pairwise_eval_llm.bat

您应该修改 model1 和 model2 以确保每个模型都与其他模型进行比较。例如,您可以将 NaiveRAG 与其他四个模型进行比较,然后将 Hyde 与剩余的三个模型(不包括 NaiveRAG)进行比较,以此类推,直到完成所有成对比较。

3.2 完整对比

python code/report_results.py --use_complete_pairs

此脚本会报告所有比较的胜率和胜率+平局率,并输出一个 all_battles.json 文件。


Last modified April 5, 2025: update reproduce (f23a25c)