一、项目简介
项目地址: github.com/browser-use/browser-use
一句话描述:
让你的 AI 能够像真实用户一样,在浏览器中执行任务,比如搜索、比价、填写表单、下单购物等。
核心特点:
- 内置基于 Playwright 的浏览器驱动(支持 Chromium)
- 支持多种主流 LLM(OpenAI、Anthropic、Gemini、DeepSeek 等)
- 提供自然语言驱动的 Agent 任务执行能力
- 极易上手,仅需几行代码即可运行
- 支持 UI(Gradio)交互测试
二、使用快速入门
1️⃣ 安装依赖
pip install browser-use
playwright install chromium
2️⃣ 编写代码示例
from browser_use import Agent
from langchain_openai import ChatOpenAI
import asyncio
async def main():
agent = Agent(
task="Compare the price of GPT-4o and DeepSeek-V3",
llm=ChatOpenAI(model="gpt-4o"),
)
await agent.run()
asyncio.run(main())
只需提供一个任务(task)和语言模型,Agent 就会自动在浏览器中进行搜索、打开链接、读取信息、总结价格对比结果。
三、支持的 LLM 和 API 配置
在 .env
文件中添加对应的 API 密钥即可:
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
AZURE_OPENAI_API_KEY=
GEMINI_API_KEY=
DEEPSEEK_API_KEY=
也可以使用你自己的私有模型,框架可拓展性良好。
四、浏览器交互 UI 测试
你可以运行内置的 UI 界面进行交互测试:
pip install gradio
python examples/ui/gradio_demo.py
通过 Gradio 可视化界面,直接输入自然语言指令,如:
- “在淘宝上搜索最便宜的机械键盘”
- “帮我打开哔哩哔哩查看我关注的频道”
- “找出知乎关于 browser-use 的评价并保存为 Markdown 文件”
五、用例场景
场景 | 示例 |
---|---|
搜索引擎操作 | 比价、查资料、获取新闻 |
网页数据采集 | 从不同网页读取并归纳内容 |
表单自动填写 | 在线报名、提交工单等 |
Web 自动化测试 | 模拟真实用户操作 |
应用链式 Agent | 多轮任务协作,如搜索+提取+总结 |
甚至可以把它当作具备浏览器能力的 LangChain 工具链节点(tool)。
六、原理简述
- 任务解释:LLM 理解你的
task
字符串 - 计划生成:LLM 生成一系列动作(例如点击、输入、等待等)
- 浏览器驱动:由 Playwright 实际控制 Chromium 执行操作
- 信息提取:LLM 解析网页中的 DOM 文本,整理结构化信息
- 动作反馈:LLM 可根据反馈信息自动修正下一步动作
整个过程高度模块化,非常适合做多智能体系统(Multi-agent System)中的子 Agent。
七、与其他项目对比
项目 | 特点 | 备注 |
---|---|---|
browser-use | 自然语言控制浏览器,易用强大 | ⭐ 推荐 |
AutoGPT browser plugin | 仅限 AutoGPT 框架 | 使用门槛高 |
Selenium + LLM | 灵活但需写大量代码 | 适合定制化 |
Puppeteer | JS 为主,非 AI 优先设计 | 需繁琐编程逻辑 |
WebPilot (ChatGPT 插件) | 封闭系统 | 不支持本地或自托管开发 |
八、实践建议
- ✅ 可用于训练“网页导航”能力的微调任务
- ✅ 可与 LangChain / CrewAI 等框架无缝协作
- ✅ 可接入插件体系构建具备真实网页访问能力的 AI 助手
- ✅ 可用于打造专属自动化办公助手(如「帮我用钉钉请假」)
九、总结
browser-use 是当前 LLM + Web 浏览器能力最易用的开源项目之一。它弥合了“自然语言指令”和“真实浏览器动作”之间的鸿沟,让 AI 不再只停留在语言理解,而是走向了行动执行。
📌 如果你正在打造 Agent、RAG 系统、浏览器自动化平台,不妨试试这个小而强的框架。