LLM 评估与智能体评估

LLM 评估系统地衡量 LLM 应用在正确性、相关性、安全性和连贯性等维度上的质量。 智能体评估扩展了 LLM 评估,能够评估自主 智能体的多步推理、工具选择、任务完成及其他能力.

评估能让工程团队确信他们的智能体和 LLM 应用确实运行良好:不仅是能否运行,还包括它们是否能产生正确、安全且有用的结果。随着智能体从原型走向生产关键型应用,评估对于维持质量和实现持续改进变得至关重要。

与传统软件不同,智能体和 LLM 应用是 非确定性的:相同的输入可能会产生不同的输出。这使得精确匹配测试显得力不从心。AI 评估使用 LLM 裁判、人工反馈和基于代码的指标,来评估代表性数据集中正确性、相关性、安全性和帮助性等维度的质量。

快速导航

为什么 LLM 和智能体评估至关重要

智能体、LLM 应用和 RAG 系统带来了传统软件测试无法解决的独特挑战

质量保证

问题:智能体的输出是非确定性的,可能会包含幻觉或无关的回答。

解决方案:自动化的 LLM 裁判会对每一次回答在正确性、相关性和安全性等质量维度上进行持续评估。

回归检测

问题:提示词变更、模型更新或数据漂移可能会在没有明显错误的情况下暗中降低质量。

解决方案:在部署前针对基准数据集运行评估,并在生产环境中持续评估,以便尽早捕获回归问题。

智能体调试

问题:多步智能体在工具使用、数据访问和控制流方面做出复杂的决策,这些决策很难理解和调试。

解决方案:端到端评估智能体轨迹,评估工具选择的准确性、推理质量和任务完成情况。

安全与合规

问题:智能体可能会产生有害、偏离主题或违反政策的输出,这些输出很难用静态规则捕获。

解决方案:使用 LLM 裁判来评估每一次回答的安全性、毒性和政策合规性。

LLM 评估

LLM 评估侧重于衡量大语言模型及 LLM 驱动的应用的输出质量。这包括评估回答是否准确、是否与用户的问题相关、是否基于提供的上下文、是否不含有害内容以及是否对实现用户目标有帮助。

对于单轮 LLM 应用(内容生成器、摘要工具、翻译、分类),评估可以帮助您了解哪些提示词能产生最佳效果,在质量问题触及用户前将其识别出来,并长期跟踪质量变化。 LLM 裁判 使这一评估过程自动化,从而能够进行大规模评估,而无需对每个回答进行人工审核。

MLflow 的评估框架 针对常见的质量维度(安全性、正确性、相关性、依据性)提供了内置裁判,并提供了 API 来创建量身定制的自定义裁判,以满足您的特定需求和领域专业知识。

智能体评估

智能体评估将 LLM 评估扩展到了多步智能体系统。虽然 LLM 评估只评估单个回答,但智能体评估必须评估完整的轨迹:智能体如何对任务进行推理、它们选择哪些工具、它们如何处理错误,以及它们是否高效地实现了目标。

使用 LangGraph、CrewAI、ADK 或 Pydantic AI 等框架构建的智能体可能会表现出不可预测的行为:陷入循环、做出错误的工具选择或在多次运行中产生不一致的输出。智能体评估捕获完整的执行图,使您能够评估智能体是否选择了正确的工具、是否使用了正确的参数、是否能从错误中优雅地恢复,以及是否高效地完成了目标。

MLflow 支持智能体评估 通过基于轨迹的评分器来实现,该评分器评估智能体的完整路径,而不仅仅是最终答案。结合捕获每一步的 Trace 追踪,您可以调试智能体故障、优化提示词和工具选择逻辑,并确信智能体在生产环境中的行为是正确的。

LLM 评估 vs 智能体评估:核心区别

理解智能体评估与 LLM 评估之间的区别对于选择正确的评估策略至关重要。虽然它们共享共同的基础,但在范围、指标和复杂度上存在显著差异。

