开源 CUA 大战本周开打:OpenCUA、UI-TARS-1.5 前后脚开源,27k 星的 trycua/cua 如何守擂
【免费下载链接】cuaScale computer-use 2.0 with open-source drivers, cross-OS fleets, and benchmarks for training, evaluation, and data generation.项目地址: https://gitcode.com/GitHub_Trending/cua/cua
本周,计算机使用智能体(Computer-Use Agent,下称 CUA)赛道迎来罕见的"双模型撞车":字节 Seed 把 UI-TARS-1.5 的权重开源并亮出多项 SOTA 战绩;港大与 Kimi 团队前后脚放出 OpenCUA,主打"人人可造专属电脑智能体"。当"模型派"开始成建制地开源,那个长期盘踞 GitHub 趋势榜、被社区称为"Cua"的 27k 星仓库 trycua/cua 反而显得安静——它没有新权重可发。
但把仓库拆开看会发现,它的护城河从来不在模型权重,而在模型之下的"电脑层":跨三操作系统的驱动(Cua Driver)、沙箱与本地虚拟机运行时(SDK/CLI + Lume)、评测与数据工厂(Cua Bench),以及一套把 OpenCUA、UI-TARS 直接"吃掉"当自家组件的模型无关适配层。本文基于仓库源码逐行核对,回答一个问题:模型阵营集体开源的这几天,trycua/cua 是被围剿,还是恰好被抬到了更高的生态位。
一、两位挑战者:SOTA 战绩与"人人可造"的叙事
先给模型派记分。
UI-TARS-1.5(ByteDance Seed):UI-TARS 系列的第二代开源权重。trycua/cua 仓库自己的博客在对比各模型能力时引用了它的基准数据,这张表也是目前社区引用率最高的"OS 操作能力"坐标系之一:
| Benchmark | UI-TARS-1.5 | OpenAI Cua | Claude 3.7 | 此前 SOTA | Human |
|---|---|---|---|---|---|
| OSWorld(100 步) | 42.5 | 36.4 | 28.0 | 38.1(200 步) | 72.4 |
| Windows Agent Arena(50 步) | 42.1 | — | — | 29.8 | — |
| WebVoyager | 84.8 | 87.0 | 84.1 | 87.0 | — |
| Online-Mind2Web | 75.8 | 71.0 | 62.9 | 71.0 | — |
| AndroidWorld | 64.2 | — | — | 59.5 | — |
(上表出自 Cua 团队维护的模型能力对照:blog/build-your-own-operator-on-macos-2.md)
这张表透露的信息比分数本身更重要:UI-TARS-1.5 的强项集中在OS/桌面级任务(OSWorld、Windows Agent Arena 双双刷新 SOTA),浏览器场景 OpenAI Cua 仍保留 2 个百分点优势。Cua 团队的选型结论也因此写得很直白:"需要更强 OS/桌面能力和低延迟自动化时选 UI-TARS Loop"。对一个开源模型而言,"在最难打的原生桌面场景上超过闭源 API",就是它能快速出圈的原因。
OpenCUA(港大 & Kimi):走的是另一条叙事——"人人可造专属电脑智能体"。与 UI-TARS 主打综合智能体不同,OpenCUA 是典型的 grounding(界面定位)模型:给一张截图和一句"点这里",它输出click(x=..., y=...)。7B 级权重开源,意味着开发者可以在本地起一个 OpenAI 兼容端点,自己组装智能体循环,不必依赖任何云 API。同期中文社区出现了一整批"截图 + 多模态模型 + pyautogui"手写 CUA 的教程潮,阿里的 Qwen-CUA(397B MoE)等模型也在此前后发布——"人人可造"不是口号,而是工程事实:一个视觉定位模型 + 一个键鼠执行器,最小可用 CUA 就闭环了,而这两个部件现在都是开源的。
模型派这一轮攻势,本质上是把 CUA 栈里"最贵"的智力层免费化了。接下来看 trycua/cua 手里还攥着什么。
二、生态位:卖"电脑",不卖"大脑"
打开 README.md,第一句话是 "Give AI agents computers they can use."——注意,不是 "Give AI agents a brain"。仓库自我定位是四件套:
- Cua Driver:跨 macOS/Windows/Linux 的桌面自动化驱动,通过 CLI、MCP 或类型化 SDK 接入,支持"后台投递"——智能体干活时不动你的指针、不抢焦点;
- Cua SDK + CLI:一条
cua命令和 Rust 核心,管本地虚拟机、gVisor/Docker 容器、云端沙箱;沙箱内的 cua-spacesd 守护进程在 3211 端口暴露进程、文件、截屏与输入能力; - Lume:基于 Apple Virtualization.Framework 的本地 macOS/Linux 虚拟机管理,M 系列芯片上从 Apple 恢复镜像创建 Tahoe 虚拟机并 SSH 接入;
- Cua Bench:建任务、跑评测、导出训练轨迹的基准与 RL 环境。
仓库架构图把生态位画得很清楚(img/cua-architecture.png):整个栈被切成 Environment / Execution / Intelligence 三层,最右一列 "Agent Framework" 标注着100+ VLM Options、"Pre-built agent loops"、"Bring Your Own Key"。换句话说,trycua/cua 从设计上就把"大脑"外置为可插拔组件——模型派开源的不是威胁,而是给它补上了免费、可本地化的选项。
商业结构同样自洽:仓库绝大部分代码(SDK、CLI、Driver、Lume、Bench)是 MIT;只有 Cua Spaces 应用层走 FSL-1.1-MIT(源可用、不可提供竞品托管服务、每个版本两年后转 MIT),见 LICENSING.md 与 COMMERCIAL.md。它卖的是"给你的智能体一台电脑"的运行时与服务,模型层恰恰是它最不需要独占的部分。
三、源码级证据:OpenCUA 与 UI-TARS 早已是 Cua 的"内置组件"
最能说明"守擂"姿势的,不是 README 措辞,而是 libs/python/agent/ 下的 agent loop 目录。Cua 把每个模型厂商的怪癖封装成独立的Agent Loop,用正则注册——模型名一换,大脑即换:
@register_agent(models=r"(?i).*OpenCUA.*") # loops/opencua.py @register_agent(models=r"(?i).*ui-?tars-?2.*") # loops/uitars2.py逐个看细节,才能理解"模型无关"要吞掉多少脏活。
OpenCUA Loop 的坐标工程(libs/python/agent/cua_agent/loops/opencua.py):OpenCUA 端点不理会 provider 侧的像素提示,所以 Cua 在发送前真的重编码图片——用qwen_vl_utils.smart_resize按factor=28、max_pixels=12845056缩放,并记住缩放系数,把模型返回的坐标反向映射回原始分辨率:
MIN_PIXELS = 3136 MAX_PIXELS = 12845056 FACTOR = 28 rh, rw = smart_resize(orig_h, orig_w, factor=FACTOR, min_pixels=MIN_PIXELS, max_pixels=MAX_PIXELS) # ... def _rescale(x: int, y: int) -> Tuple[int, int]: if last_orig_w and last_orig_h and last_rw and last_rh: return _rescale_coordinate(x, y, last_orig_w, last_orig_h, last_rw, last_rh) return (x, y)输出解析同样为 OpenCUA 定制:优先匹配其原生的click(x=..., y=...)(extract_coordinates_from_click还兼容旧式pyautogui.click(...)输出),再退到 `
【免费下载链接】cuaScale computer-use 2.0 with open-source drivers, cross-OS fleets, and benchmarks for training, evaluation, and data generation.项目地址: https://gitcode.com/GitHub_Trending/cua/cua
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考