[ PROMPT_NODE_22352 ]
evaluation
[ SKILL_DOCUMENTATION ]
# 模型合并评估
基于研究最佳实践的合并模型基准测试与评估完整指南。
## 目录
- 基准测试套件
- 评估指标
- 测试方法
- 对比框架
- 质量保证
## 基准测试套件
### Open LLM Leaderboard
**URL**: https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard
**任务** (6 个基准测试):
1. **ARC** (AI2 Reasoning Challenge): 25-shot, 科学问题
2. **HellaSwag**: 10-shot, 常识推理
3. **MMLU** (Massive Multitask Language Understanding): 5-shot, 57 个学科
4. **TruthfulQA**: 0-shot, 事实准确性
5. **Winogrande**: 5-shot, 常识推理
6. **GSM8K**: 5-shot, 小学数学
**运行评估**:
python
from lm_eval import evaluator
model = "path/to/merged/model"
results = evaluator.simple_evaluate(
model="hf",
model_args=f"pretrained={model},dtype=float16",
tasks=[
"arc_challenge",
"hellaswag",
"hendrycksTest-*", # MMLU
"truthfulqa_mc",
"winogrande",
"gsm8k"
],
num_fewshot=5,
batch_size=8
)
# 平均分
avg_score = sum(results['results'].values()) / len(results['results'])
print(f"平均分: {avg_score:.2f}")
### MT-Bench
**重点**: 多轮对话质量
**安装**:
bash
git clone https://github.com/lm-sys/FastChat
cd FastChat
pip install -e .
**运行**:
bash
# 生成回复
python gen_model_answer.py
--model-path path/to/merged/model
--model-id merged_model
# 使用 GPT-4 进行评判
python gen_judgment.py
--model-list merged_model
--judge-model gpt-4
# 查看分数
python show_result.py
**指标**:
- 第一轮分数 (1-10)
- 第二轮分数 (1-10)
- 平均分
### MMLU (详细)
**学科** (共 57 个):
- STEM: 数学, 物理, 化学, 生物, 计算机科学
- 人文: 历史, 哲学, 法律
- 社会科学: 经济学, 心理学, 社会学
- 其他: 专业学科 (医学, 会计等)
python
from lm_eval import evaluator
# 运行所有 MMLU 学科
results = evaluator.simple_evaluate(
model="hf",
model_args=f"pretrained={model}",
tasks="hendrycksTest-*", # 所有 MMLU 任务
num_fewshot=5
)
# 学科细分
for task, score in results['results'].items():
subject = task.replace('hendrycksTest-', '')
print(f"{subject}: {score['acc']:.2%}")
### HumanEval (代码)
**重点**: Python 代码生成
python
from human_eval.data i