View a markdown version of this page

可观察性和成本控制 - Amazon Bedrock AgentCore
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

可观察性和成本控制

本页介绍监控您的线束、控制执行成本和管理资源标签。

可观测性

每次线束调用都会通过中的 Observ AgentCore ability 自动生成跟踪、日志和指标。 CloudWatch模型调用、工具调用、内存操作、shell 命令:每个步骤都显示时序和有效载荷详细信息。没有额外的配置。追踪从第一次调用起就可用。

跟踪、日志和指标 CloudWatch 通过线束执行角色流向。在AgentCore 可观察性控制面板中查看它们,或者通过 CloudWatch 日志和 X-Ray API 以编程方式进行查询。

在查看跟踪之前,请在中启用 “交易搜索” CloudWatch(每个账户一次)。有关设置的详细信息,请参阅AgentCore 可观察性入门。

了解更多:可观测性概述·指标·遥测

CloudTrail

Harness 操作被记录 Amazon CloudTrail 为管理事件(控制平面)和数据事件(数据平面)。在中 CloudTrail,线束资源显示在AWS::BedrockAgentCore::Runtime资源类型下,而不是特定于安全带的类型下。Harness 是 AgentCore 运行时的托管抽象,为了保持一致性, CloudTrail 事件反映了底层的运行时资源。

所有安全带 CloudTrail 事件都使用 resources.type = AWS::BedrockAgentCore::Runtime。事件名称是:

  • CreateHarness、UpdateHarness、DeleteHarness、GetHarness、ListHarnesses(管理事件)

  • InvokeAgentRuntime,InvokeAgentRuntimeCommand,InvokeAgentRuntimeCommandShell(数据事件)

注意

数据平面操作显示为InvokeAgentRuntime、和InvokeAgentRuntimeCommand,与InvokeAgentRuntimeCommandShell底层运行时 API 相匹配。 CloudTrail该resources.ARN字段包含控制平面事件的线束 ARN 和数据平面事件的运行时 ARN。

了解安全带成本

安全带本身不收取额外费用。您需要为该工具使用的底层功能支付标准费率。有关当前费率,请参阅 Amazon Bedrock AgentCore 定价和您的模型提供商的定价页面。

下表描述了使用安全带时可能产生费用的功能。

能力 何时收费 决定用法的因素

AgentCore 运行时间

AgentCore 运行时会为每个线束会话启动一个 microVM。

AgentCore 从 microVM 启动到终止每秒消耗的实际 CPU 和峰值内存消耗的运行时账单,包括系统开销。如果没有后台进程使用 CPU,则在模型或工具 I/O 等待期间不收取 CPU 费用。会话运行期间,内存仍可计费。

模型推理

每次代理调用配置的模型时,模型提供者都会开具账单。一个线束调用可以进行多个模型调用。

提供商根据输入和输出令牌计算费用。输入包括系统提示符、对话历史记录、检索到的内存、技能说明和允许的工具的定义。有关工具定义开销,请参见。工具

AgentCore 记忆

AgentCore 当线束写入事件或检索记录时,内存会计费。默认情况下,托管内存处于启用状态;连接的内存也会收取费用。

AgentCore 记忆计量新的短期事件、存储的长期记忆记录和长期记忆检索请求。

AgentCore 浏览器和代码解释器

当代理使用这些配置的工具时,浏览器和代码解释器会收费。

每项服务都会计量其会话的主动 CPU 和内存消耗。即使代理不调用它们,他们的工具定义仍然可以在允许的情况下添加模型输入标记。

AgentCore 网关和网络搜索

当线束发现或调用工具、执行搜索或使用索引工具时,Gateway 会开具账单。Web Search 会在安全工具提交查询时开具账单。

网关计量器 API 操作、搜索查询和索引工具(如果适用)。Web Search 分别计量其查询次数。

可观测性

CloudWatch 每次调用发出的跟踪、日志和指标的账单。

