Skip to main content
Amazon Bedrock AgentCore 浏览器 使智能体能够通过管理的 Chrome 浏览器与网页交互。智能体可以浏览网站、提取内容、填写表单、点击元素,并在安全、受管理的环境中进行屏幕截图。

概述

集成细节

工具特性

可用工具

工具包提供了多种用于浏览器自动化的工具:

设置

集成位于 langchain-aws 包中。它还需要 playwright 和 beautifulsoup4 用于浏览器自动化和 HTML 解析。

凭证

您需要配置具有 Bedrock AgentCore 浏览器权限的 AWS 凭证。有关所需的 IAM 权限,请参阅 Amazon Bedrock AgentCore 文档。 设置 LangSmith(但不是必需的)以获得最佳级别的可观察性:

实例化

工具包使用工厂函数创建。最简单的情况下,只需要 AWS 区域:
工厂函数还接受用于 代理配置、浏览器扩展 和 浏览器配置文件 的可选参数。有关详细信息,请参阅下文。

代理配置

使用 proxy_configuration 参数将浏览器流量路由到外部代理。这对于地理位置定位、IP 旋转或访问区域限制内容很有用。
proxy_configuration 参数接受来自 bedrock-agentcore 的 ProxyConfiguration 数据类或等效字典,包含 proxies 和可选的 bypass 键。代理凭证安全地存储在 AWS Secrets Manager 中。 有关更多详细信息,请参阅 AWS 关于浏览器代理的文档。

浏览器扩展

使用 extensions 参数将 S3 中的浏览器扩展加载到受管理的浏览器会话中。扩展作为 ZIP 文件打包并托管在 S3 存储桶中。
extensions 参数接受一组 BrowserExtension 数据类或等效字典,每个字典都有一个指定存储桶和前缀的 S3 location。 有关更多详细信息,请参阅 AWS 关于浏览器扩展的文档。

浏览器配置文件

使用 profile_configuration 参数跨会话持久化浏览器状态(Cookie、本地存储、缓存数据)。这允许智能体在离开的地方继续,而无需重新身份验证或丢失上下文。 使用 AWS CLI 或 Boto3 创建配置文件,然后将返回的配置文件 ID 传递:
profile_configuration 参数接受来自 bedrock-agentcore 的 ProfileConfiguration 数据类或等效字典,包含 profileIdentifier 键。配置文件 ID 采用格式 <name>-<10-char-suffix>,通过 Bedrock AgentCore 控制平面 API 创建配置文件时返回。 有关更多详细信息,请参阅 AWS 关于浏览器配置文件的文档。

组合配置选项

所有三个配置选项可以一起使用:

调用

直接工具使用

获取特定工具并调用它们:

在智能体中使用

基于线程的会话隔离

工具包为每个 thread_id 维护单独的浏览器会话。这允许并发使用而不会相互干扰:

浏览器操作

导航

与元素交互

提取内容

屏幕截图和滚动

会话清理

完成时始终清理浏览器会话以释放资源:
注意: 虽然 create_browser_toolkit() 是同步的,但 cleanup() 方法是异步的,必须等待。

并发保护

工具包包括内置的并发保护。每个浏览器会话都与特定的 thread_id 关联,如果尝试在会话正在使用时访问它,将引发 RuntimeError。为并发操作使用不同的 thread_id 值。

API 参考

有关所有功能和配置的详细文档,请参阅:
官方原文:src/oss/python/integrations/tools/bedrock_agentcore_browser.mdx · 非官方翻译,译文由 AI 生成,以英文原文为准。
Last modified on November 3, 2026