
openevals
几行代码给 LLM 应用打分,快速比出哪个版本更好
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-09-12 · 当前星标 ★ 1242
使用教程
环境要求
- Python 环境(使用 Python 版 openevals)
- pip 包管理器
- OpenAI API Key(LLM-as-judge 评测器需要)
- Node.js/npm(仅 TypeScript 用户需要)
- E2B API Key(仅使用代码执行/类型检查评测器时需要)
安装与启动步骤
-
1安装 openevals
按 README 的安装说明用 pip 安装 Python 版 openevals 包,安装完成后即可在项目中导入使用。
pip install openevals -
2设置 OpenAI 密钥
Quickstart 使用 OpenAI 模型充当裁判,需要把 API Key 写入环境变量 OPENAI_API_KEY,示例值请替换为真实密钥。
export OPENAI_API_KEY="your_openai_api_key" -
3编写首个评测脚本
用 create_llm_as_judge 配合 CONCISENESS_PROMPT 构造简洁性评测器,model 指定为 openai:gpt-5.6-sol;README 示例到 outputs 定义处被截断。
from openevals.llm import create_llm_as_judge from openevals.prompts import CONCISENESS_PROMPT conciseness_evaluator = create_llm_as_judge( # CONCISENESS_PROMPT is just an f-string prompt=CONCISENESS_PROMPT, model="openai:gpt-5.6-sol", ) inputs = "How is the weather in San Francisco?" # These are fake outputs, in reality you would run your LLM-based system to get real outputs outputs = "Thanks for asking! The current weather in San Francisco is sunny and 90 degrees." -
4可选:安装 OpenAI 客户端
默认使用 LangChain chat model integrations 并自带 langchain_openai;如果偏好直接用官方 OpenAI 客户端,README 给出该安装命令。
pip install openai -
5可选:E2B 代码评测
使用 E2B 沙箱做代码执行/类型检查评测时,TypeScript 需装对等依赖 @e2b/code-interpreter,并设置 E2B_API_KEY 环境变量。
npm install @e2b/code-interpreter process.env.E2B_API_KEY="YOUR_KEY_HERE"
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
OPENAI_API_KEY | 是 | LLM-as-judge 评测器调用 OpenAI 模型所需的环境变量 | your_openai_api_key |
E2B_API_KEY | 否 | 使用 E2B 沙箱执行代码评测时所需的环境变量 | YOUR_KEY_HERE |
model | 否 | create_llm_as_judge 的模型参数,决定由哪个模型担任裁判 | openai:gpt-5.6-sol |
如何确认成功
运行评测器无报错,并打印出形如 {'key': ..., 'score': ..., 'comment': ...} 的评测结果字典。
常见问题
Q:必须使用 OpenAI 模型吗?
A:不一定。默认走 LangChain chat model integrations,且已自带 langchain_openai;也可直接使用 openai 客户端。模型通过 model 参数指定,如 openai:gpt-5.6-sol。
Q:评测结果是什么格式?
A:README 示例中是包含 key、score、comment 三个字段的字典或对象,例如 {'key': 'pyright_succeeded', 'score': false, 'comment': ...}。
Q:想评测 LLM Agent 怎么办?
A:README 明确建议改用同组织的 agentevals 项目,它专注 Agent 评测,地址为 https://github.com/langchain-ai/agentevals。
Q:TypeScript 项目怎么安装?
A:执行 npm install openevals @langchain/core;如需直连 OpenAI 客户端再执行 npm install openai。
注意事项
- openevals 定位是评测起点,可在其预置评测器基础上编写更贴合自身应用的定制评测。
- 向 E2B 评测器传入 environment_variables/environmentVariables 后,模型生成的代码可在沙箱内读取这些变量,存在安全风险,需谨慎使用。
- README 建议先了解 LangSmith 的 evaluation concepts 文档,便于理解评测概念。
- 评测结果可与 LangSmith 等实验追踪平台集成,方便对比不同提示词、模型或检索策略。
核心亮点
- 提供多种预置评测器,覆盖正确性、相关性、幻觉等常见维度,无需从零实现
- 支持 LLM-as-judge,可直接用大模型对输出打分,降低人工标注成本
- 与 LangSmith 等实验平台集成,评测结果可追踪、可对比不同版本
不足之处
- 评测质量高度依赖所选 judge 模型,弱模型可能给出不稳定评分
- 生态与 LangChain/LangSmith 绑定较紧,脱离该体系使用便利性下降
适用场景
- 对比同一 RAG 应用在不同提示词下的回答质量
- 为 Agent 工具调用结果做自动化正确性校验
- 在 CI 流程中回归测试 LLM 应用,防止模型或提示词改动导致效果退化
替代项目
DeepEval、Ragas
上一篇:safelabs-eval
同类项目推荐
OPERA
开源
给多模态大模型装上防幻觉刹车,生成更可靠
[CVPR 2024 Highlight] OPERA: Alleviating Hallucination in Multi-Modal Large Language···
gpt6-Astra
开源
一个工作台集中测试各大模型的越狱与安全边界
gpt6 Astra-claude-grok4.7-deepseekv4.1flash-glm5.3-gemini破甲越狱 · 冷咖啡 BREAK//O···
llm-hallucination-survey
开源
一站式读懂大模型幻觉,从入门到前沿
Reading list of hallucination in LLMs. Check out our new survey paper: "Siren’s Son···
uqlm
开源
量化 LLM 不确定性,精准识别幻觉,提升 AI 输出可信度。
[JMLR 2026] UQLM: A Python package for LLM hallucination detection using uncertainty···
tts-bench
开源
一键跑遍主流 TTS,比速度、留样本
Speed and samples benchmark: for all types of text to speech (TTS) models on Windows···
llm-eval
开源
一站式跑分,快速对比大模型与 RAG 效果
大语言模型评估平台,支持多种评估基准、自定义数据集和性能测试。支持基于自定义数据集的···
Awesome-LMMs-Mechanistic-Interpr···
开源
一站式读懂多模态模型内部工作原理
A curated collection of resources focused on the Mechanistic Interpretability (MI) o···
genai-bench
开源
token 级压测 LLM 服务,选型调优有据可依
Genai-bench is a powerful benchmark tool designed for comprehensive token-level perf···
alpaca_eval
开源
自动评估指令跟随模型,快、便宜、且靠谱。
An automatic evaluator for instruction-following language models. Human-validated, h···