AWS 官宣接入:用 LiteLLM 网关统一调用 GPT-5.6 与 Claude 的 Mantle 引擎
【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100+ LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm
当 AWS 官方内容开始手把手教你"用 LiteLLM 网关接入新一代推理引擎 Mantle",这个信号比任何版本发布都更值得注意——云厂商第一次把第三方开源网关写进了自家 Bedrock 的官方技术路线。对开发者而言,这意味着一件更实际的事:你可以用同一套 OpenAI 兼容接口,同时驱动 GPT-5.6 与 Claude 的最新推理模型,而不需要为每个厂商维护一套 SDK。
本文结合 LiteLLM 仓库源码,拆解 Mantle 引擎的接入原理、配置写法与生产化要点,并聊聊这轮"官方背书"对国内开发者的实际意义。
一、Mantle 是什么:Bedrock 的"第三种接入范式"
在传统认知里,调用 Bedrock 上的模型只有两条路:InvokeModel(原生 JSON 负载)和Converse(统一会话协议),两者都依赖 AWS SigV4 签名。Mantle 打破了这套规则——它是 AWS 在 Bedrock 内部提供的OpenAI 兼容推理引擎,标准入口为https://bedrock-mantle.{region}.api.aws/v1,请求体、流式响应、参数语义全部遵循 OpenAI 规范。
LiteLLM 源码中对此的描述非常直白(见 litellm/llms/bedrock_mantle/chat/transformation.py):
Amazon Bedrock Mantle - OpenAI-compatible inference engine in Amazon Bedrock. Base URL: https://bedrock-mantle.{region}.api.aws/v1
这套引擎真正的亮点在协议面。同一个 Mantle 集群对外同时提供三种协议入口:
- OpenAI Chat Completions:
/v1/chat/completions,其中 GPT-5.x 与 Gemma-4 家族走/openai/v1/chat/completions; - 原生 Responses API:
/v1/responses(前沿模型走/openai/v1/responses); - 原生 Anthropic Messages API:
/anthropic/v1/messages,即仓库注释所称的 "Claude Mythos Preview" 端点。
也就是说,Mantle 不只是"把 GPT-5.6 放进 AWS"这么简单,它是把 OpenAI 与 Anthropic 两套生态的调用协议同时收编到一张 AWS 的入场券里。认证上它也做了双重设计:优先使用 Bearer Token(BEDROCK_MANTLE_API_KEY/AWS_BEARER_TOKEN_BEDROCK/api_key),没有 Token 时自动回退到标准 AWS 凭证链走 SigV4 签名,服务名为bedrock(见 litellm/llms/bedrock_mantle/common_utils.py)。对应的最小 IAM 权限为bedrock-mantle:CreateInference(见 litellm/llms/bedrock/base_aws_llm.py)。
二、LiteLLM 网关如何把 GPT-5.6 与 Claude "一行接进来"
LiteLLM 对 Mantle 的支持不是临时打补丁,而是以bedrock_mantle作为一级 provider 深度内置:独立的LlmProviders.BEDROCK_MANTLE枚举(见 litellm/types/utils.py)、独立的模型价格表分区、独立的健康检查与计费实现。
1. 价格表驱动:接入一个新模型等于改一行 JSON
在 model_prices_and_context_window.json 中,bedrock_mantle/前缀下已经内置了完整的模型能力矩阵,包括openai.gpt-5.6-sol、openai.gpt-5.6-terra、openai.gpt-5.6-cyber、openai.gpt-5.6-luna、openai.gpt-daybreak-blue-5.6-sol、anthropic.claude-opus-5-5、anthropic.claude-sonnet-5-5、anthropic.claude-haiku-4-5、google.gemma-4-*与xai.grok-4.6等。以bedrock_mantle/openai.gpt-5.6-sol为例,其规格非常夸张:
- 输入上下文105 万 tokens(
max_input_tokens: 1050000),输出上限 128K; mode: "responses",use_openai_responses_path: true,同时暴露/v1/chat/completions与/v1/responses双端点;- 原生支持 web search(
supports_web_search)、视觉输入、函数调用、xhigh级别推理强度与 prompt caching,并带精确到每 token 的输入/输出/缓存/搜索单价。
这套元数据的价值在于:接入新模型不用写任何代码。正如 litellm/llms/bedrock_mantle/common_utils.py 的注释所言,模型是否支持 Responses 由价格表的 capability 字段驱动,"onboarding a model is a JSON change, never a code change"——在网关配置里通过register_model或 proxy 的model_info补一条 JSON 即可上线。
2. 协议路由:Claude 走原生 Messages,GPT-5.6 走 OpenAI 面
网关层最关键的是协议分发。LiteLLM 提供了bedrock_mantle_chat_config(model)工厂函数(见 litellm/llms/bedrock_mantle/chat/claude_transformation.py):
def bedrock_mantle_chat_config(model: str) -> BaseConfig: if is_mantle_claude_model(model): return BedrockMantleClaudeChatConfig() # 原生 Anthropic Messages return BedrockMantleChatConfig() # OpenAI 兼容 Chat模型名含claude时自动切换到原生 Anthropic Messages 配置(/anthropic/v1/messages,anthropic-version走请求头而非请求体),其余模型一律走 OpenAI 兼容面。与此同时,区域前缀解析器支持us-gov-west-1/openai.gpt-5.6-terra这类写法——前缀只用于路由到对应区域的bedrock-mantle.<region>.api.aws,发送给上游的模型 ID 会被自动剥离(见 litellm/litellm_core_utils/get_llm_provider_logic.py)。
落到代理配置上,把 GPT-5.6 与 Claude 同时接入只需在config.yaml里声明模型列表:
model_list: - model_name: gpt-5.6-sol litellm_params: model: bedrock_mantle/openai.gpt-5.6-sol aws_region_name: us-east-1 - model_name: claude-opus-5-5 litellm_params: model: bedrock_mantle/anthropic.claude-opus-5-5 aws_region_name: us-east-1之后业务方既可用 OpenAI SDK 调/chat/completions,也可按 Responses 规范调用,还能以 Anthropic 风格调用 Claude——三条协议在网关后面统一为一种管理视图。
3. 前沿模型适配:Responses API 的"降级与纠偏"
Responses API 是 GPT-5.6 的主要消费面,LiteLLM 在 litellm/llms/bedrock_mantle/responses/transformation.py 中对 Mantle 的限制做了精细适配:
- 工具类型白名单:Mantle 只接受
function / mcp / custom / namespace / tool_search / web_search六类工具,不支持的会被丢弃并告警; - service_tier 约束:Mantle 只认
auto/default,客户端传入其他档位时按drop_params配置决定丢弃或报错,报错信息甚至直接指引 Codex CLI 用户修改~/.codex/config.toml; - 推理摘要约束:
reasoning.summary在 OpenAI 路径上只接受auto,其余取值自动降级; - Codex 兼容:调用
normalize_codex_input_items改写 Mantle 拒绝的 Codex 输入类型,让 Codex CLI 这类工具可以直接把网关当作后端。
这套"参数过滤 + 输入改写"逻辑,正是网关作为协议翻译层的核心价值:上游引擎的边界差异被消化在网关内部,客户端代码保持标准 OpenAI 语义不变。
4. 网关层收益:成本、健康检查与计量
统一接入只是起点。Mantle 模型内置在价格表中意味着成本追踪开箱即用——网关按实际输入/输出/缓存 token 记账;Claude 模型因跨区域推理在bedrock-runtime的 CountTokens 上会 400,LiteLLM 专门实现了通过 Mantle 的/anthropic/v1/messages/count_tokens端点计数(见 litellm/llms/bedrock/count_tokens/mantle_handler.py)。健康检查方面,mantle_health_check_mode对 Claude 模型自动使用anthropic_messages模式做连通性探测(见 litellm/llms/bedrock_mantle/common_utils.py)。再加上网关固有的负载均衡、自动降级、虚拟 Key 鉴权与观测接入,Mantle 从"一个可调用的端点"变成了"一个可治理的模型资源"。
三、官方接入对国内开发者的信号意义
第一重信号是路线确认。AWS 官方把 LiteLLM 写进 Mantle 的接入指南,说明云厂商已经默认"多模型、多协议"是服务化 AI 的常态,而开源网关是降低这一复杂度的公认杠杆。对国内团队而言,这意味着可以在不放弃现有 OpenAI SDK 习惯的前提下,把 GPT-5.6、Claude 乃至 Gemma、Grok 统一收敛到网关层,再按团队/项目下发虚拟 Key 与预算,这是社区文章里反复验证过的落地路径(Docker Compose 一键起网关 + Postgres 持久化成本数据 + Prometheus 观测)。
第二重信号是接入成本的显性化。Mantle 与 LiteLLM 的深度绑定让"换模型"的成本降到一次配置变更:价格表驱动能力发现、协议路由自动分发、参数差异自动兜底。国内开发者无需再为每个模型维护独立的适配代码,也不用担心某个模型在 Bedrock 上的特殊参数语义——这些边界条件已固化在网关的 transformation 层里。
第三重信号是安全意识的必要升级。网关统一了所有模型入口,也把安全风险集中到了一个点。此前社区已出现针对 LiteLLM 这类高安装量开源网关的供应链投毒事件,仓库本身也在持续强化交付链安全(cosign.pub签名公钥、osv-scanner.toml漏洞扫描配置、security.md安全策略均存在于仓库根目录)。对将网关纳入生产架构的团队来说,版本来源校验、依赖扫描与镜像签名验证应该与网关本身同步上线。
从"直连各家 SDK"到"一个网关吃下两个生态",Mantle 的官方接入只是第一步。真正值得关注的,是推理层协议正在被"OpenAI 兼容"加速收敛,而 LiteLLM 站在了这条收敛线上,用数据驱动的配置模型把复杂性挡在了网关之外——这也是它能在 AWS 官方路线图中占有一席之地的根本原因。
【免费下载链接】litellmThe fastest, litest AI Gateway. Rust core with Python SDK. Call 100+ LLM APIs in OpenAI (or native) format with cost tracking, guardrails, load balancing, and logging [Bedrock, Azure, OpenAI, Anthropic, OpenAI, VertexAI, vLLM, Nvidia NIM]项目地址: https://gitcode.com/GitHub_Trending/li/litellm
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考