宣布为Amazon SageMaker AI端点提供OpenAI兼容的API支持
Amazon SageMaker AI 宣布支持 OpenAI 兼容 API,允许通过修改 endpoint URL 直接调用模型,无需自定义客户端或 SigV4 签名包装器。 该功能暴露 `/openai/v1` 路径,接受 Chat Completions 请求并支持流式响应,适用于所有使用标准 SageMaker API 和 SDK 创建的 endpoints 和 inference components。 引入 Bearer Token 认证机制,基于现有 AWS 凭据生成限时令牌(默认有效期 12 小时),替代传统的 API Key 或复杂签名流程。 支持多模型托管场景,用户可通过单
深度分析
TL;DR
- Amazon SageMaker AI 宣布支持 OpenAI 兼容 API,允许通过修改 endpoint URL 直接调用模型,无需自定义客户端或 SigV4 签名包装器。
- 该功能暴露
/openai/v1路径,接受 Chat Completions 请求并支持流式响应,适用于所有使用标准 SageMaker API 和 SDK 创建的 endpoints 和 inference components。 - 引入 Bearer Token 认证机制,基于现有 AWS 凭据生成限时令牌(默认有效期 12 小时),替代传统的 API Key 或复杂签名流程。
- 支持多模型托管场景,用户可通过单个 endpoint 的不同 inference components 调用多个模型(如 Llama 和 Mistral),共用同一 OpenAI SDK 接口。
为什么值得看
这对 AI 从业者意味着显著降低了将 AWS 托管模型集成到现有 AI 应用(特别是基于 LangChain、Strands Agents 等框架)的成本,消除了针对 AWS 特有的代码重写需求。它使得 AWS 基础设施能够像其他 LLM 提供商一样,无缝融入基于 OpenAI 协议的多提供商 LLM 网关架构中。
关键数据
- 令牌有效期:Bearer Token 默认有效期为 12 小时,可通过
expiry参数设置为 1 秒至 12 小时之间的任意值。 - API 路径:SageMaker AI endpoints 暴露的 OpenAI 兼容路径为
/openai/v1。 - 示例模型:原文明确提到的部署示例模型为 Qwen3-4B(需从 Hugging Face 下载并存储于 S3)。
- 依赖 SDK:前置条件包括安装
pip install sagemaker和pip install openai。
技术解析
- 路由机制:SageMaker AI 基于 URL 中的 endpoint 名称进行路由,使得任何 OpenAI 兼容客户端无需修改逻辑即可直接对接,仅改变 base URL 即可切换后端。
- 认证实现:使用
sagemaker.core.token_generator.generate_token函数生成 Bearer Token。该函数利用默认 AWS 凭据链(支持环境变量、IAM 角色、SSO 等)创建令牌,令牌需具备sagemaker:CallWithBearerToken和sagemaker:InvokeEndpoint权限。 - 多模型推理:通过 Inference Components 功能,单个 Endpoint 可承载多个模型(每个模型分配独立资源),应用程序无需在代码层面实现路由逻辑,只需通过 OpenAI SDK 指定不同的模型 ID 即可调用不同组件。
- 长期运行应用适配:文中提供了自动刷新 Token 的代码模式(如
SageMakerAuth类),建议在每次请求时重新生成 Token,以确保长期运行服务的认证有效性。
行业启示
- 多云统一接口趋势:AWS 此举进一步巩固了 OpenAI API 作为事实标准的地位,企业可更灵活地在不同云厂商间迁移 LLM 负载,通过统一的 LLM 网关(如 Bifrost)屏蔽底层基础设施差异。
- Agentic Workflow 自主性提升:对于使用 LangChain 或 Strands Agents 构建复杂 Agent 的团队,这意味着可以在保持现有代码架构不变的前提下,将推理层移至拥有更高控制权的 AWS 专有 GPU 实例上,平衡成本、性能与数据隐私。
常见问题
Q: 使用 Bearer Token 认证是否意味着不再需要 SigV4 签名?
A: 是的。通过 OpenAI 兼容接口调用时,使用由 SageMaker SDK 生成的限时 Bearer Token 即可,无需在 HTTP 请求中手动进行 SigV4 签名计算,这大大简化了客户端集成。
Q: 如何在一个 Endpoint 上部署多个不同的模型?
A: 使用 SageMaker AI 的 Inference Components 功能。每个组件托管一个模型并分配独立资源,但它们共享同一个 Endpoint URL。应用程序通过 OpenAI 标准接口调用时,只需改变请求中的模型名称来指向不同的组件,无需维护多个 API 客户端。
免责声明:以上内容由 AI 生成,仅供参考。
相关文章
每天接收最值得关注的 AI 信号
加入 1000+ 创始人、投资人和技术从业者。每天早上直达邮箱:精选 AI 动态、深度分析、值得关注的二阶变量。
无垃圾邮件,随时退订。