Bench
Bench是一个用于评估LLM在生产场景中使用情况的工具。无论您是在比较不同的LLM,考虑不同的提示,还是在测试诸如温度和token数量等生成超参数,Bench都为您的LLM性能评估提供了一个触点。
如果您在LLM工作中遇到了以下任何需求,Bench可以帮助您进行评估:
- 通过一个通用界面在不同任务和使用场景中标准化LLM评估的工作流程
- 测试开源LLM是否能够在您的特定数据上与顶级的闭源LLM API提供商一样表现出色
- 将LLM排行榜和基准测试中的排名转化为您实际使用案例中关心的分数
加入Bench社区:Discord。
对于错误修复和功能请求,请提交一个Github问题。
安装包
将Bench安装到您的Python环境中,并附带用于本地结果服务的可选依赖项(推荐):
pip install 'arthur-bench[server]'
或者,安装Bench到您的Python环境中,附带最少依赖项:
pip install arthur-bench
有关进一步的设置说明,请访问我们的安装指南
使用Bench
要更深入地了解使用Bench的过程,请访问我们的快速入门指南和我们文档中的测试套件创建指南。
为了确保您可以在Bench中运行测试套件,您可以运行以下代码片段来创建一个测试套件并运行它以对候选输出进行评分。
from arthur_bench.run.testsuite import TestSuite
suite = TestSuite(
"bench_quickstart",
"exact_match",
input_text_list=["What year was FDR elected?", "What is the opposite of down?"],
reference_output_list=["1932", "up"]
)
suite.run("quickstart_run", candidate_output_list=["1932", "up is the opposite of down"])
保存的测试套件可以在以后加载,以便随着时间的推移基准测试性能,而无需重新准备参考数据:
existing_suite = TestSuite("bench_quickstart", "exact_match")
existing_suite.run("quickstart_new_run", candidate_output_list=["1936", "up"])
要在带有bench
包的本地UI中查看这些运行结果,请从命令行运行bench
(这需要安装Bench的可选服务器依赖项):
bench
在Bench UI中查看示例将如下所示:
从源码运行Bench
从源码启动Bench:
- 安装依赖项
pip install -e '.[server]'
- 构建前端
cd arthur_bench/server/js
npm i
npm run build
- 启动服务器
bench
由于服务器是使用pip -e
安装的,本地更改将会被检测到。然而,需要在每次更改之间重启服务器,以使更改生效。