概述
LLM 评估器是一种 MLflow 评分器 ,它使用大型语言模型进行质量评估。 虽然基于代码的记分器使用编程逻辑,但法官利用 LLM 的推理功能对诸如有用性、相关性、安全性等条件进行质量评估。
将法官视为专门进行质量评估的 AI 助手 - 它可以评估应用的输入、输出,甚至探索整个执行跟踪,以根据定义的标准进行评估。 例如,法官可以理解 give me healthy food options 和 food to keep me fit 是相似的查询。
何时使用法官
如果需要评估纯语言输入或输出,请使用法官:
- 语义正确性:“这是否正确回答了问题?
- 风格和语气:“这是否适合我们的品牌声音?
- 安全性和符合性:“这是否遵循我们的内容准则?
- 相对质量:“哪个响应更有用?
请改用 基于代码的自定义评分器 :
- 完全匹配:检查特定关键字
- 格式验证:JSON 结构、长度限制
- 性能指标:延迟、令牌使用情况
内置 LLM 法官
MLflow 为常见用例提供经研究验证的法官:
from mlflow.genai.scorers import (
Safety, # Content safety
RelevanceToQuery, # Query relevance
RetrievalGroundedness, # RAG grounding
Correctness, # Factual accuracy
RetrievalSufficiency, # Retrieval quality
Guidelines, # Custom pass/fail criteria
ExpectationsGuidelines # Example-specific pass/fail criteria
)
有关详细文档,请参阅 内置法官参考 。
自定义 LLM 法官
除了内置法官之外,MLflow 还可以轻松地使用自定义提示和说明创建自己的法官。
当需要定义专用评估任务时,自定义 LLM 评委非常有用,需要更好地控制成绩或分数(而不仅仅是通过/失败),或者需要验证代理是否为特定用例正确做出适当的决策和执行作。
法官准确性
Databricks 通过以下方式持续提高评估质量:
- 针对人类专家判断的研究验证
- 指标跟踪:科恩的卡帕,准确性,F1 分数
- 针对学术和真实数据集的多样化测试
有关详细信息,请参阅 有关 LLM 法官改进的 Databricks 博客 。
有关为 LLM 法官提供支持的模型的信息
LLM 评审可能会使用第三方服务来评估您的 GenAI 应用程序,包括由 Microsoft 运营的 Azure OpenAI。
对于 Azure OpenAI,Databricks 已选择退出“滥用监视”,因此不会通过 Azure OpenAI 存储任何提示或响应。
对于欧盟 (EU) 工作区,LLM 判定使用托管在 EU 的模型。 所有其他区域使用托管在美国的模型。
LLM 评审旨在帮助客户评估他们的 GenAI 代理/应用程序,并且不应使用 LLM 评审结果来训练、改进或微调 LLM。
后续步骤
操作指南
- 使用内置的 LLM 评估器来完成常见评估任务
- 为专用或复杂的评估任务创建自定义 LLM 法官