昨天,人工智能初创公司 Anthropic 发布了一款引起轰动的新版本。他们发布了旗舰大型语言模型 Claude Sonnet 3.5的新版本。
这款新模型具有增强的推理能力、改进的编码技能、计算机使用和 200K 上下文窗口。然而,真正引起人们注意的是"计算机使用"部分,Anthropic 发布的演示应用程序迅速走红。
"计算机使用"的参考应用程序可在GitHub repo上找到。它是一个 docker 映像,可以在安装了 docker 的任何计算机上运行。
1、运行演示
演示可以配置为使用 Anthropic、AWS 或 Google Cloud 作为运行模型推理的后端。应用程序本身将作为 docker 容器在本地机器或你选择运行它的任何主机环境中运行。
我决定使用 Anthropic 选项。你必须创建一个帐户、支付并加载信用点才能使用 API。如果你有 Google Cloud 或 AWS 帐户,则需要确保在这些平台上启用了信用或计费。
创建 API 密钥并记下它。
由于我在 Windows 上运行,因此我必须稍微修改命令以启动 docker 容器:
SET ANTHROPIC_API_KEY=<YOUR_API_KEY>
docker run -e ANTHROPIC_API_KEY=%ANTHROPIC_API_KEY% -v c:/tmp/.anthropic -p 5900:5900 -p 8501:8501 -p 6080:6080 -p 8080:8080 -it ghcr.io/anthropics/anthropic-quickstarts:computer-use-demo-latest
第一次,它将拉取 docker 镜像,这可能需要一段时间:
运行"计算机使用"docker 镜像
演示准备就绪后,打开任何浏览器并导航到 http://localhost:8080/ 。
请查看这个视频,以了解实际体验:
使用 Claude"计算机演示"应用程序的视频录制
2、工作原理
应用程序中的所有内容都在容器化环境中运行,该环境无法访问你的计算机。被控制的计算机是运行在容器中的 Ubuntu 机器。你看到的屏幕是一个分屏,左侧是驱动程序应用程序的界面,右侧是 Ubuntu 机器的 VNC 远程屏幕视图。
<body>
<div class="container">
<iframe
src="http://localhost:8501"
class="left"
allow="fullscreen"
></iframe>
<iframe
src="http://localhost:6080/vnc.html?view_only=1&autoconnect=1&resize=scale"
class="right"
allow="fullscreen"
></iframe>
</div>
</body>
演示应用程序的界面
Claude Sonnet 模型不直接控制计算机,但这个版本经过训练可以理解屏幕上的内容。它也是一个多模态模型,这意味着它可以理解图像和视频。
来自博客的说明:
当开发人员要求 Claude 使用计算机软件并授予其必要的访问权限时,Claude 会查看用户可见内容的屏幕截图,然后计算移动光标需要垂直或水平移动多少像素才能点击正确的位置。训练 Claude 准确计算像素至关重要。如果没有这项技能,模型很难发出鼠标命令------就像模型经常难以回答看似简单的问题,例如"香蕉"这个词中有多少个 A?"。
因此,当你指示 Claude 打开网站并执行某个操作时,它将为其可用的工具生成指令。在这种情况下,Claude 使用 Unix shell 工具以及名为 xdotool 的库。后者库可以模拟键盘和鼠标的移动和点击。它还使用"编辑"工具来编辑文件------这对于 Claude 需要编写脚本和运行代码的情况很有用。
Claude 生成的示例指令:
Tool Use: computer
Input: {'action': 'mouse_move', 'coordinate': [450, 100]}
如果观看上面的视频,你会注意到 Claude 会不断引用屏幕截图工具,因为这样它才能"看到"正在发生的事情。
这就是它非常慢的原因,因为对于每条指令,它可能需要"查看"屏幕,这意味着要截取新的屏幕截图。当然,还有为每个步骤运行多模式提示的开销。
Claude Sonnet"控制"计算机
我的示例视频中的会话花费了多少?
- API 使用量:0.88 美元
- 输入令牌:275,219
- 输出令牌:3,895
3、总体评估
仅从成本来看,这显然还远远没有达到生产水平。它也非常慢,并且经常超过 API 速率限制。对于任何简单的任务,它都需要反复查看屏幕,这意味着更多的屏幕截图和令牌消耗。
然而,Anthropic 创建了一个具有引人注目的功能的模型,该模型"理解"如何操作计算机、调用程序、移动鼠标等。令人印象深刻的是,他们已经克服了屏幕尺寸、分辨率等挑战。该模型能够在执行基于浏览器的任务时很好地导航广告弹出窗口。
为了在我们自己的机器上使用 Claude 的计算机使用能力,我们将不得不编写大量的驱动程序代码------这些代码可以理解 Claude 的指令并执行它们。如果没有给定屏幕尺寸和其他参数,模型将无法正常工作。
最近,人们对代理框架和模型的推动力很大。微软、Salesforce 和其他公司都在朝着这个目标努力。Anthropic 的工作为代理的未来创造了一个重要的里程碑。