smevals:用于评测模型、提示词与评测框架的小型评测套件
smevals - a small eval suite for evaluating models, prompts, and harnesses
smevals 是 Simon Willison 与 Prime Radiant 实验室合作开发的新工具,用于跨不同模型配置运行小型评测套件并对结果打分。它支持通过 `uvx smevals run` 对 gpt-5.5、claude-opus-4.6 等模型运行评测,并将运行与打分分离,最终可生成静态 HTML 报告。这是 Willison 在评测方法上的第三次迭代。
一个轻量级评估框架,让编码代理帮你搭 eval,再直接跑模型对比。对想针对业务场景自建基准的团队,比通用榜单更实用。
Simon Willison 的博客
2026年7月31日 - 链接博客
smevals —— 一个用于评估模型、提示词和测试框架的小型评估套件。我一直在与 Jesse Vincent 的 Prime Radiant 应用人工智能研究实验室合作,构建这个评估框架,以帮助回答关于不同模型能力的问题。
成果就是 smevals,一个用于在不同模型配置上运行小型评估套件并对其结果进行评分的新工具。
这篇博客文章详细描述了该工具。以下是十秒速览版:
- 告诉你的编码智能体运行 `uvx smevals docs` 来了解这个工具(这会输出 README)
- 然后告诉它为你构建一个评估套件
一旦你创建了一个评估——其形式是一个包含一些 YAML 文件的目录——你就可以像这样针对模型运行它:
uvx smevals run path-to-eval/ -m gpt-5.5 -m claude-opus-4.6
运行与评分操作是分开处理的——你可以使用以下命令,根据你定义的检查项对你的运行结果进行评分:
uvx smevals grade path-to-eval/
然后你可以启动一个本地 Web 服务器来浏览结果:
uvx smevals serve path-to-eval/
或者运行 `smevals build` 命令,将该报告构建为静态 HTML,然后你可以将其托管在任何地方。这里有一个示例,展示了我构建的一个评估套件,用于评估模型编写俳句的能力。

这个项目最耗时的部分是为它确定术语词汇!以下是我最终确定的方案,引自公告:
- 一个评估(eval)是一组挑战的集合,旨在回答关于某个模型的问题,例如,该模型生成 SVG 的能力有多好?
- 每个评估由多个任务(task)组成。一个任务是一个具体的挑战,例如“生成一个骑自行车的鹈鹕的 SVG”。
- 当你运行评估时,是针对一个或多个配置(config)进行的。每个配置指定一个待评估的模型,但也可能包含其他要测试的参数,例如不同的系统提示词、模型参数或智能体测试框架。
- 一次运行(run)记录了当特定配置被用于执行特定任务时发生的情况。运行器(runner)是执行一次运行的脚本。
- 一旦你收集了一次或多次运行结果,就需要评估这些结果,以了解模型(或配置)的表现如何。这是由评分器(grader)完成的,它会产生一个评分(grade)。
- 每个评分器都会执行一系列检查。这些检查既可以是简单操作,比如检查输出中是否包含特定字符串,或者确认输出是否为有效的 XML;也可以是更复杂的自定义操作(以名为 checkers 的脚本形式实现),包括调用其他模型来回答关于本次运行的问题。
这几年来,我一直在尝试摸索一种自己认可的评估方法。smevals 是我对这个想法的第三次迭代,目前感觉方向是对的。我期待未来能进一步扩展它,同时也会把它用在我自己的一些项目上。
2026 年 7 月 31 日
来源:Simon Willison 博客 · simonwillison.net