数据截至 (上游 commit fac568eea7da)
Self-Operating Computer Framework — 架构与原理
30 秒导读: Self-Operating Computer(简称 SOC)是 2023 年 11 月最早的"全电脑操作"demo 之一。它让一个多模态大模型像人一样用电脑:截一张全屏截图发给模型,模型看图 + 目标,回一串动作(点这里、写这段字、按这个键、完成了),框架再用
pyautogui真的去移动鼠标、敲键盘。整个核心不到 300 行,是理解 computer-use agent 最干净的起点。
1. 这是什么(零基础也能懂)
一句话定义: SOC 是一个computer-use agent(电脑操作智能体)框架——你给它一句话目标("帮我在谷歌上搜一下今天的天气"),它就自主地截屏、思考、然后真的去点鼠标敲键盘,把这件事做完。
它的历史地位: README 明说它是 2023 年 11 月发布、最早的全 computer-use 例子之一。它不追求 SOTA 准确率,而是把"多模态模型操作电脑"这件事拆到最简、最好读。
解决什么问题 / 给谁用
设想你想让 AI 帮你干这种活:
- 打开浏览器,搜一个东西
- 在某个网页表单里填几个字
- 在 Google Docs 里新建一个文档
这些活的共同点:没有 API,只能靠"看屏幕 + 动鼠标键盘"。SOC 就是把这类"只能 用眼睛和手完成"的任务交给模型来做。给谁用:想研究 / 上手 computer-use 的开发者与研究者。
它能做什么
- 支持一堆多模态模型:GPT-4o、GPT-4.1、o1、Gemini Pro Vision、Claude 3、Qwen-VL、LLaVA(通过
-m切换)。 - 三种"把描述落到坐标"的定位法:OCR、Set-of-Mark(YOLO 框标注)、直接百分比。
- 语音输入目标(
--voice,基于 whisper)。 - 跨平台:Mac / Windows / Linux。
用起来什么样
最小使用就是命令行一句:
pip install self-operating-computer
operate
启动后它先问你"要做什么",你打一句目标,它就开始一轮轮截屏 + 操作。也可以直接把目标塞进命令行:
operate -m claude-3 --prompt "打开 Google 搜索今天的天气"
入口在 operate/main.py:9(main_entry),它把 -m/--model、--prompt、--voice、--verbose 解析后转交给真正的主循环 operate/operate.py:33(main)。
一句话直觉 / 类比
把它想成一个"盲操作代打": 你雇了个只能通过"每隔一秒给你看一张屏幕照片"来了解情况的助手。它每看一张照片,就告诉你"帮我点左上角那个蓝按钮",而你(框架)负责把这句话翻成"鼠标移到 (312, 88) 并单击"。模型是眼睛和大脑,框架是手,而两者之间的翻译层——把"那个蓝按钮"变成 (312, 88)——才是全篇最难的工程。
本节不碰底层。记住一件事:SOC = 一个不断"截屏→问模型→执行动作"的循环。