浏览器自动化库Browser-Use:让大型语言模型与网站互动的新工具

在当今数字化时代,自动化技术正变得越来越重要。尤其是在网页自动化领域,它能够帮助我们节省大量的时间和精力,完成重复性的任务。最近,一个名为Browser-Use的开源网页自动化库引起了广泛关注,它允许大型语言模型(LLM)与网站互动,通过简单的接口实现网页自动化操作。本文将详细介绍这个库的功能、安装方法以及如何使用它来完成一些实际的任务。

Browser-Use简介

Browser-Use是一个开源的网页自动化库,它通过提供一个简单的接口,让LLM能够与网站进行互动。这个库支持多标签管理、XPath提取和视觉模型处理,使得自动化网页操作变得更加简单和高效。

主要特点

  • 通用LLM支持:Browser-Use可以与任何语言模型配合使用,包括但不限于LangChain支持的模型。
  • 交互元素检测:自动检测网页上的交互元素,无需手动检查。
  • 多标签管理:无缝处理浏览器标签,方便进行多任务操作。
  • XPath提取:用于抓取功能,无需手动检查DevTools。
  • 视觉模型支持:处理视觉页面信息,提高自动化的准确性。
  • 自定义动作:添加自己的浏览器交互,例如将数据添加到数据库,以便LLM使用。
  • 动态内容处理:不用担心cookies或内容变化问题。
  • 链式思维提示与记忆:解决长期任务。
  • 自我纠正:如果LLM犯错,代理将自我纠正其行动。

支持的模型

Browser-Use支持所有LangChain聊天模型,包括但不限于GPT-4o、GPT-4o Mini、Claude 3.5 Sonnet和LLama 3.1 405B。这些模型都是当前领先的大型语言模型,能够处理各种复杂的语言相关任务。

安装与使用

安装

首先,你需要创建一个虚拟环境并安装Browser-Use及其依赖项。推荐使用uv来创建虚拟环境,并使用pip安装Browser-Use:

bash

pip install .

然后,将你的API密钥添加到.env文件中。例如,对于OpenAI,你需要添加:

plaintext

OPENAI_API_KEY=

使用示例

下面是一个简单的使用示例,展示了如何使用Browser-Use来获取Hacker News上的前10个帖子的标题、分数和小时数,并计算每个帖子的分数每小时比率:

python

from langchain_openai import ChatOpenAI
from browser_use import Agent

agent = Agent(
    task="Go to hackernews on show hn and give me top 10 post titles, their points and hours. Calculate for each the ratio of points per hour.",
    llm=ChatOpenAI(model="gpt-4o"),
)

# ... inside an async function
await agent.run()

高级示例

Browser-Use还支持链式代理,允许你跨多个代理持久化浏览器状态。例如,你可以在一个代理中打开几个VC网站的标签页,然后在另一个代理中获取这些公司创始人的名字:

python

from asyncio import run
from browser_use import Agent, Controller
from dotenv import load_dotenv
from langchain_anthropic import ChatAnthropic
load_dotenv()

# Persist browser state across agents
controller = Controller()

# Initialize browser agent
agent1 = Agent(
    task="Open 3 VCs websites in the New York area.",
    llm=ChatAnthropic(model="claude-3-5-sonnet-20240620", timeout=25, stop=None),
    controller=controller)
agent2 = Agent(
    task="Give me the names of the founders of the companies in all tabs.",
    llm=ChatAnthropic(model="claude-3-5-sonnet-20240620", timeout=25, stop=None),
    controller=controller)

run(agent1.run())
founders, history = run(agent2.run())

print(founders)

结论

Browser-Use作为一个强大的开源网页自动化库,为开发者提供了一个与网站互动的新工具。它不仅支持多种LLM模型,还提供了丰富的功能,如多标签管理、XPath提取和视觉模型处理,使得网页自动化变得更加简单和高效。随着技术的不断发展,Browser-Use有望在网页自动化领域发挥更大的作用,帮助开发者解决更多实际问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码农工具百宝箱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值