langchain-ai/openevals

Readymade evaluators for your LLM apps

解决的问题

OpenEvals 为编写 LLM 应用的评估(evals)提供了一个标准化的起点。它帮助开发者摆脱手动测试,通过提供工具来在模型输出进入生产环境前,程序化地判断其质量、正确性和安全性。

工作原理

该库主要采用「LLM-as-judge(LLM 作为裁判)」方法,使用一个高能力模型根据特定评分标准来评估另一个模型的输出。它提供 create_llm_as_judge 函数,负责将输入和输出格式化为提示词,并将裁判的响应解析为结构化的分数和评论。同时,也支持非 LLM 评估器,如精确匹配、Levenshtein 距离和嵌入相似度。

适用人群

专为使用 Python 或 TypeScript 构建 LLM 驱动应用的开发者设计,他们需要一种可靠的方法来在开发过程中衡量性能和检测回归问题。

主要亮点

  • 预构建提示:包含可立即使用的提示,用于评估质量、安全、安全、RAG(正确性、有用性、依据性、检索相关性)。
  • 灵活评分:支持二元分数、连续浮点分数,或自定义分数选项集。
  • 广泛评估范围:不仅限于文本,还包含结构化输出(精确匹配)、代码(通过 Pyright/Mypy 进行类型检查)和代理轨迹的评估器。
  • 多模态支持:能够评估包含附件或图像的输出。
  • 模拟工具:包含模拟用户以测试多轮交互的功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目