Notte:一个开源的Web浏览智能体框架
Notte是什么?
Notte 是一个开源的 Web 浏览框架,通过单一 API 让开发者轻松构建、部署和扩展智能体。它能管理浏览器会话,让智能体自动完成复杂的 Web 任务,还能用自然语言命令感知和操作网页。此外,它有安全的密钥管理功能。Notte 的特别之处在于感知层,能把网页的复杂信息转化为简洁的自然语言描述,让智能体更高效、更可靠地工作。在任务时间、可靠性和评估得分上,它都比现有的解决方案表现更好。
Notte功能特点
浏览器管理:基于 Playwright 在底层处理浏览器会话和窗口,能够方便地进行多窗口、多标签页的管理,以及浏览器的启动、关闭、页面导航等操作。
DOM 处理:将网页页面转换为结构化的、适合智能体处理的格式。这样可以让智能体更容易理解网页的内容结构,比如将网页中的标题、段落、列表、链接等元素进行解析和分类,便于智能体根据需求提取信息。
错误处理:针对各种与浏览器相关的场景,提供了强大的错误管理机制。无论是网络连接问题、页面加载失败,还是元素查找不到等问题,都能进行有效的捕获和处理,保证智能体在浏览网页过程中的稳定性和可靠性。
可配置选项:支持灵活配置,包括头 less 模式(即无界面模式,可在服务器等环境中运行,节省资源且提高运行效率)、用户代理(可以伪装成不同的浏览器或设备访问网页,以适应不同网站的兼容性要求)、代理设置(便于通过代理服务器访问网页,突破网络限制或实现隐私保护等)等。
安全控制:具备内置的网络安全控制,并且可以自定义 Chrome 浏览器的参数,以增强浏览器的安全性,防止潜在的安全漏洞和攻击。
Web脚本编写:提供Web脚本编写能力,以及最先进的抓取端点。
托管SDK:提供托管的SDK,可以管理云浏览器会话和所有库的功能。
API端点:提供丰富的API端点,用于会话管理、页面交互、智能体任务执行等。
Notte应用场景
信息提取与分析:可以让智能体自动浏览多个网页,提取特定的信息,如新闻文章中的关键事件、科技论文中的研究成果、电商网站上的商品信息等,并进行分析和总结。例如,自动收集多个行业报告网站上的市场数据,分析市场趋势。
任务自动化:能够模拟人类在网页上的操作,完成一些重复性的任务,如自动填写表单、提交数据、点击按钮等。比如,自动在招聘网站上搜索符合条件的职位并投递简历。
智能问答系统:作为智能问答系统的一部分,使系统能够通过浏览网页获取最新、最准确的信息来回答用户的问题。当用户提出一个关于特定主题的问题时,Notte 可以帮助智能体在网页中查找相关内容,并整理出答案。
Notte安装使用
安装命令:使用uv sync --dev --all-extras和uv run pre-commit install进行安装和配置。
浏览器安装:使用patchright自动化浏览器交互,需要安装所需的浏览器,如uv run patchright install --with-deps chromium。
环境变量配置:复制.env.example到.env,并填写 API 密钥,默认使用groq/llama-3.3-70b-versatile,需设置GROQ_API_KEY,也可设置其他 LLM 提供商的 API 密钥。
网页抓取与数据提取:
from notte_sdk import NotteClient notte = NotteClient() data = notte.scrape(url="https://pump.fun", instructions="get top 5 latest trendy coins on pf, return ticker, name, mcap")
项目链接
Github:https://github.com/nottelabs/notte
官网:https://www.notte.cc/