要确定问题是源于 Amazon Bedrock 还是您自己的实现,首先要通过系统性检查来隔离问题。首先,使用 AWS 服务健康仪表板或 AWS 账户中的个人健康仪表板验证 Amazon Bedrock 的状态。这些工具提供关于服务中断或性能降级的实时更新。例如,如果 Bedrock 的 API 端点出现高延迟或错误,AWS 通常会在仪表板中标记此问题。此外,独立于您的代码测试 Bedrock 的核心功能。 使用 AWS CLI 或 SDK 运行基本 API 调用,例如列出可用的基础模型 (bedrock list-foundation-models
)。如果此操作失败,则表明存在服务端问题。检查 CloudWatch 指标中 Bedrock 特定的错误(例如,5xx HTTP 状态代码),并将这些错误与您的应用程序日志进行交叉引用,以识别模式。
接下来,通过验证您的代码和配置来排除您实现中的问题。 例如,身份验证错误(例如,AccessDeniedException
)通常表明 IAM 角色或权限配置错误,而不是 Bedrock 中断。 临时硬编码凭据或简化您的代码以消除动态参数生成等变量。使用指数退避测试重试:如果尽管重试,瞬时错误仍然存在,则这可能指向服务问题。 根据 Bedrock 的文档验证您的 API 请求 - 常见的错误包括不正确的 modelId
值、格式错误的输入格式(例如,推理请求中的无效 JSON)或超出速率限制。 例如,初始化 Bedrock 客户端时 region
参数中的拼写错误会导致与服务本身无关的连接失败。 在隔离的环境中重现问题,例如,在调用 Bedrock 而没有应用程序业务逻辑的最小脚本中。
最后,利用社区资源和 AWS 支持。 检查 AWS 的官方论坛、GitHub 问题或 Downdetector 等站点,以获取类似问题的报告。 如果其他用户确认中断,则问题可能出在 AWS 方面。 否则,请收集 AWS 请求 ID、时间戳和错误消息等证据以打开支持案例。 例如,ThrottlingException
可能是由您帐户的速率限制引起的,但 AWS 支持可以确认是否正确执行了该限制。 如果您已排除配置、代码和特定于帐户的问题,请将包含详细日志的问题上报给 AWS。 请记住,服务端问题很少见但有可能发生 - 系统地消除您自己的代码作为源头可确保您有效地解决根本原因。