AI个人学习
和实操指南
豆包Marscode1

LangGraph CUA:基于 LangGraph 控制电脑操作的AI智能体

综合介绍

LangGraph CUA 是由 LangChain 团队开发的一个开源项目。它基于 LangGraph 框架,让开发者可以用 Python 打造能直接操作电脑的 AI 智能体。这个工具的核心是“Computer Use Agent”(CUA),可以模拟人类在电脑上的行为,比如点击、输入文字或浏览网页。它支持记忆功能、人机协作和实时输出,适合用来自动化重复任务或开发智能助手。项目代码开放,开发者可以自由下载、修改和使用,特别适合对 AI 自动化感兴趣的技术爱好者。

 

功能列表

  • 支持 AI 通过文字和语音控制电脑操作,比如打开软件、输入文字或点击按钮。
  • 提供短期和长期记忆功能,记住之前的操作和对话内容。
  • 内置人机协作模式,允许用户随时介入调整 AI 的行为。
  • 支持实时流式输出,操作过程可以逐步展示。
  • 集成 Scrapybara,能在虚拟机上运行 AI 代理并访问网页。
  • 允许开发者自定义工具和配置,灵活扩展功能。

 

使用帮助

LangGraph CUA 的安装和使用并不复杂,但需要一些基本的 Python 环境和 API 配置。下面是详细步骤,让你快速上手。

安装流程

  1. 准备环境
    确保你的电脑有 Python 3.8 或以上版本。可以用命令检查:
python --version

如果没有,请从 https://www.python.org 下载安装。

  1. 克隆项目
    在终端输入以下命令,把代码下载到本地:
git clone https://github.com/langchain-ai/langgraph-cua-py.git

下载完成后,进入项目文件夹:

cd langgraph-cua-py
  1. 安装依赖
    项目需要一些 Python 库,用这个命令安装:
pip install -r requirements.txt

如果遇到权限问题,可以加 --user

pip install -r requirements.txt --user
  1. 配置 API 密钥
    LangGraph CUA 需要 OpenAI 和 Scrapybara 的 API 密钥。先注册账号获取密钥,然后在终端设置环境变量:
export OPENAI_API_KEY=<你的OpenAI密钥>
export SCRAPYBARA_API_KEY=<你的Scrapybara密钥>

替换 <你的OpenAI密钥> 和 <你的Scrapybara密钥> 为实际值。Windows 用户可以用 set 替代 export

  1. 验证安装
    跑一个简单测试,确保环境没问题。进入项目目录,运行:
python -m langgraph_cua

如果没有报错,说明安装成功。

如何使用主要功能

LangGraph CUA 的核心是创建一个 AI 代理来操作电脑。下面是具体操作方法。

创建 AI 代理

在 Python 文件中导入并配置代理,比如:

from langgraph_cua import create_cua
cua_graph = create_cua()

这会生成一个默认的 AI 代理。如果你想用特定的虚拟机实例,可以加参数:

cua_graph = create_cua(auth_state_id="你的认证ID")

操作电脑

代理可以通过命令控制电脑。比如,让它打开浏览器:

cua_graph.invoke({"command": "open browser"})

或者输入文字:

cua_graph.invoke({"command": "type", "text": "你好,世界"})

这些命令会直接在电脑上执行。

使用记忆功能

代理能记住之前的操作。比如,先让它打开记事本:

cua_graph.invoke({"command": "open notepad"})

然后输入内容:

cua_graph.invoke({"command": "type", "text": "这是测试"})

下次调用时,它会知道记事本已经打开,直接继续操作。

人机协作

如果想手动调整,可以启用人机协作模式。运行时加参数:

cua_graph.invoke({"command": "click", "x": 100, "y": 200}, human_in_loop=True)

执行到这里,程序会暂停,等你确认或修改坐标。

实时输出

想看到每一步操作,可以用流式输出:

for step in cua_graph.stream({"command": "search web", "query": "天气"}):
print(step)

它会逐步显示搜索过程。

特色功能操作

集成 Scrapybara

Scrapybara 让代理能在虚拟机上运行,适合处理网页任务。配置时确保 API 密钥正确,然后运行:

cua_graph.invoke({"command": "browse", "url": "https://example.com"})

代理会在虚拟机里打开网页并操作。

自定义工具

你可以加自己的工具。比如,定义一个计算器工具:

def calculator(a, b):
return a + b
cua_graph = create_cua(tools=[calculator])

然后调用:

cua_graph.invoke({"command": "calculate", "a": 5, "b": 3})

结果会返回 8。


这些步骤和代码能让你快速上手 LangGraph CUA,无论是简单任务还是复杂定制都可以实现。

 

应用场景

  1. 自动化办公
    用 AI 代理批量处理文件,比如打开 Excel,输入数据并保存,省去重复操作。
  2. 网页数据抓取
    让代理访问网站,提取信息,比如自动收集新闻标题或价格数据。
  3. 智能助手开发
    打造一个能听语音指令的助手,比如说“打开邮件”或“搜索文档”,直接执行。
  4. 教育和培训
    在教学中展示 AI 如何模拟人类操作电脑,帮助学生理解自动化原理。

 

QA

  1. 需要什么编程基础吗?
    需要基本的 Python 知识,比如会用命令行和写简单代码。如果不会,可以先学基础语法。
  2. 没有 API 密钥怎么办?
    去 OpenAI (https://openai.com) 和 Scrapybara 官网注册账号,申请密钥。免费额度可能有限,建议看清定价。
  3. 可以不用虚拟机吗?
    可以,但用 Scrapybara 的虚拟机更安全,能隔离操作环境,避免影响本地电脑。
  4. 支持中文指令吗?
    支持。只要 AI 模型能理解中文,输入中文指令一样有效。
未经允许不得转载:首席AI分享圈 » LangGraph CUA:基于 LangGraph 控制电脑操作的AI智能体
zh_CN简体中文