How Airtop built web-automation for AI agents powered by the LangChain ecosystem

Airtop 如何利用 LangChain 生态系统为 AI 代理构建网络自动化

了解 Airtop 如何利用 LangGraph 构建了灵活的代理架构,并在 LangSmith 中调试和优化了提示,Airtop 为 AI 代理提供浏览器自动化。

3 分钟阅读

Airtop 是一个强大的平台,使开发者能够以简洁和精确的方式创建可扩展的、生产就绪的网络自动化。Airtop 处于使代理智能地与网络交互的前沿,它使代理能够执行诸如登录、提取信息、填写表格以及与 Web 界面交互等操作——所有这些都通过自然语言命令。

AI 代理的功能性取决于它们可以访问的数据。大规模地浏览网站会带来诸如身份验证和验证码等挑战。Airtop 通过为开发人员提供一种通过自然语言 API 控制浏览器的可靠方法来弥合这一差距,从而消除了对复杂的 CSS 选择器 hacks 或 Puppeteer 脚本的需求。

利用完整的 LangChain 生态系统(LangChain、LangSmith 和 LangGraph),Airtop 构建了许多浏览器解决方案,包括: 

  1. Extract API:支持从网页中提取结构化信息,例如演讲者列表、LinkedIn URL 或监控航班价格。也适用于经过身份验证的站点,用于社交监听和电子商务等用例。
  2. Act API:增加了在网站上执行操作的能力,例如输入搜索查询或与 UI 元素实时交互。

简化与 LangChain 的模型集成

当 Airtop 着手为其 AI 代理构建基于云的浏览器时,他们需要一个可以灵活集成各种 LLM 模型的平台。LangChain 因其“开箱即用”的方法而迅速脱颖而出。凭借 GPT-4 系列、Claude、Fireworks 和 Gemini 的内置集成,LangChain 为 Airtop 节省了无数的开发时间。

“LangChain 提供的标准化接口改变了游戏规则,”Airtop 的 AI 工程师 Kyle 分享道。“我们可以在模型之间轻松切换,这在我们为不同的用例进行优化时至关重要。”

在 LangGraph 中构建灵活的代理架构

当 Airtop 希望添加更多浏览器自动化时,他们的工程团队转向 LangGraph,以利用其灵活的架构来构建他们的代理系统。借助 LangGraph,Airtop 将各个浏览器自动化构建为子图。这也帮助他们的应用程序面向未来,因为随着他们扩展自动化,很容易添加额外的子图——让团队拥有更动态的控制,而无需重新设计他们的控制流程。

在 Airtop 设计他们的代理时,团队决定从小处着手,为他们的代理提供微功能,然后构建具有更复杂代理的系统,这些代理可以点击站点上的元素并执行击键操作。随着他们的代理不断发展,可靠性是重中之重。LangGraph 帮助 Airtop 验证其代理步骤的准确性,因为它在网站上执行操作。

在 LangSmith 中调试和优化提示

虽然 Airtop 最初开始使用 LangSmith 来调试通过客户支持票证传入的问题,但他们很快也发现 LangSmith 可以加速他们开发过程的多个部分。

在开发过程中,Airtop 使用 LangSmith 进行提示工程和动态测试。当来自 OpenAI 或 Claude 等 AI 模型出现模糊的错误消息时,LangSmith 的多模态调试功能提供了清晰度,使团队能够识别问题是源于格式问题还是放错位置的提示组件。

此外,对于 Airtop 团队来说,为用户提供可靠的网络自动化功能非常重要。他们利用 LangSmith 的 playground 来迭代提示并运行并行模型请求,动态模拟真实世界的用例。这加快了 Airtop 的内部工作流程,并增强了他们向用户提供更准确、更量身定制的响应的能力。

下一步

Airtop 大大加快了其 AI 代理驱动的网络自动化解决方案的上市时间。借助 LangGraph 的可控代理框架和 LangSmith 进行开发中的测试,该团队确保了强大的代理性能。

“每一次创新都成为下一步的基础,”Airtop 的 CTO Daniel Shteremberg 说。“借助 LangChain 和 LangSmith,我们可以创建适应性强、可靠且面向未来的解决方案。”

未来,Airtop 团队的目标是

  1. 构建更复杂的代理,使用能够执行多步骤、高价值任务(例如股票市场分析或企业级自动化)的高级 LangGraph 代理。
  2. 向平台添加额外的微功能,使 AI 代理能够在整个网络上执行无限范围的操作。
  3. 增强的基准测试:进一步改进他们的基准测试系统,以评估更广泛的模型配置和用例的性能。