AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


【Stagehand】打造简洁易用且功能强大的AI驱动网页浏览框架
发布日期:2024-11-09 08:43:58 浏览次数: 1604 来源:小兵的AI视界


在数字化时代,网页自动化已成为提升工作效率、优化用户体验的重要手段。从简单的数据抓取到复杂的自动化测试,自动化工具在各个领域扮演着不可或缺的角色。Stagehand,作为一个新兴的人工智能网页浏览框架,以其简单性和可扩展性脱颖而出,成为开发者的新宠。本文将深入探讨Stagehand的设计理念、技术特点、应用场景以及如何实际应用,为大家提供一个全面的技术指南。


一、Stagehand概述


Stagehand是由Browserbase团队维护的人工智能驱动的网页浏览框架,旨在成为Playwright的后继者。它不仅继承了Playwright的强大功能,还引入了创新的设计理念,以满足现代网页自动化的需求。Stagehand的核心在于其简洁而强大的API设计,包括actextractobserve,这三个API共同构成了构建自然语言驱动的网页自动化操作的基石。


二、Stagehand核心功能


1自然语言驱动的自动化


Stagehand最大的特点是其自然语言驱动的自动化能力开发者可以使用简单的自然语言指令来控制网页操作和数据提取,如“点击登录按钮”找到红色的鞋子。这种以自然语言为核心的操作指令方式,极大地简化了自动化脚本的编写过程,使得即使是非专业的开发者也能轻松上手。


2原子化指令执行


每个Stagehand函数接受一个原子指令,生成相应的Playwright代码来完成该指令,并执行它。这种原子化指令执行提高了自动化任务的可靠性,因为它确保了每个操作都是独立且明确的,从而减少了错误和冲突的可能性。


3模型和提供商支持


Stagehand支持多种语言模型和模型提供商,包括OpenAIAnthropic,允许开发者根据需求选择最合适的模型。这种灵活性使得Stagehand能够适应不同的自动化任务和场景。


4观察和建议行动


使用observe()函数,开发者可以获取当前页面上可执行的操作列表,辅助规划和执行自动化步骤。这一功能在自动化测试和监控网页内容变化时非常有用,它可以帮助开发者了解当前网页的状态,并据此做出相应的自动化决策。

三、Stagehand技术原理


1自然语言处理(NLP


Stagehand基于自然语言处理技术解析和理解用户提供的自然语言指令。这些指令被转换成具体的网页操作,如点击、填写表单、提取数据等。


2指令到代码的转换


Stagehand将自然语言指令转换成可执行的代码,通常是PlaywrightAPI调用。这一过程涉及解析指令、确定操作的具体步骤,生成相应的代码。


3原子化操作


每个指令都是原子化的,是不可分割的最小操作单元。原子化操作有助于提高自动化流程的稳定性和可靠性。


4上下文感知


Stagehand基于`observe()`函数理解当前网页的上下文,有助于确定可执行的操作。上下文感知能力让Stagehand提供更智能的自动化建议。


5模块化支持


Stagehand设计为模块化,支持不同的AI模型和模型提供商。这种设计使得Stagehand能够灵活地集成和切换不同的AI能力,适应不同的自动化需求。


四、Stagehand应用场景


Stagehand作为一个简单和可扩展的人工智能网页浏览框架,其应用场景广泛,覆盖了从基本的网页测试到复杂的数据抓取和电子商务等多个领域。以下是Stagehand的一些主要应用场景:


1网页测试


自动化测试网页功能,确保网站在不同浏览器和设备上正常工作。这包括测试网页的响应性、兼容性以及用户体验。通过Stagehand,开发者可以模拟用户行为,如点击、滚动和表单提交,以验证网页的交互功能是否按预期工作。


2数据抓取


从网页中提取大量数据,用于数据分析、研究或内容聚合Stagehand的自然语言驱动的自动化能力使得数据抓取变得更加简单和高效,开发者可以用自然语言指令来指定需要抓取的数据,Stagehand会自动执行相应的操作并提取数据。


3表单填写与提交


自动化填写在线表单,如注册、登录、问卷调查等。这可以显著提高数据收集的效率,减少手动输入的工作量,并降低出错率。Stagehand可以识别表单字段并自动填写所需信息,然后提交表单。


4网页内容监控


监控网页内容变化,如价格更新、新闻发布等,及时获取信息。这对于需要实时跟踪网页更新的业务至关重要,例如股票价格监控或新闻聚合服务。Stagehand可以定期检查网页内容,并在检测到变化时触发相应的操作。


5自动化办公


自动化执行日常的网页相关任务,提高工作效率。这可能包括自动登录到Web应用、自动处理电子邮件、日程安排等。Stagehand的自动化能力可以帮助办公室工作人员减少重复性工作,提高生产力。


Stagehand的灵活性和可扩展性使其成为一个多功能的工具,适用于各种不同的自动化需求。随着技术的不断发展,Stagehand的应用场景将进一步扩展,为更多的业务问题提供解决方案。


五、如何运行Stagehand


1安装 Stagehand

npm install @browserbasehq/stagehand zod
2、配置模型提供程序


您需要为要使用的模型提供商提供 API 密钥。默认模型提供商是 OpenAI,但您也可以使用 Anthropic 或其他提供商。有关受支持模型的更多信息,请参阅API 参考。


确保您的本地环境中可以访问 OpenAI API 密钥或 Anthropic API 密钥。

export OPENAI_API_KEY=sk-...export ANTHROPIC_API_KEY=sk-...

3创建 Stagehand 实例


如果您计划在本地运行浏览器,您还需要安装 Playwright 的浏览器依赖项。


npm exec playwright install

然后你可以像这样创建一个 Stagehand 实例:

import { Stagehand } from "@browserbasehq/stagehand";import { z } from "zod";
const stagehand = new Stagehand({env: "LOCAL",});

如果您计划远程运行浏览器,则需要设置 Browserbase API 密钥和项目 ID

export BROWSERBASE_API_KEY=...export BROWSERBASE_PROJECT_ID=...import { Stagehand } from "@browserbasehq/stagehand";import { z } from "zod";
const stagehand = new Stagehand({   env: "BROWSERBASE",   enableCaching: true,});

4、运行你的第一个自动化

await stagehand.init();await stagehand.page.goto("https://github.com/browserbase/stagehand");await stagehand.act({ action: "click on the contributors" });const contributor = await stagehand.extract({instruction: "extract the top contributor",schema: z.object({username: z.string(),url: z.string(),}),});console.log(`Our favorite contributor is ${contributor.username}`);

这个简单的代码片段将打开一个浏览器,导航到 Stagehand 仓库,并记录顶级贡献者。


结语


Stagehand作为一个新兴的AI网页浏览框架,以其简单、可扩展和自然语言驱动的特点,为网页自动化操作提供了一个强大的工具。随着AI技术的不断发展,Stagehand有望在未来的网页自动化领域发挥更大的作用。想要了解更多关于Stagehand的信息,可以访问其GitHub仓库。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询