跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.bubench.lexmount.io/llms.txt

Use this file to discover all available pages before exploring further.

本指南将带你完成从 Agent 配置到评估结果的完整流程。

概览

  1. 选择 Agent
  2. 配置 Agent
  3. 选择 Benchmark
  4. 运行任务
  5. 评估结果
  6. 查看输出

1. 选择 Agent

browseruse-bench 支持多个 Agent,可按需求选择:
Agent说明文档
browser-use支持视觉的可编程浏览器 Agent详情
Agent-TARS基于 Node.js CLI 的推理型 Agent详情
Skyvern基于 Skyvern SDK 的浏览器自动化 Agent详情
Claude CodeAnthropic 官方 Claude CLI,通过 Playwright MCP 操控浏览器详情

2. 配置 Agent

所有 Agent 的运行时配置都写在根目录 config.yamlagents.<agent-name> 下,这是推荐方式。 复制示例配置并填入你的凭证:
cp config.example.yaml config.yaml
然后编辑 config.yamlagents 部分:
agents:
  browser-use:
    active_model: gpt          # 默认使用的模型配置名
    models:
      gpt:
        model_type: OPENAI
        model_id: gpt-4.1
        api_key: $OPENAI_API_KEY
        base_url: $OPENAI_BASE_URL
    browser:
      browser_id: Chrome-Local
    defaults:
      use_vision: false
      max_steps: 40
      timeout: 600
运行时可通过 --model 切换模型,无需修改配置文件:
bubench run --agent browser-use --model gpt ...

3. 选择 Benchmark

根据评估需求选择 Benchmark:

LexBench-Browser

  • 评估方式:视觉评估(截图序列)
  • 评分:0-100,默认阈值 60
  • 适用场景:视觉理解、多步推理

Online-Mind2Web

  • 评估方式:WebJudge 多轮评估
  • 评分:3 分制,默认阈值 3
  • 适用场景:网页导航与任务完成

BrowseComp

  • 评估方式:文本答案正确性
  • 评分:二值(正确/错误)
  • 适用场景:事实检索与信息抽取

4. 运行任务

基本命令

bubench run \
  --agent browser-use \
  --data LexBench-Browser \

所有参数

参数说明备注
--agentAgent 名称默认取 config.yaml 中的 default.agent(兜底 Agent-TARS
--dataBenchmark 名称默认取 config.yaml 中的 default.benchmark(兜底 Online-Mind2Web
--split数据划分默认 All
--data-source数据源local(默认)或 huggingface
--force-download重新下载数据huggingface
--mode任务选择模式singlefirst_nsample_nspecificby_idall
--countfirst_n/sample_n 的任务数默认 1
--task-idsspecific 模式的任务 ID空格分隔多个 ID
--idby_id 模式的单个任务 ID数值 ID 字段
--timeout单任务超时(秒)覆盖配置中的 TIMEOUT
--skip-completed跳过已完成任务适合断点续跑
--agent-config备用 root-config YAML 路径(与 config.yaml 同结构)可选;默认读取仓库根 config.yaml
--timestamp指定运行/恢复目录YYYYMMDD_HHmmss
--dry-run仅打印命令不执行用于检查配置

输出结构

结果会保存到:
experiments/{benchmark}/{split}/{agent}/{timestamp}/
├── tasks/
│   ├── <task_id>/
│   │   ├── result.json
│   │   └── trajectory/
│   │       ├── screenshot-1.png
│   │       └── ...
└── tasks_eval_result/
    └── *_summary.json

进度查看

日志位于 output/logs/run/
ls -t output/logs/run | head -n 1
# 然后 tail 最新文件

5. 评估结果

执行评估

bubench eval \
  --data LexBench-Browser \
  --agent browser-use \
  --model-id bu-2-0 \
脚本会自动在 --agent / --model-id 对应的输出目录下选择最新的运行结果。

评估参数

参数说明默认值
--model-id运行时使用的 model_id(作为输出子目录名)回退到 agents.<agent>.active_model 对应的 model_id
--model评估用 LLM 模型config.yaml 中的 eval.model
--score-threshold成功阈值LexBench 60,其他 3
--force-reeval强制重评估false
--timestamp指定评估目录最新(自动识别)
--data-source数据源(仅 LexBench)local
--force-download重新下载数据(仅 LexBench)false

输出文件

评估结果保存在 tasks_eval_result/
  • 详细结果*_eval_results.json
  • 统计汇总*_summary.json

查看结果

cat experiments/{benchmark}/{split}/{agent}/{timestamp}/tasks_eval_result/*_summary.json

完整示例

# 1. 在根目录 config.yaml 中配置 Agent
vim config.yaml   # 编辑 agents.browser-use 部分

# 2. 运行推理(前 10 个任务)
bubench run \
  --agent browser-use \
  --data LexBench-Browser \
  --mode first_n \
  --count 10

# 3. 评估结果
bubench eval \
  --data LexBench-Browser \
  --agent browser-use \
  --model-id bu-2-0 \

# 4. 查看汇总
ls -lh experiments/LexBench-Browser/All/browser-use/*/tasks_eval_result/

常见问题

超时错误

问题:任务超出配置的超时时间 解决:在 config.yamlagents.<agent>.defaults.timeout 中调大超时时间,或在命令行传入 --timeout

缺少截图(LexBench-Browser)

问题:评估因缺少截图而失败 解决:确认 tasks/<task_id>/trajectory/ 下有截图,并查看运行日志定位失败原因。

模型 API 报错

问题:LLM API 调用失败 解决:检查 config.yaml 中的 API Key(推荐使用 $ENV_VAR 引用,将实际值写入 .env);评估阶段同样请确认 .env

下一步

  • 自定义 Benchmark:学习如何创建自定义基准测试(指南
  • 排行榜:提交结果到排行榜(详情
  • 高级配置:了解更多 Agent 参数(文档