跳到主要内容

服务提供方兼容性

服务提供方兼容性同时取决于面向调用方的端点,以及模型别名背后的上游服务提供方配置。一个模型可以在通用聊天端点正常工作,但在某个服务提供方专属端点被拒绝。

AISIX 有两层兼容性判断:

层级作用
适配器协议族决定如何为上游服务提供方编码聊天类请求。参见适配器协议族
端点规则决定特定代理路由是否接受选中的模型别名。

规划路由时需要同时检查这两层。适配器告诉 AISIX 如何与上游服务提供方通信;端点自身规则决定该代理路由是否支持选中的服务提供方或适配器协议族。

端点兼容性

请根据调用方 API 格式和服务提供方支持要求选择代理路由。

需求路由服务提供方支持
广泛聊天兼容性/v1/chat/completionsOpenAI、Anthropic、Bedrock、Vertex AI、Azure OpenAI,以及通过已配置适配器接入的 OpenAI 兼容服务提供方。
Anthropic 风格客户端/v1/messagesAnthropic 上游原生支持;非 Anthropic 上游通过转换支持,但能力覆盖有限。
Anthropic token 计数/v1/messages/count_tokens仅支持 Anthropic 上游模型。
流式聊天stream: true/v1/chat/completions/v1/messages服务提供方支持范围与所选端点一致。流式请求使用第一个被选中的目标,不在流式传输过程中故障转移。
Embeddings/v1/embeddings支持 OpenAI 适配器。其它适配器在未增加支持前返回 501 not_implemented
OpenAI Responses API/v1/responsesOpenAI 上游原样转发;当服务提供方适配器支持转换后的请求形态时,非 OpenAI 上游通过 Responses 桥接支持。
图片生成/v1/images/generations已配置服务提供方为 OpenAI 的模型。
音频/v1/audio/transcriptions/v1/audio/translations/v1/audio/speechOpenAI 风格上游音频路由。AISIX 会转发音频格式,不跨服务提供方协议族转换音频。
Rerank/v1/rerankOpenAI、Cohere 和 Jina 服务提供方取值。
服务提供方原生路由/passthrough/:provider/*rest任何拥有可访问模型和服务提供方密钥的 provider 值,并带有限的网关标准化处理。

端点规则

兼容性矩阵是主要路由参考。以下规则用于澄清服务提供方身份、适配器协议族和端点行为不完全一致的情况。

  • Chat completions 是覆盖最广的标准化路由。对于非 OpenAI 上游,网关背后的服务提供方请求仍可以使用 Anthropic、Bedrock、Vertex AI、Azure OpenAI 或其它适配器专属格式。
  • Responses 使用服务提供方专属处理。OpenAI 上游模型会转发到上游 Responses API。其它服务提供方会通过聊天适配器路径桥接,并针对受支持请求能力返回 Responses 形态结果。
  • 图片生成是 OpenAI 服务提供方路由。某个 OpenAI 兼容厂商可以在 chat completions 中使用 OpenAI 适配器,但如果其 provider 值不是 openai,仍会在该路由上被拒绝。
  • Embeddings 和音频是 OpenAI 风格转发路由,依赖解析出的适配器和上游路由支持,不跨服务提供方协议族转换。
  • Rerank 使用路由专属的服务提供方允许列表,接受的 provider 值为 openaicoherejina
  • Anthropic Messages 支持原生 Anthropic 上游,也支持经过转换的非 Anthropic 上游。token 计数需要 Anthropic 上游模型。