OpenAI Evals:LLM 评估框架

openai/evals 在 GitHub 上已经拿到 18,596 Star。

这是 OpenAI 官方开源的一套评估框架,专门用来测试大语言模型(LLM)或者基于 LLM 搭建的系统的表现。它内置了一批现成的评估集,也支持你自己写评估逻辑来测业务场景。

正文顶部截图

1、这玩意儿是干嘛的

Evals 就干一件事:给 LLM 的表现打分。

不管是测试模型的回答准确度,还是验证某个业务场景下的输出质量,Evals 都提供了一套标准流程。你不需要从头搭建评估 pipeline,直接用它现成的注册表(registry)跑测试,或者按它的规范写自己的评估逻辑。

现在你也可以直接在 OpenAI Dashboard 里配置和运行 Evals,不用本地搭环境。

2、为什么评估这么重要

如果你在用 LLM 做产品,没有评估就等于蒙眼开车。模型版本一迭代,输出质量是升是降你根本看不出来。

OpenAI 的 Greg Brockman 在推上说过:做高质量评估是你能做的最有影响力的事情之一。没有评估,理解不同模型版本对你的业务有什么影响会耗费大量时间。

Evals 的价值就在于把这件事标准化。你定义好输入和预期输出,框架自动跑测试、汇总结果,省去了大量手工比对的工作。

3、怎么用

环境要求:Python 3.9+

安装很简单,pip 直接装:

pip install evals

如果你想改代码或者贡献新的评估,建议源码安装:

git clone <仓库地址>
cd evals
pip install -e .

评估数据存在 Git-LFS 里,第一次用要先拉数据:

git lfs fetch --all
git lfs pull

也可以只拉某个评估需要的数据:

git lfs fetch --include=evals/registry/data/${your_eval}
git lfs pull

装好之后需要设 OpenAI API key:

export OPENAI_API_KEY="your-key"

然后按文档跑现有的评估集就行。完整的运行说明在 docs/run-evals.md,评估模板在 docs/eval-templates.md

README区域截图

4、核心能力

现成的评估集

Evals 自带一个 registry,里面有一批已经写好的评估,覆盖不同维度的测试需求。你可以直接跑,不用从零开始。

自定义评估

业务场景千差万别,内置评估不可能覆盖所有情况。Evals 允许你写自己的评估逻辑,用 YAML 配置模型打分的评估流程,不需要写代码也能搭建评估。如果你需要更复杂的逻辑,比如 prompt chain 或者带工具的 agent,可以用 Completion Function Protocol 来实现。

私有评估

敏感数据不想公开?Evals 支持在本地跑私有评估,数据不会上传到任何地方。你用自己的数据构建评估流程,代表你实际工作里的 LLM 使用模式。

结果导出

评估结果可以输出到 Snowflake 数据库做进一步分析。需要配置 SNOWFLAKE_ACCOUNTSNOWFLAKE_DATABASESNOWFLAKE_USERNAMESNOWFLAKE_PASSWORD 这几个环境变量。

预提交检查

如果你要贡献代码到官方仓库,Evals 支持 pre-commit 钩子,在每次提交前自动跑格式检查:

pip install -e .[formatters]
pre-commit install

5、适合哪些人用

  • 在用 LLM 搭建产品,需要跟踪模型版本表现的开发者
  • 要验证 RAG 系统输出质量的工程师
  • 需要批量测试 prompt 效果的研究人员
  • 想给模型做标准化 benchmark 的团队

官方提供了几个入门文档:

  • 从零搭建评估流程:docs/build-eval.md
  • 自定义评估逻辑示例:docs/custom-eval.md
  • 入门指南:OpenAI Cookbook 里的 Getting Started with OpenAI Evals

仓库里的 examples 文件夹也有完整示例,建议跟着走一遍。

eval.md`

  • 入门指南:OpenAI Cookbook 里的 Getting Started with OpenAI Evals

仓库里的 examples 文件夹也有完整示例,建议跟着走一遍。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