LlamaIndex 系列【43】基础概念:基准测试(Benchmark)和评估(Evaluating)
文章目录
- 1. 基准测试
- 1.1 是什么
- 1.2 AI 领域
- 1.2.1 大模型本身
- 1、能力基准
- 2、性能基准
- 1.2.2 应用基准
- 2. 评估(Evaluating)
- 2.1 是什么
- 2.2 RAG 评估两大模块
- 2.2.1 检索层评估(Retrieval)
- 2.2.2 生成层评估(Generation)
- 2.3 评估方式
- 2.3.1 人工评估
- 2.3.2 自动化评估(LLM Judge)
- 2.4 典型工具清单
1. 基准测试
评估和基准测试是LLM开发中的关键概念。要改进一个LLM应用(RAG、Agent),必须先有衡量它的方法。
1.1 是什么
基准(Benchmark)是人为选定的稳定参照依据,作为衡量、比较、评估其他对象的共同标尺。它是一个通用概念,在不同领域叫法、形态不一样,但核心逻辑完全一致:没有基准,就没法比较、衡量、评判。
基准测试(Benchmark)是用一套标准、可复现的测试,去衡量一个系统 / 组件的性能,拿到量化指标,用来对比、评估好坏。
基准测试最早出现于测绘学里的水准基点标记,以前测绘人员在岩石、墙面上凿一个标记点,这个点的海拔高度已经精准测好了,是一个固定不动的参照点。
测别的山、楼房高度时,都从这个点开始算高差。
1960年代引入计算机领域,计算机工程师借用了这个词的思想,换成一套固定不变的计算任务,作为标尺,测出数字,对比计算机性能。
1.2 AI 领域
基准测试是一套标准化、可复现的评测任务集,在相同条件下对多个LLM或系统进行测试,产出可比分数,用于横向对比基础能力。
| 类型 | 评测对象 | 回答的问题 | 典型指标 |
|---|---|---|---|
| LLM 底座能力基准 | 裸大模型 | 模型本身会不会推理、懂不懂知识 | MMLU准确率、GSM8K正确率 |
| 推理性能基准 | 模型推理服务 | 推理跑得有多快、资源消耗 | tokens/s、TTFT、显存占用、P99延迟 |
| LLM 应用基准 | LLM搭建的整套应用/Agent/RAG系统 | 这套系统能不能完成真实业务任务 | Pass@1、任务完成率、每任务成本、幻觉率 |
1.2.1 大模型本身
1、能力基准
最常说的大模型Benchmark,测效果,标尺:固定评测数据集、题目、打分规则,看模型能不能把任务做对
例如,DeepSeek V4.1-Flash-1017的官方Benchmark横向评测:
每一行Benchmark(基准)含义:
| Benchmark | 评测目标 | 简要说明 |
|---|---|---|
| HLE (w/o tools) | 高阶推理(无工具) | Hardest-Long-Extrapolation,高难度长程推理题,不允许调用工具,考验原生推理能力;*标注代表仅文本子集 |
| Terminal-Bench 4.0 | 终端Shell Agent | 让模型操作Linux终端、执行命令、排查环境、完成系统任务;使用Claude Code评测框架 |
| DeepSWE v1.1 | 真实软件工程Agent | 长周期代码修复基准,在真实代码仓库里改bug、修复PR;比SWE-bench更难,无数据泄露;使用Mini-SWE-V2框架 |
| ProgramBench | 独立脚本/小程序生成 | 根据需求生成可直接运行的独立程序 |
| NL2Repo-Bench | 自然语言生成完整代码仓库 | 一句话需求 → 输出一整个项目仓库结构、多文件工程 |
| Automation-Bench V1.0.6 | 自动化工作流Agent | 多步骤自动化任务编排、工具链式调用 |
| Agents’ Last Exam | 通用综合Agent任务 | 混合类型复杂智能体任务,多轮规划、决策 |
| Apex Bench v1.1 | 高阶复杂Agent规划 | 高难度长任务规划、多工具组合调度 |
| Chartography (w/tools) | 绘图Agent(带工具) | 调用绘图工具,根据需求生成图表 |
| BabyVision (w/tools) | 视觉+工具多模态Agent | 看图理解 + 调用工具完成任务 |
| ZeroBench-main (w/tools) | 零样本工具Agent | 零样本调用陌生工具,表内是Pass@5指标 |
2、性能基准
标尺:一套固定输入Token、并发负载,测硬件 + 推理引擎的表现
指标:TTFT首token延迟、token吞吐tokens/s、显存占用、P99延迟、并发上限
工具:vLLM benchmark、lmperf、TensorRT-LLM评测脚本
只有少数开源底座厂商,在官方文档放标准化、固定环境的推理性能,比如Qwen:
测试对象:Qwen3-0.6B,推理引擎:SGLang,单卡GPU
表头字段解释:
| 字段 | 含义 |
|---|---|
| Model | 模型:Qwen3-0.6B |
| Input Length | 输入上下文长度(输入token数):1 / 6144 / 14336 / 30720 |
| Quantization | 量化精度:BF16、FP8、GPTQ-Int8 |
| GPU Num | 使用GPU卡数量,这里全部是单卡 1张GPU |
| Speed (tokens/s) | 生成吞吐:每秒输出token数量,这个是推理性能核心指标,越高越快 |
1.2.2 应用基准
一套标准化评测集、任务流程与打分规则,用来评测由大模型+检索/工具/规划/业务逻辑共同组成的整套应用系统,而非单独评测LLM底座本身。
它的标尺不是裸模型答题正确率,而是完整应用链路能不能完成端到端业务目标。
例如,GAIA就是一套标准化评测集、任务流程、打分规则,用来测整套Agent应用系统,不是单独测LLM底座。
GAIA一共466道真实世界任务题,分成3个难度等级(Level1/Level2/Level3),举一道GAIA风格样题:
去指定网页下载一份
CSV销售表格,筛选2024年Q3数据,算出所有商品销售额总和,输出这个数字。
要完成它,Agent整套链路:
- 规划步骤
- 调用网页浏览工具下载文件
- 调用代码执行工具读取、筛选 CSV
- 求和计算
- 输出最终答案
统一打分规则:标准答案、自动校验脚本官方提前写好;满足输出要求 →Pass,不满足 →Fail,计算Pass@1。
可以查看 GAIA 官方唯一在线排行榜:
Ops-Agentic-Search-2.0(阿里云OpenSearch团队开发)以93.69%的准确率(Average score)取得GAIA Test榜单Top 1。
2. 评估(Evaluating)
2.1 是什么
评估,是对大模型、RAG、Agent等LLM相关系统的输出效果、能力、风险进行检验、度量与判定的统称,用来回答这套系统好不好、能不能满足业务目标。
评估是一个宽泛的上位概念,形式灵活,数据集、评判规则可按需自定义,不一定用于跨方案横向对比。其中基准测试(
Benchmark)是评估的一个子集
RAG是流水线:用户提问 → 检索知识库片段 → 把片段 + 问题丢给LLM→ 输出答案。
只看最终答案好不好,很难定位问题:是向量库分块 /Embedding不行?还是LLM自己乱编?
RAG评估是对检索增强生成(RAG)整条链路做量化质检,分别评估【检索模块】和【生成模块】,判断系统会不会漏资料、会不会瞎编(幻觉)、能不能答准用户问题。
2.2 RAG 评估两大模块
2.2.1 检索层评估(Retrieval)
看有没有拿到正确、够用、靠前的资料块:
Context Recall(上下文召回率):回答该问题需要的关键片段,有没有被检索出来(怕漏信息)Context Precision(上下文精确率):返回的Top-K里,有多少是真正有用的(怕塞一堆无关噪声)- 传统检索指标:
Recall@k、Precision@k、MRR、NDCG@k(看重排序位置)
2.2.2 生成层评估(Generation)
拿到上下文之后,看大模型输出质量,重点防幻觉:
Faithfulness(忠实度/事实根植性):答案里每一条陈述,都能在检索上下文找到依据,没有编造、没有和原文矛盾(反幻觉核心指标)Answer Relevancy(答案相关性):答案是不是真的在回答用户问题,而不是跑题、套话、复述问题Answer Correctness(答案正确性):答案和标准答案/事实是否一致Completeness(完整性):有没有覆盖问题所有要点
2.3 评估方式
RAG系统评估分为人工评估与自动化评估(LLM Judge)两类。
2.3.1 人工评估
人工评估由标注人员按照统一打分规范,对样本逐项打分,产出高质量基准数据集,一般用于评估集标注、自动化裁判校准、上线前抽样验收。
评估维度:
- 检索侧:上下文相关性、是否包含回答所需关键信息、有无冗余无关片段;
- 生成侧:答案相关性、事实忠实度(幻觉)、答案完整性、表述通顺度;
- 边界场景:知识库无对应信息时是否合理拒答。
打分规则:采用0~5分制,配套明确打分准则,降低标注偏差;复杂问题采用双人标注 + 分歧仲裁机制。
评估示例:
用户问题:
XX Agent平台的会话超时时间默认是多少?
检索上下文:XX Agent平台会话默认超时时间为30分钟,管理员可在租户配置页修改该参数。RAG输出答案:XX Agent平台会话默认超时时间是30分钟,支持管理员自定义配置。
人工打分:
- 上下文相关性:
5分(检索片段完全匹配问题)- 事实忠实度:
5分(无编造,全部来自原文)- 答案相关性:
5分(直接回答问题)- 答案完整性:
5分(覆盖要点)
标注结论:合格
反例(幻觉样例):
用户问题:
XX Agent平台的会话超时时间默认是多少?
检索上下文:XX Agent平台会话默认超时时间为30分钟,管理员可在租户配置页修改该参数。RAG输出答案:XX Agent平台会话默认超时时间是60分钟,用户个人可以在个人中心修改。
人工打分:
- 事实忠实度:
1分(数值错误、修改入口编造,存在幻觉)
标注结论:不合格
2.3.2 自动化评估(LLM Judge)
自动化评估(LLM Judge)即使用独立的大模型充当裁判模型,基于预设评估Prompt,自动对检索上下文与生成答案进行打分,是RAG迭代过程的主流方案。
评估维度:
- 检索指标:上下文召回率、上下文精确率;
- 生成指标:答案相关性、事实忠实度、答案完备性;
- 辅助指标:是否存在幻觉、是否出现越界编造。
实现方式:
- 基于
Ragas、LangFuse、Truelens等框架封装评估链路; - 隔离
Judge模型与生成模型,避免同模型自判带来的偏差; - 输出
0~1区间分数,支持批量跑实验、对比不同Embedding、分块策略、TopK、Prompt效果。
评估示例:
Judge评估Prompt(传给裁判模型):
你是RAG评估裁判,请依据【问题】、【检索上下文】、【模型答案】,按0-1打分:
忠实度:答案里所有事实陈述,必须能在上下文找到依据,不能编造。
相关性:答案是否针对问题作答,不跑题。
完整性:是否覆盖问题需要的全部关键信息。
输出格式:{“faithfulness”:分数,“relevancy”:分数,“completeness”:分数,“reason”:“理由”}
【问题】:XX Agent平台的会话超时时间默认是多少?
【检索上下文】:XX Agent平台会话默认超时时间为30分钟,管理员可在租户配置页修改该参数。
【模型答案】:XX Agent平台会话默认超时时间是30分钟,支持管理员自定义配置。Judge返回结果:
{“faithfulness”: 1.0,“relevancy”: 1.0,“completeness”: 1.0,“reason”:“答案全部来自上下文,准确回答问题,关键信息无遗漏,不存在幻觉”}
反例(幻觉样例Judge输出)
{“faithfulness”: 0.2,“relevancy”: 0.8,“completeness”: 0.4,“reason”:“超时时间60分钟和修改入口在原文不存在,属于幻觉;虽然主题相关,但关键信息错误,信息不完整”}
2.4 典型工具清单
RAG评估链路包含指标计算、链路追踪、数据集管理、实验对比等环节,常用工具如下:
- Ragas:面向
RAG的专用评估指标库,内置忠实度、相关性、召回率等经典指标,开箱即可批量计算评估分数,是自动化评估最常用组件。 - LangSmith:
LangChain生态配套工具,提供调用链路追踪、样本标注、评测集管理与自动化评估能力,方便调试和对比RAG实验效果。 - LangFuse:侧重
LLM应用全链路观测,支持trace日志查看、评估数据集维护、LLM Judge打分、指标看板,适合线上持续监控RAG质量。 - LlamaIndex Truelens:
LlamaIndex原生生态评估组件,深度适配LlamaIndex检索、查询引擎,可对检索和生成结果做评估、根因分析。