第 89 页 / 共 100 页 / 飞书修订版 6

8.How Computer use works

此文档由 学习AI的1000天 翻译制作(抖音,B站,YouTube)

邮箱: szqshan@gmail.com | 微信: szqshan
网址: www.xueai.org

==================================================

Claude 中的计算机使用功能与常规工具使用的工作原理完全相同——它只是同一底层工具系统的特殊实现。理解这种联系会让计算机使用功能变得更容易理解和实现。

Tool Use Refresher

在深入了解计算机使用功能之前,让我们快速回顾一下 Claude 的常规工具使用是如何工作的:

image1.jpeg
  1. 你向 Claude 发送用户消息以及工具模式定义
  2. Claude 判断需要使用工具来回答问题
  3. Claude 响应一个工具使用请求,包含工具名称和输入参数
  4. 你的服务器运行实际的函数并返回结果
  5. 你将结果通过工具结果消息发送回 Claude

例如,如果有人问"旧金山的天气如何?",你会提供一个 get_weather 工具模式定义。Claude 会使用位置参数调用该工具,你的代码会获取天气数据,然后你将"晴天"的结果返回给 Claude。

image2.jpeg

计算机使用:相同流程,不同工具

计算机使用功能遵循完全相同的模式。关键洞察是计算机使用功能是作为一个工具来实现的——只是一个可以与桌面环境交互的非常特殊的工具。

image3.jpeg

以下是具体的工作流程:

  • 你包含一个工具模式,该模式提供计算机交互功能
  • Claude 决定使用计算机工具
  • 你不是运行一个简单的函数,而是在计算环境中执行请求的操作
  • 你将结果(如屏幕截图)发送回 Claude

计算机工具模式

计算机使用工具模式开始时很简单,但会自动扩展为更加全面的功能:

image4.jpeg

你发送一个基本模式,如:

{

"type": "computer_20250124",

"name": "computer",

"display_width_px": 1024,

"display_height_px": 768,

"display_number": 1

}

在后台,这会被扩展成一个详细的模式,告诉Claude它可以执行以下操作:

  • key - 按下键盘按键
  • mouse_move - 移动光标
  • left_click - 在特定坐标处点击
  • screenshot - 截取屏幕截图
  • scroll - 滚动屏幕

计算环境

要让计算机使用功能正常工作,你需要一个真实的计算环境来以编程方式执行这些操作。最常见的方法是使用带有桌面环境(如Firefox)的Docker容器。

当Claude请求执行诸如"点击坐标(500, 300)"这样的操作时,你的系统会:

  1. 接收工具使用请求
  2. 在Docker容器中执行鼠标点击
  3. 对结果进行截图
  4. 将截图发送回Claude

Docker容器不需要很复杂——它只需要支持编程式的键盘和鼠标交互即可。

Getting Started

你不需要从零开始构建计算环境。Anthropic提供了一个参考实现,处理所有技术细节。

image5.jpeg

设置过程很简单:

  1. 安装Docker(你可能已经安装了)
  2. 使用你的 API 密钥运行提供的 Docker 命令
  3. 访问 Web 界面与 Claude 聊天

设置命令如下所示:

export ANTHROPIC_API_KEY="your_api_key"

docker run \

-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \

-v $HOME/.anthropic:/home/computeruse/.anthropic \

-p 5900:5900 \

-p 8501:8501 \

-p 6080:6080 \

-p 8080:8080 \

-it ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest

image6.jpeg

运行后,你将可以访问一个聊天界面,在其中可以直接测试 Claude 的计算机使用功能。完整的设置指南可在 github.com/anthropics/anthropic-quickstarts 获取。

Key Takeaway

计算机使用并不是魔法——它只是将常规工具使用系统应用于桌面自动化。Claude 并不直接控制计算机;相反,它发出工具请求,由你的代码在受控环境中执行操作来完成这些请求。这使得计算机使用既强大又安全,因为你始终完全控制着实际执行的操作。

==================================================



此文档由 学习AI的1000天 翻译制作(抖音,B站,YouTube)
邮箱: szqshan@gmail.com | 微信: szqshan
网址: www.xueai.org