评估介绍
背景信息
随着大模型技术快速发展与广泛应用,智能体评估已成为AI应用开发的关键环节。传统评估依赖人工操作,从评测集构建、任务执行到报告输出,流程繁琐、效率低、易出错,且难以覆盖全场景、缺乏标准化评测能力,影响评估准确性与可靠性。
AgentArts智能体开发平台引入了评估功能,内置可直接使用的评估器,支持快速构建评测集、配置评估器、执行评估任务并自动生成评估报告,大幅提升评估效率与客观性。
什么是评估
评估是对智能体表现进行系统化、自动化检验的过程。通过预设的评估标准,对输出质量、内容正确性、工具调用合理性等维度进行量化打分,帮助你客观了解实际效果,并为后续优化提供依据。
预置评估器示例:
- 正确性评估器:评估智能体的输出是否正确、准确、真实,并完整覆盖核心要点。
- AI味检查评估器:评估模型回复中是否存在开头结尾话术冗余、连接词模板化、人物名称简单化、语气词过多等问题。
- 任务完成度评估器:通过比对用户输入与Agent输出,判断任务是否成功完成。
预置评估器的更多信息,请参考预置评估器。
为什么需要评估:
- 仅凭人工试用几轮对话,无法全面覆盖各类用户问题。
- 优化提示词、更换模型、调整知识库后,缺乏量化指标衡量效果是变好还是变差。
- 应用上线后,需要持续监测输出质量是否稳定。
评估的两种方式
AgentArts提供了离线评测和在线评测两种方式。
如何选择评估方式
在线评估
应用上线后,基于Trace数据(应用运行过程的详细调用链数据) 设置自动化任务,自动采样Trace数据,获取输入、输出并进行在线评测,帮助开发者及时了解应用质量、洞察问题并进行优化,降低人工干预成本。
- 在线评估任务仅由通过API调用产生的Trace数据触发。
- 在AgentArts平台中与智能体进行的交互产生的数据,不会触发在线评估任务。
在线评估任务一般由以下两个要素构成:
|
要素 |
说明 |
|---|---|
|
评估对象 |
被评估的目标,用于采集该对象生成的数据进行评估。 |
|
评估器 |
定义评估的维度和评分标准,负责自动打分。平台提供多种预置评估器,也支持自定义。 |
适用场景:
- 应用上线后,对应用进行持续化的验证。具体流程如下:
- 发起调用:通过调用智能体运行API接口,触发智能体执行任务。
- 生成Trace数据:智能体在运行过程中将运行数据上报,生成Trace数据。
- 执行评估:系统获取Trace数据后,根据配置自动执行评估任务并输出结果。
离线评估的模式
离线提供两种评估模式(评估智能体、评估数据集),区别在于评估的数据从哪来:
|
对比维度 |
评估智能体 |
评估评测集 |
|---|---|---|
|
核心区别 |
对智能体实际的运行结果进行评估。 |
直接对评测集中已有的数据进行评估。 |
|
是否运行智能体 |
是 |
否 |
|
需要选择智能体 |
是 |
否 |
|
评测集中需要包含 |
输入数据(input)、预期输出(reference_output) |
输入数据(input)、预期输出(reference_output)
说明:
当使用评测集作为评估对象时,需评测集的数据列与评估器中定义的字段相匹配。 |
|
消耗资源 |
是(智能体回答时产生的token消耗+评估器中的大模型产生的token消耗) |
是(评估器中的大模型产生的token消耗) |
|
使用说明 |
智能体开发平台对评估任务的创建和使用设置了明确的资源上限:
在评估过程中,评估器运行所产生的大模型token消耗,由评估模块内预置的专属资源覆盖,不计入平台赠送的200万免费token,也不消耗用户自购的token。 |
|
- 模式一:评估智能体
一句话理解:让智能体现场作答,然后评估它的回答与参考答案之间的差异。
准备一组测试问题和对应的参考答案(评测集),平台将这些问题逐条发送给智能体,智能体实时运行并生成回答,然后由评估器对每条回答进行打分。
图1 评估智能体执行流程
适用场景:
- 智能体开发完成后,用标准测试集全面检验效果。
- 修改提示词、更换模型、调整知识库后,对比优化前后的评分变化。
- 定期对智能体进行回归测试,确认效果没有退化。
- 模式二:评估评测集
一句话理解:不运行智能体,直接对评测集中的数据进行评估。
如果需要验证评测集中的数据是否符合预期时,可以直接用评估器对数据进行评估打分。评估器本质上是由大模型+评估提示词构成的,它会逐条读取评测集中的数据,按照评估提示词中定义的评分标准进行判断并给出分数。换句话说,这个模式是用AI来评判数据的质量。
图2 评估评测集执行流程
适用场景:
- 已有一批问答数据(来自人工编写、线上日志导出、外部系统等),想借助AI批量检验数据质量。
- 不想消耗智能体运行资源(如Token费用),仅对现有数据做评估。
- 更换了评估标准或评估器后,想用新的评估维度重新评估同一批数据。