方面LLM 评估智能体评估
范围单次输入/输出对包含工具调用的多步轨迹
评估内容仅评估回答质量推理 + 工具使用 + 最终结果
核心指标正确性、相关性、安全性、流畅性工具调用准确性、任务完成度、效率、错误恢复能力
典型使用场景摘要、翻译、单轮问答、内容生成、分类聊天机器人、自主助手、代码智能体、RAG 系统、研究智能体、工作流自动化
失败模式幻觉、不相关、不安全内容无限循环、错误的工具选择、未完成的目标、低效的路径
MLflow 评分器安全性 (Safety), 正确性 (Correctness), 查询相关性 (RelevanceToQuery), 依据性 (Groundedness)工具调用效率 (ToolCallEfficiency), 角色遵从度 (RoleAdherence), 会话安全性 (ConversationalSafety), 自定义轨迹评分器

评估生命周期

智能体和 LLM 评估不是一次性的活动。它是一个贯穿整个开发和部署过程的持续循环。以下是评估如何融入每个阶段的:

1
构建与实验
在开发时运行评估。测试对提示词、工具和逻辑的更改,并立即对比结果。
2
基准测试与验证
在部署前针对精选数据集运行全面评估。建立基准质量指标。
3
生产环境监控
使用 LLM 裁判持续评估生产环境中的 Trace 追踪。自动检测回归和质量漂移。
4
学习与迭代
将失败案例转化为测试用例。收集人工反馈以改进裁判。循环往复。

AI 评估的常见使用场景

AI 评估解决了整个 AI 开发生命周期中的实际问题

  • 部署前测试:在发布新的 提示词、模型或智能体逻辑之前,针对基准数据集运行全面评估。将质量指标与先前版本进行对比,以确保更改能够提升而非降低您的应用质量。
  • 持续质量监控:在生产环境中,使用自动裁判持续评估回答,以便在用户察觉之前检测到质量回归、新出现的失败模式或与预期行为的漂移。
  • 调试失败:当您的智能体或 LLM 应用产生错误输出时,评估可以精准定位根本原因。是检索效果差?推理有缺陷?还是工具选择错误?评估结果结合 Trace 追踪能确切揭示哪里出了问题。
  • A/B 测试提示词更改:在将 提示词修改部署到生产环境之前,运行 对照(side-by-side)评估 并结合 LLM 裁判。对比质量指标以确保更改提升了输出质量,或者使用 提示词优化来完全自动化改进过程。
  • 构建回归数据集:将生产环境中的失败和边缘案例转化为评估示例。随着时间的推移,构建一个全面的回归数据集,以便在已知失败模式再次进入生产环境之前将其捕获。
  • 安全与合规:使用安全评分器检测有害、偏见或违反政策的输出。保留评估结果的审计轨迹,以用于合规监管和事件调查。

AI 评估的核心组件

一个全面的 AI 评估平台结合了六大能力

  • LLM 裁判:使用语言模型自动评估输出质量的评分器,评估维度包括正确性、相关性、安全性和帮助性。
  • 自定义评分器:使用 Python 函数基于代码的指标,用于格式验证、长度限制和正则表达式匹配等确定性检查。
  • 评估数据集:包含输入和可选期望输出的精选测试用例集,代表您应用的典型用法和边缘案例。
  • 评估 UI:用于查看结果、比较版本并深入研究单个示例以理解失败原因的可视化界面。
  • Trace 追踪集成:评估生产环境中的 Trace 追踪,以持续监控质量,并在完整的执行上下文中调试失败。
  • 人工反馈:收集专家评审和最终用户评分,以验证 LLM 裁判的有效性并识别自动评估中的盲点。

如何实现智能体评估

MLflow 这样现代的开源 AI 平台,使您能够以极少的代码轻松为智能体和 LLM 应用添加全面的评估功能。

只需几行代码,您就可以使用内置或自定义评分器针对数据集评估您的应用。评估结果会在 MLflow 中进行跟踪,您可以在其中比较版本、深入分析失败案例、收集人工反馈,并长期监控质量。您可以在开发过程中(测试新提示词)、部署前(全面基准测试)以及生产环境中(持续监控)进行评估。

以下是使用 MLflow 进行评估的快速示例。请查看 MLflow 评估文档 以获取全面的指南和特定于框架的示例。

使用内置裁判进行评估

