📊 LLM 评测(Evaluation)
系统化地衡量大模型的能力边界、安全边界和价值观对齐。
评测的三层金字塔
🧪 基础能力评测
- 通用 benchmark(MMLU、C-Eval、HumanEval)
- 数学 / 推理 / 代码 / 中文等维度
- 回答"模型能不能做"的问题
⚙️ 应用评测
- RAG 系统的 Faithfulness / Relevancy
- 对话系统的 Helpfulness / Coherence
- 回答"模型做得好不好"的问题
🛡️ 安全与价值观评测
- 有毒性、偏见、越狱测试
- 中文特有安全维度
- 回答"模型该不该做"的问题
核心评测工具
1. Promptfoo — Prompt 测试框架
Promptfoo
开源 / 商业
通用 Prompt 测试框架,支持自动化测试、回归测试、A/B 对比、LLM-as-Judge 打分。可用于任何 LLM 应用的评测。
安装
npm install -g promptfoo
# 或者使用 Docker
docker run -d -p 3000:3000 promptfoo/promptfoo
使用方法(配置文件驱动)
# promptfooconfig.yaml
prompts:
- system: You are a helpful assistant.
user: "{{message}}"
providers:
- openai:gpt-4
- anthropic:claude-3.5-sonnet
- bedrock:anthropic.claude-3-haiku
tests:
- assert:
- type: contains
value: "北京"
- type: llm
value: "Response should correctly address the user's question"
vars:
message: "中国的首都是哪里?"
# 运行测试
promptfoo eval -c promptfooconfig.yaml
promptfoo view # 打开结果面板
核心特性
- ✅ 多 Provider 并行测试,自动生成对比结果
- ✅ 多种 Assertion 类型:equals / contains / regex / llm / similarity
- ✅ 支持变量组合(fuzzing),覆盖更多测试场景
- ✅ CI/CD 集成,Prompt 变更可触发回归测试
- ✅ Web UI 可视化查看结果
• • •
2. RAGAS — RAG 系统评测专用
RAGAS
开源 · RAG 评测专用
专门针对 RAG(Retrieval Augmented Generation)系统的评测框架,提供忠实度、相关性、上下文精度等开箱即用的指标。
核心指标
Faithfulness(忠实度)
回答是否完全基于检索到的上下文,不存在"幻觉"
Answer Relevancy
回答是否直接回应用户的问题
Context Precision
检索到的上下文是否相关
Context Recall
回答所需的信息是否都被检索到
Context Entities Recall
实体级别的召回率
使用示例
from ragas import evaluate
from ragas.metrics import (
faithfulness,
answer_relevancy,
context_precision,
context_recall,
)
from datasets import Dataset
# 准备评测数据集
data = Dataset.from_dict({
"question": ["中国首都是哪里?"],
"answer": ["北京"],
"contexts": [["北京是中国的首都。"]],
"ground_truth": ["北京"],
})
# 运行评测
result = evaluate(
data,
metrics=[faithfulness, answer_relevancy, context_precision, context_recall],
)
print(result)
• • •
3. DeepEval — LLM-as-Judge 开箱即用
DeepEval
开源 · 单元测试风格
将 LLM 评测做成单元测试的形式,支持断言(assertion)、测试用例、执行回放。类似 pytest 的使用体验。
快速开始
from deepeval import evaluate
from deepeval.metrics import SummarizationMetric, AnswerRelevancyMetric
from deepeval.test_case import LLMTestCase
# 定义测试用例
test_case = LLMTestCase(
input="请总结这段文章",
actual_output="AI正在改变世界...",
expected_output="AI对社会产生了深远影响",
retrieval_context=["AI改变了医疗、教育等行业"],
)
# 定义指标
metric = AnswerRelevancyMetric(threshold=0.7)
# 执行评测
evaluate([test_case], [metric])
内置指标
- AnswerRelevancyMetric — 答案相关性
- SummarizationMetric — 摘要质量
- FaithfulnessMetric — 忠实度
- ToxicityMetric — 有毒性检测
- BiasMetric — 偏见检测
- HallucinationMetric — 幻觉检测
评测数据集
基础能力评测数据集
| 数据集名称 | 维度 | 获取路径 | 使用方法 |
|---|---|---|---|
| MMLU | 通用知识(57 学科) | HuggingFace: cais/mmlu |
选择题 accuracy |
| C-Eval | 中文通用(52 学科) | HuggingFace: ceval/ceval-exam |
选择题 + 考试模式 |
| GSM8K | 小学数学推理 | HuggingFace: gsm8k |
算术解题 exact match |
| MATH | 数学竞赛 | HuggingFace: hendrycks_math |
答案验证 |
| HumanEval | 代码生成(Python) | HuggingFace: openai_humaneval |
单元测试通过率 |
| MOSMLU | 中文多语言知识 | HuggingFace: moshlab/mosmlu |
选择题 accuracy |
| CMMLU | 中文通用评测 | HuggingFace: haonan-li/cmmlu |
选择题 accuracy |
| BIG-Bench Hard | 挑战性推理(23 子任务) | HuggingFace: lukaemon/bbh |
选择题 accuracy |
价值观与安全评测数据集
| 数据集名称 | 维度 | 获取路径 | 评测方法 |
|---|---|---|---|
| RealToxicity | 有毒性 / 仇恨言论 | HuggingFace: allenai/real-toxicity-prompts |
Perspective API / LLM-as-Judge 打分 |
| CrowS-Pairs | 偏见(性别、种族、宗教) | HuggingFace: crowspairs |
成对比较偏好 |
| CivilComments | 有害言论分类 | TensorFlow Datasets | 多标签分类 F1 |
| BBQ | 行为偏见 | HuggingFace: psychicolee/BBQ |
偏好选择一致性 |
| OHS | 中文语料有毒性 | HuggingFace: theprompters/OHS |
中文毒性打分 |
| WMDPO | 中文价值观对齐 | HuggingFace: hiyoungmoon/wmdpo |
偏好模型打分 |
| Jailbreak Prompts | 越狱测试 | 多个仓库(PAJOB / DAN 等) | 攻击成功率 |
中文价值观评测注意事项
主流英文安全数据集(如 RealToxicity)直接用于中文模型可能存在文化偏差。建议结合:
1. OHS(OpenHarmony Safety)— 中文语料安全评测
2. CMMLU / MOSMLU — 中文知识与常识
3. 企业自有数据 — 根据业务场景定制安全测试用例
• • •
其他评测工具速查
OpenCompass
上海 AI Lab 开源,支持上百个模型和数据集的综合评测框架
lm-evaluation-harness
EleutherAI 开源,LLM 能力评测的"瑞士军刀"
LLM-Bar
基于 C-Eval 的大模型基准测试工具
EvalScope
魔搭社区开源,面向 LLM 的评测框架
FlagEval
智源研究院评测平台,支持多维度模型能力评测
SWE-bench
真实世界软件工程能力评测基准
评测报告样例
评测报告结构建议
┌─────────────────────────────────────────────────┐
│ LLM 评测报告 · Q4 2025 │
├─────────────────────────────────────────────────┤
│ 1. 评测概述 │
│ - 模型版本、评测日期、测试环境 │
│ - 评测范围与目标 │
├─────────────────────────────────────────────────┤
│ 2. 基础能力 │
│ ┌────────────┬──────────┬──────────┐ │
│ │ 数据集 │ 分数 │ 对比基线 │ │
│ ├────────────┼──────────┼──────────┤ │
│ │ MMLU │ 78.2% │ +3.1% │ │
│ │ C-Eval │ 85.4% │ +5.2% │ │
│ │ GSM8K │ 92.1% │ +1.8% │ │
│ │ HumanEval │ 72.3% │ +4.0% │ │
│ └────────────┴──────────┴──────────┘ │
├─────────────────────────────────────────────────┤
│ 3. 应用评测(RAG 场景) │
│ - Faithfulness: 0.89 │
│ - Answer Relevancy: 0.91 │
│ - Context Precision: 0.82 │
├─────────────────────────────────────────────────┤
│ 4. 安全与价值观 │
│ - Toxicity Score: 0.02(良好) │
│ - Bias Score: 0.05(可接受) │
│ - Jailbreak 成功率: 3.2% │
├─────────────────────────────────────────────────┤
│ 5. 结论与建议 │
└─────────────────────────────────────────────────┘