让AutoGPT智能体控制Chrome浏览器,自动完成网页浏览、点击与表单填写任务。
LangChain提供智能体编排与记忆管理,Selenium驱动Chrome执行页面操作,GPT负责决策。
方案简介
Chrome-GPT 是一个实验性的 AutoGPT 智能体项目,它利用 LangChain 和 Selenium 让 AutoGPT 智能体接管整个 Chrome 浏览器会话。智能体可以在网页上交互式地滚动、点击和输入文本,从而自主地导航和操作网页内容。
它解决的问题是:把大语言模型的规划能力与浏览器自动化结合起来,让 AI 自主完成需要浏览网页的任务。例如官方演示中,给定提示词 Find me a bar that can host a 20 person event near Chelsea, Manhattan evening of Apr 30th. Fill out contact us form if they have one with info: Name Richard, email he@hrichard.com.,智能体便能自动搜索场地并填写联系表单。
适合对 AI 智能体与浏览器自动化感兴趣的实验者、开发者。需要注意这是实验性项目,可能会采取错误操作并导致严重后果,请自行斟酌使用。
亮点与能力
- 🌎 Google 搜索:智能体可执行 Google 搜索获取信息
- 🧠 长期与短期记忆管理
- 🔨 Chrome 操作:描述网页、滚动到元素、点击按钮/链接、填写表单、切换标签页
- 🤖 支持多种智能体类型:Zero-shot、BabyAGI 和 Auto-GPT
- 🔥 (开发中)Chrome 插件支持
组成与分工
- AutoGPT:智能体框架,负责任务规划与自主循环执行
- LangChain:提供智能体编排、记忆管理与模型调用
- Selenium:浏览器自动化工具,驱动 Chrome 完成滚动、点击、输入等页面操作
- Chrome:被控制的浏览器会话,承载网页交互
- GPT-4 / GPT-3.5:OpenAI 模型,作为智能体的推理大脑(GPT-4 为推荐选项)
- Poetry:Python 依赖管理与运行环境工具
前置要求
运行本项目需要:
- Chrome
- Python >3.8
- 安装 Poetry
同时需要设置 OpenAI API Keys 并配置 OPENAI_API_KEY 环境变量;如使用 GPT-4 模式则需要 GPT-4 访问权限。
实施步骤
1. 配置 OpenAI API Key
Set up your OpenAI API Keys 并添加 OPENAI_API_KEY 环境变量。
2. 安装依赖
bash
poetry install
3. 进入 Poetry Shell
bash
poetry shell
4. 运行
bash
python -m chromegpt
备选:Docker 方式
更新 .env 文件后执行:
bash
source .env && docker-compose up
使用与配置要点
- GPT-3.5 用法(默认):
bash
python -m chromegpt -v -t "{your request}"
- GPT-4 用法(推荐,需要 GPT-4 访问权限):
bash
python -m chromegpt -v -a auto-gpt -m gpt-4 -t "{your request}"
- 查看帮助:
python -m chromegpt --help
主要命令行选项:
-t, --task:要执行的任务(必填)-a, --agent:智能体类型,可选 auto-gpt、baby-agi、zero-shot-m, --model:使用的模型--headless:无头模式运行-v, --verbose:详细模式运行--human-in-loop:人工介入模式,仅在使用 auto-gpt 智能体时可用
注意事项与常见问题
- 网页爬取功能有限,按钮和输入框有时不会出现在提示中。
- 响应时间慢,每个操作需要 1-10 秒运行。
- 有时 LangChain 智能体无法解析 GPT 输出。如果遇到此问题,可尝试指定其他智能体,例如:
python -m chromegpt -a auto-gpt -v -t "{your request}"。 - 这是实验性项目,可能会采取错误操作并导致严重后果,请自行斟酌使用。
优缺点
- ✓ 支持多种智能体类型
- ✓ 可自动搜索并填写表单
- ✕ 响应慢,每步1-10秒
- ✕ 爬取能力有限,元素易缺失
出处
本方案挖掘自开源项目 richardyc/Chrome-GPT,方案内容与实施命令均来自其 README 原文。
本方案由真实开源项目挖掘整理,实施命令均来自其 README 原文,安装使用请遵循项目开源协议。