适配器协议族
适配器是模型别名解析到服务提供方密钥后,AISIX 用来访问上游的协议族。它决定上游认证方式、请求编码方式,以及服务提供方相关的请求处理逻辑。
路由级服务提供方支持情况请参见服务提供方兼容性。
选择适配器
适配器的选择方式取决于网关的管理方式:
- 对于 AISIX Cloud 目录中的服务提供方,请选择服务提供方。控制面会推导适配器,AISIX Cloud Admin API 会拒绝显式的
adapter字段。 - 对于 AISIX Cloud 中的自定义端点,请将
provider设置为byo,并显式选择适配器。 - 对于开源 AISIX 网关,请在
resources.yaml中同时设置provider和adapter。服务提供方值是开放字符串,可以使用目录 ID,也可以为私有端点使用描述性名称。
在所有情况下,服务提供方值用于标识上游厂商或端点,适配器用于标识 AISIX 与其通信所使用的协议族。适配器值是闭集,因为 AISIX 只能编码已经实现的协议。
例如,以下 AISIX Cloud 服务提供方密钥通过 OpenAI 适配器连接私有 OpenAI 兼容端点:
{
"provider": "byo",
"adapter": "openai",
"api_base": "https://llm.private.example/v1"
}
随后,AISIX 会使用 OpenAI 兼容协议向配置的 api_base 发送上游请求。
适配器取值
| 上游 API 格式 | adapter | 示例 |
|---|---|---|
| OpenAI 兼容 API | openai | OpenAI、DeepSeek、Groq、Mistral、Together.ai、Fireworks、Perplexity、vLLM、SGLang、Ollama、私有 OpenAI 兼容端点 |
| Anthropic Messages | anthropic | Anthropic 原生 Messages API |
| AWS Bedrock Runtime | bedrock | Bedrock 上的 Anthropic Claude、Bedrock Converse 发布方 |
| Google Vertex AI 发布方路由 | vertex | Gemini 以及受支持的 Vertex AI 发布方路由 |
| Azure OpenAI Service | azure-openai | 使用 API Key 或 Entra ID 认证的 Azure OpenAI 部署 |
适配器行为
adapter | 行为 |
|---|---|
openai | 使用 OpenAI 兼容请求和响应格式。该适配器覆盖 OpenAI、公开的 OpenAI 兼容厂商,以及私有 OpenAI 兼容端点。 |
anthropic | 使用 Anthropic Messages API 请求。上游认证使用 x-api-key 和 anthropic-version。 |
bedrock | 使用 AWS Bedrock Runtime。AISIX 会使用 AWS SigV4 对出站请求签名。Anthropic Claude 模型使用 Bedrock invoke 请求,其它受支持发布方使用 Bedrock Converse。 |
vertex | 使用 Google Vertex AI 发布方路由。AISIX 通过 GCP OAuth2 Bearer Token 认证,并调用发布方对应的 Vertex 端点。 |
azure-openai | 使用 Azure OpenAI Service 部署路由。AISIX 会根据服务提供方密钥中的资源主机和模型的上游部署名称构造 Azure URL。 |
请求处理
直接模型会引用服务提供方密钥。AISIX Cloud 在 provider_key_id 中保存该引用;对于开源 AISIX 网关,resources.yaml 使用 provider_key 引用服务提供方密钥的 display_name。服务提供方密钥提供服务提供方值和适配器,AISIX 会结合这些字段与模型的上游模型 ID 构造服务提供方请求。
AISIX 分两步选择上游请求处理方式:
- 检查服务提供方值是否有服务提供方专属请求处理逻辑。
- 如果没有,则使用适配器协议族。
如果两条路径都不可用,请求会在到达上游服务提供方之前失败。
模型的 display_name 是面向调用方的模型别名;model_name 是上游模型 ID。对于标准化聊天响应,响应中的 model 字段会回显面向调用方的别名。
适配器描述的是上游协议族,并不保证每个代理端点都支持每个服务提供方。
目录与自定义服务提供方
在 AISIX Cloud 中,用户通过控制台或 AISIX Cloud Admin API 选择目录服务提供方。控制面会将其映射到适配器协议族,在目录定义了默认 Base URL 时填充该值,并将服务提供方密钥配置下发到 AISIX 网关。
对于开源 AISIX 网关,请在声明式资源文件的每个服务提供方密钥中直接设置 provider、adapter、api_base 和上游凭证(api_key 或其别名 secret)。
运行时行为取决于模型别名、服务提供方密钥、服务提供方值、适配器和连接设置。