AI News HubLIVE
站内改写3 分钟阅读

olmo-eval:面向模型开发循环的评估工作台

olmo-eval 是一个新的评估工作台,旨在支持 LLM 开发过程中持续进行的模型评估。它建立在 OLMES 标准之上,提供灵活的任务定义、可交换的运行时策略以及详细的逐问题比较功能,帮助开发者判断每次干预的效果是否显著。

olmo-eval 是 Allen AI 发布的一个全新评估工作台,专门用于支持大语言模型(LLM)开发过程中反复进行的评估循环。在构建 LLM 时,每次对数据、架构或超参数的调整,以及每次规模上的提升,都会触发相同的循环:添加或重新配置基准测试,在每个新的模型检查点上重新运行,记录结果,并检查在小型实验中有效的改动是否仍然适用于完整训练。大多数现有的评估工具并非为此设计——它们要么是为已完成模型运行既定基准测试,要么是在沙箱中运行多步骤、使用工具的问题。它们无法跟上不断变化的模型,也无法反映模型在特定真实世界条件下的行为。

olmo-eval 建立在 OLMES(开放语言模型评估标准)之上。OLMES 于 2024 年推出,旨在使 LLM 基准得分更易于跨版本比较。当时,相同的模型在相同的基准上以不同方式评分——提示格式和任务制定等方面经常因论文而异——因此,关于哪些模型表现最佳的声明往往无法复现。OLMES 将基准选择固定在一个开放、文档化的标准中,并成为了评估从 Olmo 到 Tulu 等开放模型的基础。

然而,模型的最终得分只是评估过程的一部分。这就是为什么我们发布 olmo-eval,一个建立在 OLMES 之上并在 LLM 开发的其余部分扩展其功能的新工作台。与 OLMES 相比,olmo-eval 减少了实现新评估的工作量,提供了更多灵活性来定义评估运行的位置和方式,并使将单个组件组合成更大工作流变得更加容易。代理和多轮评估作为一级用例得到支持,更强的分析工具帮助您判断某个干预是否确实改善了基线,或者差异是否只是噪音。

olmo-eval 与现有工具有何不同

性能变化 2.4 个百分点足以做出判断吗?

olmo-eval 在某种程度上与 Harbor 重叠,Harbor 是一个用于在容器化沙箱环境中评估 AI 代理的开放框架。但这两个工具的范围不同。Harbor 主要旨在运行和发布代理基准测试;olmo-eval 则是为模型开发的日常工作而构建——添加和配置基准测试,在检查点上运行它们,并逐提示分析结果,而不是仅给出单个总体得分。

Harbor 以相同的方式运行所有内容——在密封、可复现的容器内。由于容器可能消耗大量资源,olmo-eval 允许您选择每个基准的运行方式。只需要模型回答问题的基础基准可以直接运行,速度更快、成本更低;需要锁定环境的基准——例如,需要运行模型编写的代码——则使用隔离的容器设置。轻量级路径是默认选项,并且 olmo-eval 仅在基准实际需要时才选择重型设置。

Harbor 添加基准的过程旨在用于您计划发布和公开共享的评估,并包含额外的验证步骤。olmo-eval 则旨在开发过程中快速移动,添加基准的方式取决于基准的需求:对于基础评估,只需简短定义,并可以选择让模型在完成基准时使用工具;对于已经有自己代码和过程的基准,则编写一个薄包装器,以便 olmo-eval 可以原样运行并与其他基准得分以相同格式报告结果。

Harbor 和 olmo-eval 都保持基准与运行时策略(模型如何运行以产生答案)分离,以便您可以更改其中一个而无需重写另一个,但 olmo-eval 旨在实现更大的模块化。在 olmo-eval 中,被评估的模型、它可以使用的工具、容器化环境以及任何辅助模型(如作为评判的 LLM)都是可交换的组件。您可以在多个任务抽象中重用工具,或将评分模型插入一个基准而不影响其他基准,并且可以轻松调整小设置(例如提示的具体措辞)而无需大量工作。

Harbor 为每个模型报告总体得分。olmo-eval 也报告这些得分,每个得分都带有标准误差和最小可检测效应(可以可靠区分的差异的最小值)。但更有用的视图是将相同的问题在两个模型检查点上排列,并一一比较,保持其他所有条件不变。这有助于您看到总体平均值中的微小变化是否表示真正的改进,或者仅仅是噪音。

集成评估栈

olmo-eval 由四个组件组成,这些组件本身很有用,但设计用于共同工作以加强实验性 LLM 开发循环:

  • 任务/套件/抽象:将基准逻辑与运行时策略解耦。任务是您在 olmo-eval 中定义基准的方式——评估什么。套件将任务分组为您一起运行的集合,而抽象控制每个任务如何运行。这种分离允许同一任务作为标准基线或以带有工具和脚手架的方式运行,而无需更改它测量的内容。
  • 沙箱和能力路由层:包括异步沙箱规划器。这支持评估模型响应取决于其使用工具所采取的操作,例如编写和运行代码或浏览网页。关键在于评估模型真实的工具使用情况:当基准需要工具时,olmo-eval 运行这些工具并将结果反馈给模型。
  • 标准化实验模式:记录每次运行、其配置和结果,均采用相同的结构化格式。这使得可以分组相关实验,随时间比较检查点,并避免在长期模型开发工作流中经常累积的不一致性。
  • 结果查看器:用于成对模型比较:将两个模型或检查点逐问题排列,揭示总体平均值可能掩盖的小但真实的性能变化。

在大多数模型评估设置中,添加基准是一个相当大的集成项目。在 olmo-eval 中,只需要一个任务——任务定义基准数据集、如何构建评估请求以及如何对模型答案进行评分(全部用 Python 代码实现)。

开放且可复现的评估

在评估是持续模型开发的一部分而不是一次性运行时使用 olmo-eval——当您需要在可复现条件下跨检查点重复运行相同的基准测试,并在聚合和逐问题级别比较干预时。

如果您反复问的问题是“这个检查点与上一个有何不同,它在哪些方面改进或退步了?”,那么这就是 olmo-eval 构建的工作流。

可复现的评估应跟上模型的构建方式——而不仅是它们完成后如何评分。olmo-eval 将 OLMES 标准带入主动模型开发中,我们以开放方式发布,以便社区可以在此基础上构建。