python
import mlflow
from mlflow.genai.scorers import Safety, Correctness, RelevanceToQuery
# Evaluate your agent or LLM application
results = mlflow.genai.evaluate(
data="my_eval_dataset", # Your evaluation dataset
predict_fn=my_agent, # Your agent or LLM app
scorers=[
Safety(), # Check for harmful content
Correctness(), # Check factual accuracy
RelevanceToQuery(), # Check response relevance
],
)
# View results in MLflow UI or programmatically
print(f"Safety pass rate: {results.metrics['safety/pass_rate']}")
print(f"Correctness pass rate: {results.metrics['correctness/pass_rate']}")

使用自定义 LLM 裁判进行评估

python
from mlflow.genai.judges import make_judge
from typing import Literal
# Create a custom judge for your specific criteria
conversation_quality_judge = make_judge(
name="conversation_quality",
instructions=(
"Analyze the {{ conversation }} for signs of user frustration, "
"unresolved questions, incomplete answers, or factual errors. "
"Consider the full context of the interaction."
),
feedback_value_type=Literal["high_quality", "medium_quality", "low_quality"],
)
# Use in evaluation
results = mlflow.genai.evaluate(
data=eval_data,
scorers=[conversation_quality_judge],
)

使用自定义基于代码的指标进行评估

python
from mlflow.genai.scorers import scorer
@scorer
def response_length(inputs, outputs):
"""Check response is within acceptable length limits."""
word_count = len(outputs["response"].split())
return {
"score": 50 <= word_count <= 500,
"rationale": f"Response has {word_count} words",
}
@scorer
def contains_required_sections(inputs, outputs):
"""Check response includes all required sections."""
response = outputs["response"].lower()
required = ["summary", "recommendation", "next steps"]
missing = [s for s in required if s not in response]
return {
"score": len(missing) == 0,
"rationale": f"Missing sections: {missing}" if missing else "All sections present",
}
# Use in evaluation
results = mlflow.genai.evaluate(
data=traces_to_evaluate,
scorers=[response_length, contains_required_sections],
)
MLflow Evaluation UI showing LLM judge results with pass rates and individual assessments

MLflow 评估 UI 显示结果,支持版本对比和失败分析

MLflow 是最大的开源 作为适用于智能体、LLM 和 ML 模型的 AI 工程平台,MLflow 每月下载量超过 3000 万次。成千上万家机构使用 MLflow 来调试、评估、监控和优化生产级的 AI 智能体和 LLM 应用,同时控制成本并管理对模型和数据的访问。MLflow 得到了 Linux 基金会的支持,并在 Apache 2.0 许可下开源,它提供了一个完整的评估解决方案,且不存在供应商锁定。 立即开始 →

开源 vs. 专有评估工具

在选择 AI 评估平台时,在开源与专有 SaaS 工具之间做出的抉择,对您的团队、基础设施和数据所有权有着深远的长期影响。

开源 (MLflow) 使用 MLflow,您可以保持对评估基础设施和数据的完全控制。您可以将其部署在自己的基础设施上,或在 Databricks, AWS 或其他平台上使用托管版本。没有按次评估的费用,没有使用限制,也没有供应商锁定。您的评估数据完全由您掌控,并且您可以根据自己的具体需求定制裁判和指标。

专有 SaaS 工具:商业评估平台虽然提供了便利,但牺牲了灵活性和控制力。它们通常按评估次数或按席位收费,在大规模使用时可能会变得非常昂贵。您的数据会被发送到他们的服务器,从而引发隐私和合规问题。您会被锁定在他们的生态系统中,从而难以更换供应商或自定义功能。

为什么团队选择开源:构建生产级智能体的机构越来越多地选择 MLflow,因为它在不牺牲数据主权、成本可预测性或灵活性的情况下,提供了企业级的评估。Apache 2.0 许可证和 Linux 基金会的支持确保了 MLflow 保持真正的开放和社区驱动,而不受单一供应商的控制。

常见问题 (FAQ)

智能体评估是衡量自主 AI 智能体执行其预期任务表现的系统化过程。智能体评估不仅局限于 LLM 评估,还必须评估复杂工作流中的多步推理、工具选择准确性、错误恢复以及任务完成情况。这包括评估智能体是否选择了正确的工具、是否正确使用了它们、是否能优雅地处理边缘案例,以及是否能高效地实现目标。MLflow 提供了专门针对智能体系统设计的专用评分器和评估框架。

相关资源