摘要:现在 AI 应用越来越广泛,渗透到了我们生活和工作的各个领域。同时,浏览器又是人们访问互联网获取信息最常用的手段之一。如何把 AI 和浏览器连接起来,这引起了众多开发者和科技爱好者的关注。Browser Use,就能够实现 AI 对浏览器的控制,为我们带来全新
现在 AI 应用越来越广泛,渗透到了我们生活和工作的各个领域。同时,浏览器又是人们访问互联网获取信息最常用的手段之一。如何把 AI 和浏览器连接起来,这引起了众多开发者和科技爱好者的关注。Browser Use,就能够实现 AI 对浏览器的控制,为我们带来全新的交互体验。
Browser Use 提供了连接 AI Agent 和浏览器的便捷方式,代码仓库位于 https://github.com/browser-use/browser-use 。该项目的核心目标是实现 AI 对浏览器的控制,通过一系列的 API 和工具,开发者可以利用 AI 的强大能力,让浏览器自动完成各种任务,如网页浏览、信息提取等。
Browser Use 它基于 Python 语言,并集成了 LangChain 和 Playwright 等流行的开源库,使得开发者可以方便地构建和部署 AI 驱动的浏览器自动化应用。
Browser User 提供了强大的浏览器自动化,结合了先进的 AI 能力,以及稳定的浏览器自动化技术,来使得 AI Agent 更便捷的进行 web 交互。关键技术包括:
视觉和 HTML 提取:结合了视觉理解和 HTML 结构化提取,来进行全面的 web 交互多标签页管理:自动处理多个浏览器标签页,来完成复杂的工作流和并行处理元素级别追踪:提取元素的 XPath 并执行准确的 LLM 动作,来实现一致的自动化动作自定义动作:可以添加自定义的动作,包括文件保存、数据库操作、通知,或手动输入自适应纠错:智能化的错误处理和自动化恢复支持任意 LLM:与所有 LangChain LLM 兼容,包裹 GPT-4, Claude 3 和 Llama 2 等Browser Use 使用简单,首先使用 pip 进行安装:
pip install browser-use同时安装 playwright 来实现对浏览器的控制:
playwright install把 LLM 模型的 API Key 放置到 .env 文件中:
OPENAI_API_KEY=然后编写 Python 脚本启动 Agent:
from langchain_openai import ChatOpenAIfrom browser_use import Agentimport asynciofrom dotenv import load_dotenvload_dotenvasync def main:agent = Agent(task="Go to Reddit, search for 'browser-use', click on the first post and return the first comment.",llm=ChatOpenAI(model="gpt-4o"),)result = await agent.runprint(result)asyncio.run(main)从 browser_use 中引用 Agent, task 提供一个 prompt 形式的文本任务描述,llm 则提供一个 langchain_openai 的模型。运行程序,Brower User 就会去自动执行你所描述的浏览器行为。
Brower Use 可以执行大量的复杂操作,例如:打开 Google Docs 并写一封感谢信,就可以使用以下程序:
import osimport sysfrom pathlib import Pathfrom browser_use.agent.views import ActionResultsys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))import asynciofrom langchain_openai import ChatOpenAIfrom browser_use import Agent, Controllerfrom browser_use.browser.browser import Browser, BrowserConfigfrom browser_use.browser.context import BrowserContextbrowser = Browser( config=BrowserConfig( # NOTE: you need to close your chrome browser - so that this can open your browser in debug mode chrome_instance_path='/Applications/Google Chrome.app/Contents/MacOS/Google Chrome', ))async def main: agent = Agent( task='In docs.google.com write my Papa a quick letter', llm=ChatOpenAI(model='gpt-4o'), browser=browser, ) await agent.run await browser.close input('Press Enter to close...')if __name__ == '__main__': asyncio.run(main)在这里,我们配置了 Browser 使用本地安装的 Chrome 作为浏览器,然后 tasks 提供我们想要其操作的动作,这里包含了打开网页,文本生成,以及写入浏览器输入框等操作,它们全都被自动化完成了:
Browser Use 项目为我们提供了一种全新的方式来利用 AI 控制浏览器,它可以广泛应用于多个领域。例如,在自动化测试中,我们可以使用 AI 来自动执行各种网页测试任务,提高测试效率和准确性;在信息收集和分析领域,AI 可以帮助我们快速提取网页中的关键信息,节省时间和人力成本;在智能客服系统中,AI 可以模拟用户在浏览器中的操作,为用户提供更加智能和便捷的服务。
总而言之,Browser Use 是一个非常有潜力的项目,它为开发者和科技爱好者提供了一个强大的工具,让我们能够更加方便地探索 AI 在浏览器控制领域的无限可能。
来源:每日开源代码