OSWorld
在真实桌面虚拟机中评测多模态计算机操作智能体。
按维度查看评分与理由
证据显示:仓库未提供权限管理、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的明确机制。README 提到需要 Google 账号和代理配置,但未说明数据如何被处理或保护。因此所有信任标准得分为 0。
证据显示:存在多个测试文件(如 test_gpt54_infeasible.py、test_maestro_minimax_provider.py、test_muse_spark_infeasible_keywords.py),表明有一定的一致性测试。依赖列表在 pyproject.toml 和 requirements.txt 中列出,但未提供版本锁定或完整性校验。失败消息在 README 中有提及(如 Docker 清理命令),但未系统化。因此自一致性、依赖可用性和失败消息各得 1 分。
证据显示:README 详细说明了多种部署场景(VMware、VirtualBox、Docker、Modal、Daytona、AWS),并提供了快速入门和实验指南,因此受众和场景得 2 分。能力边界在 README 中部分说明(如需要 Google 账号和代理),但未明确列出所有限制,因此能力边界得 1 分。触发精度方面,提供了命令行参数示例,但未详细说明触发条件,因此得 1 分。环境适配方面,支持多种平台,但未提供详细的系统要求,因此得 2 分。
证据显示:README 结构清晰,包含安装、快速入门、实验、评估、FAQ 等章节,信息架构得 2 分。安装说明详细,包括依赖安装和平台特定步骤,得 2 分。命名稳定性方面,项目名称和版本在 pyproject.toml 中定义,但未提供命名约定文档,得 1 分。示例和 FAQ 部分提供了多个示例命令和常见问题解答,得 2 分。已知限制在 README 中部分提及(如 macOS 不支持 KVM),但未全面列出,得 1 分。许可证为 Apache-2.0,得 2 分。版本和变更日志方面,README 有更新记录,但未提供正式的 CHANGELOG,得 1 分。维护责任方面,README 列出了维护者邮箱,但未明确责任范围,得 1 分。
证据显示:输出可用性方面,README 说明了结果保存为截图、动作和视频,并提供了 show_result.py 脚本,得 2 分。边际价值方面,作为基准测试框架,提供了多种模型和平台支持,得 2 分。成本效益方面,未提供成本估算或性能数据,得 1 分。
证据显示:声明可追溯性方面,README 引用了论文和网站,但未提供具体数据来源,得 1 分。跨来源佐证方面,有多个测试文件,但未提供外部验证,得 1 分。事实与推断分离方面,README 区分了事实(如安装步骤)和推断(如性能声明),但未明确标注,得 1 分。
- 仓库未提供权限管理或用户确认机制,运行代理可能执行任意操作,需谨慎使用。
- 依赖列表未锁定版本,存在供应链风险。
- README 提到需要 Google 账号和代理配置,但未说明数据隐私保护措施。
- 未提供回滚机制,操作错误可能导致不可逆后果。
这个 Agent 能做什么,适合哪些场景?
OSWorld 是一个面向开放式真实计算机任务的多模态智能体基准与执行环境。它通过 `DesktopEnv` 启动 Ubuntu 或 Windows 虚拟机,并支持 VMware、VirtualBox、Docker、Modal、Daytona 和 AWS 等运行提供方。评测时,用户实现智能体接口后,可通过 `run.py` 或 `scripts/python/run_multienv.py` 执行任务;README 示例使用截图观测和 GPT-4o。运行结果写入指定的结果目录,包含截图、动作和任务完成过程的视频记录,并可由 `show_result.py` 汇总成功率。仓库也提供手动任务检查脚本,以及面向公开验证排行榜的评测流程。
先安装依赖并初始化 DesktopEnv,指定 provider_name、虚拟机路径或相应提供方配置。智能体从环境接收观测,例如 screenshot,再执行动作完成 evaluation_examples 中的任务;单环境可用 run.py,并行环境可用 scripts/python/run_multienv.py。执行过程会保存截图、动作和视频到 result_dir,随后 show_result.py 输出领域、类别和总体成功率;--detailed 会显示各领域的“score/total”。scripts/python/manual_examine.py 可针对指定 domain 和 example ID 人工执行、录制并核验任务。
- 研究团队需要在 Ubuntu 或 Windows 虚拟机中,用统一任务集比较截图驱动的计算机操作模型时。
- 智能体开发者实现了 OSWorld 的 agent interface,希望通过
run.py进行单环境回归评测时。 - 需要并行运行大量桌面任务的评测工程师,可在具备相应条件时使用 Docker、AWS 或其他已列提供方。
- 发现某个 LibreOffice 或其他领域任务异常的维护者,需要用
manual_examine.py复现并记录执行过程时。 - 希望将模型在公开验证排行榜上的结果由项目维护方核验的机构或团队。
这个 Agent 有哪些优点和局限?
- 将智能体置于真实桌面虚拟机中执行任务,而非只提供静态样本或纯文本评测。
- 同一
DesktopEnv覆盖 VMware、VirtualBox、Docker、Modal、Daytona 与 AWS 等多种运行提供方。 - 支持单环境和多环境并行执行,并保存截图、动作及视频,便于复核评测轨迹。
- 提供
show_result.py的领域、类别和总体统计,以及针对单任务的手动检查工具。
- 本地运行依赖 Python、虚拟化软件或 Docker;Docker 路径还建议具备 KVM 支持,macOS 主机通常不支持 KVM。
- VirtualBox 的并行能力和 Apple 芯片上的 macOS 支持被文档明确标为可能不足。
- 部分任务需要 Google 账号、OAuth2.0 或代理配置;配置缺失会导致相应任务失败并降低分数。
- 公开验证排行榜不是自助提交:需要与维护方安排运行,并提交可披露的实现和报告,或在可信机构条件下共享监控数据与轨迹。
如何安装或部署这个 Agent?
在 Python 3.10 或更高版本环境中执行:
git clone https://github.com/xlang-ai/OSWorld
cd OSWorld
pip install -r requirements.txt桌面或裸机部署还需安装 VMware Workstation Pro;Apple 芯片设备使用 VMware Fusion,并配置 vmrun,可用 vmrun -T ws list 验证。VirtualBox 是可选替代方案。若只安装环境而不带基准任务,可执行 pip install desktop-env。使用 Docker 提供方时,README 建议在 Linux 上先用 egrep -c '(vmx|svm)' /proc/cpuinfo 检查 KVM 支持,并安装 Docker。
如何使用这个 Agent?
最小验证可执行 python quickstart.py;若使用 VMware 虚拟机路径,可执行 python quickstart.py --provider_name vmware --path_to_vm "path/to/your/vm.vmx"。运行 README 中的 GPT-4o 基线前,设置 export OPENAI_API_KEY='changeme',随后可用 python run.py --provider_name vmware --path_to_vm Ubuntu/Ubuntu.vmx --headless --observation_type screenshot --model gpt-4o --sleep_after_execution 3 --max_steps 15 --result_dir ./results --client_password password。Docker 并行示例使用 scripts/python/run_multienv.py 和 --num_envs 10;结束后可运行 python show_result.py --detailed 查看细分结果。
这个 Agent 与同类方案有什么区别?
VMware 是桌面、笔记本和裸机部署的主要路径;VirtualBox 可作为替代,但并行与 Apple 芯片上的 macOS 支持可能较弱。Docker 面向服务器或不希望使用 VMware/VirtualBox 的场景,并建议使用 KVM;macOS 主机通常不支持 KVM,因此文档建议 macOS 使用 VMware。
常见问题
能直接评测自己的智能体吗?
run.py 或并行运行脚本中导入你的实现,再按对应命令运行任务。GPT-4o 基线需要什么凭证?
OPENAI_API_KEY;也可设置 OPENAI_BASE_URL 指向自定义 OpenAI 兼容端点。部分任务另需 Google 账号与 OAuth2.0 配置。评测失败或分数偏低,常见原因是什么?
结果会保存什么?
result_dir 后,结果包含截图、智能体动作和任务完成过程的视频记录;show_result.py 可汇总评分。