工程师们越来越多地使用编程辅助工具来加速他们的开发工作流程。今天, Amazon SageMaker AI 优化的生成式 AI 推理 推出了 aws-ai-ml 技能,该技能可通过 Agent Toolkit for AWS获取。这项技能为 Kiro、Claude Code 和 Codex 等编程代理提供推理优化与基准测试方面的深厚专业知识。安装该技能后,您现有的代理即可代表您对终端节点进行基准测试、推荐部署配置、比较性能运行结果,并生成可执行的 SageMaker Python SDK v3 代码。 aws-ai-ml 技能是一个可插入任何支持模型上下文协议(MCP)的编程代理的工具包,将其转变为 SageMaker AI 推理优化专家。
在本文中,我们将介绍该技能能实现什么、如何设置,以及它如何帮助您更快地从模型走向生产环境。
挑战:弥合意图与基础设施之间的鸿沟
Amazon SageMaker AI 支持跨实时、批处理和异步模式的服务器托管。它提供按需和预留容量、异构实例、虚拟私有云(VPC)隔离、自动扩缩,以及与所有 SageMaker AI 训练路径的集成。其功能范围广泛而深入,但大多数工程师在使用时并不清楚哪种实例类型或服务容器最适合自己的需求。他们带着使用场景而来:一个想要达到的性能目标、一个需要遵守的成本预算,或者一个在投入生产前需要评估的模型。
SageMaker AI 优化的生成式 AI 推理的代理化体验弥合了这一差距。您告诉代理想要完成什么,它就会生成可执行的 SageMaker Python SDK v3 代码,您可以在自己的环境中审查、修改和运行这些代码。代理会提出有针对性的澄清问题,基于真实的基准测试和测得的性能数据生成代码,并像解决方案架构师那样适应您的业务约束。
在整个过程中,您始终掌控一切。每一步都实时可见,并表现为您可以阅读和质疑的代码。没有任何事情发生在不透明的界面背后。
入门指南
您可以本地计算机上通过 aws-ai-ml Agent Toolkit for AWS 安装 技能,也可以在 Amazon SageMaker Studio JupyterLab 空间中使用它。无论哪种方式,您都可以在 10 分钟内从零开始进入可正常工作的对话状态。
选项 A:与任何编程代理一起使用(Kiro、Claude Code、Codex 或任何兼容 MCP 的代理)
步骤 1:安装 Agent Toolkit for AWS。 如果您尚未安装,请先设置 Agent Toolkit。这需要 AWS Command Line Interface (AWS CLI) 2.35+ 和 uv 。
aws configure agent-toolkit
这会自动检测您的代理、安装技能并配置 AWS MCP Server。有关代理特定的设置(插件安装命令、MCP 配置),请参阅 Agent Toolkit for AWS 入门指南.
步骤 2:安装 aws-ai-ml 技能。 将 SageMaker AI 优化的生成式 AI 推理技能添加到您的代理中:
npx skills add aws/agent-toolkit-for-aws/skills/aws-ai-ml
第 3 步:确认并开始。 打开你的编码代理的聊天面板并询问:“有哪些可用的技能?”你应该会看到 aws-ai-ml 被列出。确认后,用自然语言描述你的意图。你的编码代理现在内置了 SageMaker AI 推理优化方面的专业知识。
先决条件: 你的 AWS 凭证必须具有调用 SageMaker AI API 的权限(创建终端节点、运行基准测试和推荐作业)。该技能生成的代码将在你的凭证下运行。技能本身无需额外的 AWS Identity and Access Management (IAM) 配置。
注意: 对于 Kiro 和 Claude Code,代理可以在运行时发现技能。它们可以通过 AWS MCP Server按需搜索并加载技能,无需任何本地安装。可以问你的代理:“搜索与数据库相关的 AWS 技能。”有关在运行时发现技能的信息,请参阅 readme 。
选项 B:在 Amazon SageMaker Studio 中使用
如果你更希望在托管的 JupyterLab 环境中工作,可以在 Amazon SageMaker Studio 中使用预配置映像来使用该技能。
第 1 步:打开 Amazon SageMaker Studio。 在目标 AWS 账户和 AWS 区域中导航到 Amazon SageMaker Studio。选择你的 Studio 域,并从你的用户配置文件启动 Studio IDE。
步骤 2:创建一个 JupyterLab 空间。 在 Studio 落地页上,选择 JupyterLab,然后选择 Create JupyterLab space。为该空间命名(例如, my-inference-opt),并将共享设置保持为 Private (技能仅在私有空间中同步)。在 Image 菜单下,选择包含 SageMaker AI 优化的生成式 AI 推理技能的镜像。该镜像预配置了 aws-ai-ml 代理技能及所有必要的依赖项。选择 Run space 并等待其启动(首次需要 5–10 分钟)。
注意: 请使用全新的空间。使用本地修改过技能版本的旧空间可能无法加载预配置的镜像。
步骤 3:打开 JupyterLab 并启动一个终端。 空间启动后,打开 JupyterLab 并选择 Terminal.
步骤 4:授权您的编码代理。 在终端中,使用您的身份提供商对编码代理进行身份验证。例如,使用 Kiro:
kiro-cli login --license pro --identity-provider <your-IdP-start-URL> --region us-east-1 --use-device-flow
步骤 5:确认并开始。 打开您的编码代理的聊天面板并询问:“有哪些可用的技能?”您应该能看到 aws-ai-ml 已列出。确认后,用自然语言描述您的意图。
故障排除:
如果代理报告没有可用技能,请验证您的空间是否设置为 Private。您也可以在终端中检查:
ls ~/.kiro/skills/
如果该目录为空,但
/etc/sagemaker/skills/中包含技能文件,请运行restart-jupyter-server,刷新页面,然后重试。
您可以做什么
智能体体验涵盖推理优化生命周期中的以下能力。您无需知道该调用哪项能力。只需描述您想要什么,您的智能体就会找出下一步操作,或在有任何不清楚之处时提出澄清问题。
对现有端点进行基准测试
如果您已经在 SageMaker AI 端点上部署了模型,可以让智能体对其进行基准测试。告诉智能体您要测试哪个端点,它会生成一个 Python 笔记本,使用 SageMaker Python SDK 的 Workload.synthetic() 和 start_benchmark() API 运行负载测试。
在运行任何基准测试之前,智能体会确认您的端点可以安全地进行负载测试,因为基准测试会向正在运行的端点推送真实流量。
基准测试完成后,您将获得一份定量性能报告,包含:
- 吞吐量:每秒请求数、每秒输出 token 数。
- 延迟:p50、p99、首 token 时间、token 间延迟。
- 并发度:可支持的同时请求数量。
这些是在真实基础设施上由真实负载测得的数值,而非估算值。智能体还会推荐改进机制(例如 prefill decoding)来提升性能。
示例提示词: “在 SageMaker AI 上对我的 Llama 端点进行基准测试。”
为您的模型找到合适的实例类型
如果您有一个模型,需要找到合适的实例类型将其部署到 SageMaker AI 上,请告诉您的智能体。您的模型存放在哪里或如何获得并不重要:
- 位于 Amazon Simple Storage Service (Amazon S3) 中的微调或自定义模型:您训练或下载了一个模型并存储在 S3 中。提供 S3 URI 和您的优化目标。示例提示词: “我想找到在 SageMaker 上部署我的微调模型最便宜的实例类型。”
- 来自 Amazon SageMaker JumpStart的公开基础模型:您想部署 JumpStart 目录中的基础模型 (FM),则提供模型 ID。示例提示词: “为 SageMaker AI 上的模型 huggingface-reasoning-qwen3-8b 找到最佳实例。”
- 位于 Hugging Face Hub上的模型:您想使用托管在 Hugging Face 上的模型。提供模型名称。对于受限模型(例如 Llama 变体),您的智能体会显示许可条款,并要求您接受条款并提供您的 Hugging Face token。示例提示词: “我想部署 Hugging Face Hub 上的一个 Llama 模型。最便宜的选项是什么?”
在每种情况下,您的智能体都会生成代码,针对候选实例和配置评估您的模型,然后呈现带有具体性能指标的排名部署选项:吞吐量、延迟百分位数、首 token 时间和并发度。您可以根据自己的成本和性能要求进行选择。
比较基准测试结果
如果您运行了多个基准测试(例如,在配置更改之前和之后,或在两种实例类型之间进行),可以让智能体进行比较。提供两个基准测试作业名称,智能体会生成一份比较结果,计算关键指标的差值:吞吐量、延迟百分位数和首 token 时间。
结果显示百分比变化,正值表示更好,为您提供一个单一且易于解读的总结,说明您的更改是提升了性能、降低了性能,还是没有产生实质影响。
如果其中一个基准测试运行不存在,代理会提议先运行它,然后再进行比较。
示例提示: “我有两个基准测试运行,我想比较它们。哪一个更快?”
基准测试结果
此表比较了两个已部署模型在相同基准测试工作负载(512/256 tokens,并发 4)下的表现。Δ% 列显示 Model B(Qwen3-8B)在每个指标上比 Model A(Qwen3-1.7B)快多少。正值表示 Model B 更好。
| 指标 | Qwen3-1.7B(模型 A) | Qwen3-8B (Model B) | Δ% |
| 输出 token 吞吐量 | 188.2 tokens/s | 271.2 tokens/s | +44.1% |
| 每用户吞吐量 | 47.5 tokens/s | 69.4 tokens/s | +45.9% |
| 请求吞吐量 | 0.736 req/s | 1.08 req/s | +46.7% |
| token 间延迟 | 20.9 ms | 14 ms | +33.0% |
| 请求延迟 | 5,382 ms | 3,658 ms | +32.0% |
| 首 token 时间 | 67.5 ms | 166.3 ms | −146.5% |
这两个模型运行在不同的硬件上。Qwen3-8B 使用 4-GPU ml.g5.12xlarge (4x A10G),而 Qwen3-1.7B 使用单块 L4 GPU (ml.g6.4xlarge)。这些差异反映了大约 4 倍的算力,而不仅仅是模型本身。
结论:Qwen3-8B 的吞吐量高出约 44–47%,端到端延迟更低,这主要得益于额外的 GPU 算力。Qwen3-1.7B 仅在首 token 时间上占优,这是较小模型在单块 GPU 上的预期优势。
总结
你不需要记住功能名称,也不需要知道该请求哪个工作流。下表展示了常见请求与结果的对应关系。
| 你说 | 你得到的结果 |
| “我已经部署了一个模型,想知道它有多快。” | 定量性能报告:来自真实负载的吞吐量、延迟百分位数、并发指标。 |
| “我在 S3 中有一个模型,但我不知道该部署到哪种实例上。” | 针对每个候选配置,列出包含成本、吞吐量和延迟的部署选项排名。 |
| “我想部署一个 JumpStart 模型并找到最便宜的实例。我只有模型 ID。” | 按排名给出部署选项,无需 S3 暂存。如有需要会提供受限模型的替代方案。 |
| “我在更改前后各运行了一次基准测试。哪个更快?” | 跨所有指标的百分比变化,显示改进或退化。 |
| “我想优化一个来自 Hugging Face Hub 的 Llama 模型。” | 显示许可证信息,模型暂存到 S3,然后给出标准推荐输出。 |
如果您的请求涉及多种功能(例如,先暂存一个 Hugging Face 模型,然后获取部署建议),代理会在同一对话中自然地将它们串联起来。
对代理的预期
您的代理配备了 aws-ai-ml 技能,遵循一些使其体验可预测且安全的行为:
- 它会主动询问所需信息。 如果缺少信息(例如终端节点名称或 S3 URI),代理会要求您提供,而不是自行猜测。
- 它在执行有影响的操作之前会进行确认。 在运行会向活跃终端节点产生真实流量的基准测试之前,代理会警告您其影响并要求明确确认。
- 当某事超出范围时它会告知您。 如果您请求代理无法完成的事情(例如部署模型),它会解释它可以提供的替代方案,例如生成您所需的部署配置。
- 它会生成 SageMaker Python SDK v3 代码。 每个输出都是可执行的代码,您可以在自己的环境中检查、修改和运行。
清理
为避免产生持续费用,请删除您创建的资源:
- 删除在基准测试或推荐过程中创建的 SageMaker AI 终端节点 。
- 停止或删除您的 JupyterLab 空间 (如果您使用了 SageMaker Studio)。
- 删除由基准测试和推荐作业存储在 SageMaker AI 默认存储桶中的 S3 对象 由基准测试和推荐作业存储在您的 SageMaker AI 默认存储桶中。
结论
适用于 Amazon SageMaker AI 优化生成式 AI 推理的 aws-ai-ml 技能,可将您现有的编码代理转变为 SageMaker AI 推理优化专家。无论您需要对活跃终端节点进行基准测试、为模型找到最便宜的实例、比较配置,还是暂存 Hugging Face 模型以进行评估,您只需描述需求,代理即可交付可衡量的结果。
要开始使用,请通过 Agent Toolkit for AWS 安装该技能,并将其添加到您已在使用的编码代理中,或在 Amazon SageMaker Studio 中启动一个预配置的 JupyterLab 空间。有关更多信息,请参阅 Amazon SageMaker AI 文档.