是什么
为什么
当任务涉及跨应用流转、复杂 UI 交互或无 API 的遗留系统时,开发者与业务人员需要一种能“看懂屏幕并执行操作”的自动化能力。
怎么做
通过提供屏幕截图与操作指令,模型输出坐标或按键动作,由执行器在真实或虚拟环境中完成点击、输入与导航。
什么时候
适用于无开放 API 的桌面软件、跨多步骤的 GUI 工作流;不适用于有稳定 REST/SDK 接口的场景或高实时性要求任务。
FOCUS
先记住这些
不掌握就无法应对 UI 变化
传统 RPA 依赖固定控件树,Computer Use 通过多模态模型实时解析截图,自动适应布局微调与主题切换。
决定执行精度的核心机制
模型输出像素坐标需转换为系统级点击位置,必须处理 DPI 缩放、多显示器偏移与窗口动态位移。
最高频踩坑:状态不同步
异步加载、弹窗干扰或动画过渡会导致截图与实际操作脱节,需加入等待条件与状态校验步骤。
不可忽略的风险控制
直接操作系统存在误操作风险,必须设置操作白名单、频率限制、关键步骤确认与快速回滚机制。
PROBLEM / POSITION / INTERFACE
先弄清它为什么存在,以及谁在使用
-
01 解决的问题
需要自动化操作无 API 的桌面应用或跨多个 GUI 程序完成复杂流程。
传统 RPA 依赖固定坐标或控件树,UI 微调即失效;脚本维护成本极高。
- 成功标准
- 模型能稳定识别界面元素并执行正确操作,完成端到端任务且具备容错能力。
-
02 AI 生态位
作为 Agent 的执行层,连接视觉理解与系统动作,替代或增强传统 RPA。
- 上游
- 依赖多模态大模型(视觉理解)、屏幕捕获模块与动作执行器。
- 下游
- 为业务流程自动化、测试自动化与个人效率工具提供底层操控能力。
-
03 人的生态位
定义任务目标、验收结果、处理异常与设定安全边界。
- 适合使用
- 目标系统无 API、UI 相对稳定但偶有微调、任务可容忍秒级延迟。
- 不必使用
- 存在稳定 API/SDK、要求毫秒级响应、或涉及高敏感数据与不可逆操作。
-
04 独特价值
无需预定义控件树或录制脚本,通过视觉理解自适应 UI 变化,泛化能力强。
坐标精度受分辨率与缩放影响;多步任务易累积误差;需处理异步加载与弹窗干扰。
- 复杂度判断
- 复杂度不是功能数量,而是控制与验证成本。
INTERFACE FLOW
谁在操作,信息怎样流动
-
WHO OPERATES
HUMAN设定任务目标、提供初始上下文、验收结果与处理异常
MODEL解析屏幕图像,输出坐标、点击或键盘操作指令
SYSTEM执行动作、捕获新屏幕状态并反馈给模型形成闭环
-
INPUT
当前屏幕截图、任务描述、历史操作序列与上下文信息。
-
CONTROL
操作频率限制、安全沙箱、坐标映射策略、重试机制与人工介入阈值。
-
OUTPUT
结构化动作指令(坐标/按键/滚动),执行后返回新屏幕状态与任务完成信号。
FLOW
最小执行闭环
01观察捕获当前屏幕状态,提取任务相关区域与上下文
02决策模型分析图像,输出下一步操作类型与目标坐标
03执行与验证执行动作后捕获新状态,校验是否达成预期或需重试
CODE / PYTHON最小 Python 调用
import os
import base64
from openai import OpenAI
# 初始化客户端
client = OpenAI(api_key=os.environ["API_KEY"])
# 模拟屏幕截图(实际应使用 pyautogui.screenshot)
with open("screenshot.png", "rb") as f:
img_b64 = base64.b64encode(f.read()).decode()
# 调用多模态模型
resp = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "你是一个桌面操作助手。输出 JSON:{\"action\": \"click\", \"x\": 100, \"y\": 200}"},
{"role": "user", "content": [
{"type": "text", "text": "点击登录按钮"},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b64}"}}
]}
],
response_format={"type": "json_object"}
)
import json
action = json.loads(resp.choices[0].message.content)
print(f"执行操作: {action['action']} 坐标: ({action['x']}, {action['y']})")最短闭环:读取截图 → 调用多模态模型 → 解析动作指令。真实环境需替换截图源与坐标执行逻辑。
JSON / RESPONSE典型返回(示意)
{
"id": "chatcmpl-xxx",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "{\"action\": \"click\", \"x\": 450, \"y\": 320}"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 1500,
"completion_tokens": 25,
"total_tokens": 1525
}
}PRACTICE
上线前检查清单
✓已处理多显示器与 DPI 缩放导致的坐标偏移
✓已设置操作频率限制与防抖机制
✓已定义关键操作的人工确认或二次校验步骤
✓已实现异常状态检测(弹窗、加载失败、网络错误)
✓已配置操作日志与快速回滚路径
FAQ
常见问题
01Computer Use 和传统 RPA 有什么区别?+
RPA 依赖预定义控件树或录制脚本,UI 变化即失效;Computer Use 通过视觉理解自适应界面,泛化更强但延迟更高。
避免在已有稳定 API 或简单 UI 场景过度使用复杂方案。02最小可用方式是什么?+
截图 → 多模态模型解析 → 输出坐标 → 系统执行点击/输入,形成单步闭环。
帮助快速验证可行性,避免一开始构建复杂多步流程。03什么时候不需要它?+
目标系统有 REST/SDK 接口、要求毫秒级响应、或涉及高敏感数据与不可逆操作时。
控制系统成本与风险,优先选择更稳定、可审计的方案。04如何防止误操作?+
设置操作白名单、频率限制、关键步骤确认、沙箱环境与快速回滚机制。
直接控制系统存在破坏性风险,必须建立安全边界。NEXT