昨天,anthropic宣布推出升级版 Claude 3.5 Sonnet和新型号Claude 3.5 Haiku。更令人兴奋的是推出了人类首个提供计算机使用功能的前沿 AI 模型,并提供相关API,目前处于公开测试阶段。也就是说现在大模型可以模拟人类操控我们的电脑了!
本篇文章,我将通过 效果、成本两个维度进行测评,并通过官方提供的demo示例解释一下Computer use 背后的主要机制。
PART 1:Computer use (beta)
这是Claude 发布的计算机使用功能官方命名:Computer use (beta),升级后的 Claude 3.5 Sonnet 模型能够与操纵计算机桌面环境的工具进行交互。
其中官方文档也说明了整个工作流的机制并提供了相关demo例子。
在使用计算机方面,我们正在尝试一些全新的事物。我们不是制作特定工具来帮助 Claude 完成单个任务,而是教它通用的计算机技能——允许它使用为人类设计的各种标准工具和软件程序。
官方文档:https://docs.anthropic.com/en/docs/build-with-claude/computer-use
本质上还是通过工具调用,只是相对以往简单的API和函数工具,现在让大模型感知了计算机的整体环境,并通过调用相关操作系统工具包进行环境交互。
PART 2:测评Computer use (beta)
刚刚拉下来跑了一下,Computer use (beta)的效果确实很惊艳,成本方面比预期稍微贵了点。
环境部署
地址:https://github.com/anthropics/anthropic-quickstarts/tree/main/computer-use-demo
因为目前Computer use 还处于实验阶段,考虑到安全性问题,官方的demo示例是专门为 Linux 系统设计的,暂时不适用于 Windows。根据官方文档,首先拉取并运行Docker容器:
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
等几分钟,显示以下结果便说明环境部署成功。
包含代理聊天和桌面视图的组合界面: http://localhost:8080 仅限 Streamlit 界面:http://localhost:8501 仅限桌面视图:http://localhost:6080/vnc.html 直接 VNC 连接:( vnc://
localhost:5900
适用于 VNC 客户端)
3. 仅限桌面视图
测评
操作系统的环境:打开浏览器 浏览器环境:打开hellomiku.com网页 网页环境:网页内进行搜索
step1: 输入指令
step2: 打开浏览器
{'action': 'screenshot'}
进行界面截图,定位浏览器图标位置,获取图标参数信息'coordinate': [804, 736]
,并调用{'action': 'mouse_move'}将鼠标移到过去,然后调用 {'action': 'left_click'}点击打开浏览器。(其中不同工具的参数和作用会在最后一部分进行详细解释。)step3: 输入网址
同样重复step2步骤,先截图获取位置参数,然后移动鼠标进行点击。这里还调用了键盘工具进行输入{'action':'type','text':'
hellomiku.com
'}
以及{'action':'key','text':'Return'}
进行回车执行。
step4: 网页进行搜索
重复步骤3进行执行。{'action': 'type', 'text': '详细介绍一下claude最新发布的computer use'}
以及{'action': 'key', 'text': 'Return'}
step5: 下滚查看网页
执行{'action': 'key', 'text': 'Page_Down'}
命令进行模拟鼠标往下滚动以查看更多内容。
step6: 总结并导出md文件
使用命令进行保存。{'command': 'create', 'path': '/tmp/claude_computer_use_info.md', 'file_text': '# Claude最新发布的Computer Use功能详细介绍\n..'}
主要工作流:
与不同的 Anthropic API 提供商(Anthropic、Bedrock、Vertex)进行交互 处理系统提示和消息 管理工具调用和结果处理 处理图像和文本内容 提供一个异步的采样循环来持续处理请求和响应
三大核心工具类:
其中Computer use (beta)中发挥关键作用的还有相关的工具包,官方代码示例中主要提供了三个核心工具类,分别的功能和工作方式如下:
|
|
|
|
|
|
其中,每一个工具包都使用了统一的 ToolResult 返回格式:
class ToolResult:
output: str | None # 输出内容
error: str | None # 错误信息
base64_image: str | None # 图片数据
system: str | None # 系统消息
调用流程:
通过将以上的工具类整合进行创建工具集合,然后执行工具调用。
# 1. 创建工具集合
tools = ToolCollection(
ComputerTool(),
EditTool(),
BashTool()
)
# 2. 执行工具调用
result = await tools.run(
name="computer", # 工具名称
tool_input={ # 工具参数
"action": "screenshot"
}
)
虽然我们预计这种能力将在未来几个月内迅速提高,但 Claude 目前使用计算机的能力并不完美。人们毫不费力执行的一些操作(滚动、拖动、缩放)目前对 Claude 提出了挑战,我们鼓励开发人员从低风险任务开始探索。由于计算机的使用可能会为垃圾邮件、错误信息或欺诈等更常见的威胁提供新的载体,因此我们正在采取积极主动的方式来促进其安全部署。
总的来说,Agent 的诞生和发展正验证了一个不可逆转的趋势——它将成为未来不可或缺的力量。未来Agent 不仅会逐步替代重复繁琐的手动任务,更将重构我们的工作方式。
它带来的高效和智能,正在引领我们迈向一个前所未有的未来,在这个未来,人与科技的协作将达到新的高度,而人类的创造力将得到进一步释放。
相信,Agent 的潜力还远未被发掘,而它的崛起,必将为我们开辟更多可能性。
关注公众号,用极客视角洞察未来!
往期产品实测精彩文章:
1.不懂代码的人也可以用Cursor,5分钟快速完成一个简单的支付页面;