View a markdown version of this page

可观测性和成本控制 - 亚马逊基岩 AgentCore

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

可观测性和成本控制

本页涵盖监控您的工具、控制执行成本和管理资源标签。

可观测性

每次安全带调用都会通过中的可AgentCore 观察性自动生成跟踪、日志和指标。 CloudWatch模型调用、工具调用、内存操作、shell 命令:每一步都显示了计时和有效负载的详细信息。没有额外的配置。从第一次调用起就可以进行跟踪。

跟踪、日志和指标将 CloudWatch 流向工具执行角色。在AgentCore 可观测性仪表板中查看它们,或通过 CloudWatch 日志和 X-Ray API 以编程方式查询。

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

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

CloudTrail

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

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

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

  • InvokeAgentRuntime,InvokeAgentRuntimeCommand(数据事件)

注意

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

了解安全带成本

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

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

能力 何时收费 什么决定了用法

AgentCore 运行时间

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

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

模型推理

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

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

AgentCore 记忆

AgentCore 当工具写入事件或检索记录时,内存会被记入账单。默认情况下,托管内存处于启用状态;附加的内存也收取费用。

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

AgentCore 浏览器和代码解释器

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

每项服务都会计量其会话的活跃 CPU 和内存消耗。他们的工具定义在允许的情况下仍然可以添加模型输入标记,即使代理没有给他们打电话。

AgentCore 网关和网络搜索

当安全带发现或调用工具、执行搜索或使用索引工具时,网关会计费。当安全带提交查询时,网络搜索账单。

Gateway 会衡量 API 操作、搜索查询和索引工具(视情况而定)。Web Search 单独计量其查询次数。

可观测性

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

CloudWatch 仪表摄取、存储和查询使用情况。

存储和网络

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

亚马逊 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 来识别模型调用、工具调用、内存操作及其持续时间。可观察性可以解释活动,但不是账单报告。

  • 使用 “ AWS 成本管理器” 或 “ AWS 成本和使用情况报告” 来查看计费用量。激活您的安全带标签作为成本分配标签,以筛选支持的费用。

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

用限制控制成本

设置硬上限,这样逃跑的特工就无法消耗资源:

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

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

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

  • idleRuntimeSessionTimeout-空闲的微型虚拟机能保持温暖多长时间。默认为 900。

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

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

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

或者通过传递maxIterations、timeoutSeconds或 maxTokens in 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?"

标签

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

例
AWS 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申请。

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