返回首页
最新
大家好,我们很高兴分享 Cua-Bench([https://github.com/trycua/cua](https://github.com/trycua/cua)),这是一个开源框架,用于评估和训练在不同环境下的计算机使用代理。
计算机使用代理在不同用户界面(UI)上的表现差异巨大——在 Windows 11 上成功率为 90% 的代理,在 Windows XP 上执行相同任务时可能仅为 9%。问题出在操作系统主题、浏览器版本和 UI 变体上,而现有的基准测试并未涵盖这些因素。
现有的基准测试(如 OSWorld、Windows Agent Arena、AndroidWorld)虽然很出色,但各自独立运行——不同的测试框架、不同的格式,没有标准化的方式来跨平台测试相同的代理。更重要的是,它们仅用于评估。我们需要能够生成训练数据并运行强化学习(RL)循环的环境,而不仅仅是测量性能。
Cua-Bench 采取了不同的方法:它是一个统一框架,标准化了跨平台的环境,并支持完整的代理开发生命周期——基准测试、训练、部署。
使用 Cua-Bench,您可以:
- 通过一个命令行界面(CLI)在多个基准测试中评估代理(本地任务 + OSWorld + Windows Agent Arena 适配器)
- 在不同的操作系统变体上测试相同的代理(Windows 11/XP/Vista、macOS 主题、Linux、通过 QEMU 的 Android)
- 从自然语言提示生成新任务
- 创建用于 RL 训练的模拟环境(如 Spotify、Slack 的 shell 应用,带有程序化奖励)
- 在代理评估之前运行 oracle 验证以验证环境
- 实时监控代理运行,查看运行轨迹和截图
所有这些功能都可以在 macOS、Linux、Windows 和 Android 上运行,并且可以自托管。
开始使用的方法:
安装 cua-bench:
```
% pip install cua-bench
```
运行基本评估:
```
% cb run dataset datasets/cua-bench-basic --agent demo
```
打开监控仪表板:
```
% cb run watch <run_id>
```
在多个工作进程中进行并行评估:
```
% cb run dataset datasets/cua-bench-basic --agent your-agent --max-parallel 8
```
想要在不同的操作系统变体上测试?只需指定环境:
```
% cb run task slack_message --agent your-agent --env windows_xp
% cb run task slack_message --agent your-agent --env macos_sonoma
```
从提示生成新任务:
```
% cb task generate "book a flight on kayak.com"
```
使用 oracle 实现验证环境:
```
% cb run dataset datasets/cua-bench-basic --oracle
```
模拟环境对于 RL 训练特别有用——它们是 HTML/JS 应用,可以在 10 多种操作系统主题上渲染,并进行程序化奖励验证。无需为训练循环启动实际的虚拟机。
我们看到团队使用 Cua-Bench 来:
- 在移动和桌面环境中训练计算机使用模型
- 生成大规模训练数据集(与实验室合作处理数百万张跨操作系统变体的截图)
- 使用 shell 应用模拟器进行 RL 微调
- 在操作系统主题和浏览器版本之间进行系统评估
- 构建任务注册表(与 Snorkel AI 合作进行任务设计和数据整理,类似于他们的 Terminal-Bench 工作)
Cua-Bench 完全开源,采用 MIT 许可证。我们正在积极开发它,作为 Cua([https://github.com/trycua/cua](https://github.com/trycua/cua))的一部分,这是我们的计算机使用代理 SDK,我们非常欢迎您的反馈、错误报告或功能建议。
GitHub: [https://github.com/trycua/cua](https://github.com/trycua/cua)
文档: [https://cua.ai/docs/cuabench](https://cua.ai/docs/cuabench)
技术报告: [https://cuabench.ai](https://cuabench.ai)
我们会在这里回答任何技术问题,期待您的评论!
在推出我的前几个应用后,我遇到了一个意想不到的问题:年轻儿童是最有可能点击我广告的群体,他们使用的是父母的手机或平板。这绕过了年龄限制,实际上还产生了累积效应:他们太小,无法拥有自己的设备(所以他们只是安装了应用却从未使用过),浪费了广告预算,最重要的是,导致目标用户群体偏向于像他们这样的用户——因此广告投放最终会更多地针对他们,因为他们最有可能点击广告!
这导致我的所有广告活动立即失败,无论我如何调整年龄限制(毕竟是父母的设备)。我已经更改了设置,停止在游戏和平板上展示广告,这稍微有所帮助,但并没有完全解决问题。
显然,我不可能在应用中添加真正的年龄验证功能。