跳转到内容

输入关键词开始搜索文档。

Vitest Evals

最后更新 查看 Markdown 源文件

快速开始

将 vitest-evals 设置蓝图添加到现有 Flue 项目:

flue add tooling vitest-evals

蓝图指导你的编码智能体安装测试依赖项、创建专用评估配置、将 Flue 的公共 SDK 适配为 vitest-evals 测试工具,并为应用已定义的行为编写起始案例。

概述

vitest-evals 为 Vitest 添加评估测试工具、评判器、标准化报告和 CI 报告。Flue 集成评估已部署应用使用的相同公共 HTTP 边界,而不是导入 Flue 运行时内部。

生成的测试工具:

  • 通过 @flue/sdk(createFlueClient({ url }))提示挂载的智能体对话;
  • 为每个评估案例提供新的对话 ID;
  • 使用其服务器提供的偏移和提交 ID 捕获提示的事件序列;
  • 在标准化评估结果中记录响应文本、模型使用量、成本和工具调用;
  • 通过 FLUE_BASE_URL 支持本地服务器和已部署的应用。

蓝图不会自动挂载智能体。在通过 HTTP 评估之前,请确认 app.ts 使用 createAgentRouter(...) 挂载了智能体,并且其身份验证中间件是适当的。

运行评估

在一个终端中启动 Flue 应用:

pnpm exec vite dev

服务器就绪后,在另一个终端中运行评估:

pnpm run evals

服务器进程需要应用的正常模型提供商凭证。要评估部署,请设置其基础 URL:

FLUE_BASE_URL=https://preview.example.com pnpm run evals

当目标受保护时,在 SDK 客户端中配置令牌或请求头。永远不要提交提供商或应用凭证。

报告

蓝图添加了紧凑终端输出、详细工具和使用输出以及 JSON 工件的命令。在本地打开 JSON 报告:

pnpm exec vitest-evals serve vitest-results.json

相同的工件可以由 getsentry/vitest-evals GitHub Action 发布。报告可能包含提示、输出、工具参数和结果、错误以及应用元数据;在上传之前审查保留和访问要求。

vitest-evals 不包含 Braintrust 报告器。Flue 的 Braintrust 集成可以独立跟踪应用执行,但这些跟踪不替代评估案例、断言、评判器或 CI 门控。

后续步骤

有关设计案例、选择确定性断言或评判器以及理解测试工具,请参阅评估。完整可运行的项目可在 examples/vitest-evals 中找到。