CloudWatch 计量摄取、存储和查询使用情况。

存储和网络

当您使用自定义容器、永久文件系统或数据传输时,存储和网络服务会产生账单。

Amazon ECR 对图像存储进行了计量。亚马逊 S3 和 EFS 计量器资源使用情况。标准数据传输速率适用于网络流量。

估算运行时成本

运行时计费使用每秒的活跃消耗量而不是预配置的实例时间:

CPU cost = consumed vCPU-seconds / 3,600 * vCPU-hour rate Memory cost = sum of peak GB consumed in each second / 3,600 * GB-hour rate

不要仅根据挂钟调用或会话持续时间来估计 CPU 成本。当没有其他进程使用 CPU 时,模型和工具 I/O 等待不会产生 CPU 费用。但是,内存消耗仍可计费。缩短idleRuntimeSessionTimeout可以缩短上次调用后内存的计费时间,但代价是冷启动频率更高。

衡量和归因使用情况

  • 读取调用流中的metadata事件以了解模型令牌的使用情况。

  • 使用AgentCore 可观察性跟踪、 CloudWatch 日志和 X-Ray API 来识别模型调用、工具调用、内存操作及其持续时间。可观察性解释了活动,但不是账单报告。

  • 使用 C Amazon ost Explorer 或 Amazon 成本和使用量报告查看计费用量。激活您的安全带标签作为成本分配标签,以筛选支持的费用。

Harness 标签会传播到为该线束创建的托管运行时、运行时端点和托管内存。独立标记单独创建的资源,例如网关、EFS、S3 或自带内存资源。

通过限制控制成本

设置硬上限,这样失控的特工就不会消耗资源:

  • maxIterations-每次调用 reasoning/action 周期。默认值 75。

  • timeoutSeconds-单次调用的挂钟超时。默认 3600。

  • maxTokens-每次调用的代币预算。默认 N/A。

  • idleRuntimeSessionTimeout-闲置的 microVM 会保温多长时间。默认 900。

  • maxLifetime-microVM 会话的最长生命周期。默认 28800。

所有限制都是可选的;省略这些限制以使用服务默认值。由于线束由 AgentCore Runtime 支持,因此线束调用也受运行时服务配额的约束。有关更多信息,请参阅AgentCore 利用服务配额和AgentCore 运行时服务配额。

例
Amazon CLI/boto3
aws bedrock-agentcore-control update-harness \ --harness-id "MyHarness-UuFdkQoXSL" \ --max-iterations 50 \ --timeout-seconds 1800 \ --max-tokens 8192

或者通过传递maxIterations、或 in 来覆盖单timeoutSeconds次调用maxTokens。invoke_harness

AgentCore CLI

设置默认值:

agentcore add harness --name bounded-agent \ --max-iterations 50 --timeout 1800 --max-tokens 8192 \ --truncation-strategy sliding_window \ --idle-timeout 600 --max-lifetime 14400 agentcore deploy

该--truncation-strategy标志接受sliding_window或summarization。--idle-timeout和--max-lifetime标志以秒为单位设置生命周期限制。

在单个呼叫时覆盖:

agentcore invoke --harness bounded-agent --max-iterations 20 --harness-timeout 600 \ "Quick lookup: what's the weather in Seattle?"

标签

将标签应用于您的安全带以进行成本分配和访问控制。

例
Amazon CLI/boto3
aws bedrock-agentcore-control create-harness \ --harness-name "MyHarness" \ --execution-role-arn "arn:aws:iam::123456789012:role/MyHarnessRole" \ --tags '{"team": "platform", "environment": "staging"}'
AgentCore CLI

在harness.json以下位置设置标签:

{ "tags": { "team": "platform", "environment": "staging" } }

跑agentcore deploy去申请。

Harness 标签会传播到为该线束创建的托管运行时、运行时端点和托管内存。单独创建的资源会保留自己的标签。