评估概念

Llama Stack 评估流程允许您对您的生成式 AI 应用数据集或预注册的基准测试运行评估。

我们在 Llama Stack 中引入了一套 API,用于支持运行大型语言模型应用的评估。

  • /datasetio + /datasets API

  • /scoring + /scoring_functions API

  • /eval + /benchmarks API

本指南介绍了使用 Llama Stack 运行不同用例评估的 API 集和开发者体验流程。请查看我们的 Colab 笔记本,了解评估的实际示例 此处

评估概念

评估 API 与一组资源相关联,如下图所示。请访问我们的核心概念指南中的资源部分,以获得更好的高层次理解。

Eval Concepts

  • DatasetIO: 定义了与数据集和数据加载器交互的接口。

    • Dataset 资源相关联。

  • 评分: 评估系统的输出。

    • ScoringFunction 资源相关联。我们提供了一套开箱即用的评分函数,也支持您添加自定义评估器。这些评分函数是定义评估任务以输出评估指标的核心部分。

  • 评估: 生成输出(通过推理或智能体)并执行评分。

    • Benchmark 资源相关联。

开放基准测试评估

Llama Stack 支持的开放基准测试列表

Llama Stack 预注册了几个流行的开放基准测试,以便轻松通过 CLI 评估模型性能。

我们目前支持的开放基准测试列表:

  • MMLU-COT (衡量大规模多任务语言理解): 设计用于全面评估模型在学术和专业领域的理解广度和深度的基准测试

  • GPQA-COT (研究生水平的 Google 证明问答基准测试): 由生物学、物理学和化学领域的领域专家编写的、包含 448 个多项选择题的挑战性基准测试。

  • SimpleQA: 设计用于评估模型回答简短事实查询问题的基准测试。

  • MMMU (一个用于专家 AGI 的大规模多学科多模态理解和推理基准测试)]: 设计用于评估多模态模型的基准测试。

您可以按照此贡献指南向 Llama Stack 添加更多开放基准测试。

通过 CLI 在开放基准测试上运行评估

我们内置了使用 llama-stack-client CLI 运行支持的开放基准测试的功能。

启动 Llama Stack 服务器

使用“open-benchmark”模板启动 llama stack 服务器

llama stack run llama_stack/templates/open-benchmark/run.yaml

运行评估 CLI

运行基准测试评估需要 3 个必要的输入:

  • list of benchmark_ids: 要运行评估的基准测试 ID 列表

  • model-id: 要评估的模型 ID

  • output_dir: 存储评估结果的路径

llama-stack-client eval run-benchmark <benchmark_id_1> <benchmark_id_2> ... \
--model_id <model id to evaluate on> \
--output_dir <directory to store the evaluate results> \

您可以运行

llama-stack-client eval run-benchmark help

以查看 eval run-benchmark 的所有标志的描述

在输出日志中,您可以找到包含评估结果的文件路径。打开该文件,您可以在其中查看您的汇总评估结果。

下一步是什么?

  • 请查看我们的 Colab 笔记本,了解运行基准测试评估的实际示例 此处

  • 请查看我们的构建应用 - 评估指南,了解有关如何使用评估 API 评估您的应用的更多详细信息。

  • 请查看我们的评估参考,了解有关 API 的更多详细信息。