供应商路由
同一模型通常由多个供应商承载——例如 bytedance/seedance-2.0 同时来自 volcengine 与 byteplus。ofox 默认自动选择供应商,provider.type 可将请求锁定到指定供应商。
默认路由策略
未传 provider 字段时,ofox 在该模型当前可用的渠道之间按权重分流。单次请求最终由哪个供应商承载不可预期。
指定供应商
将供应商名称填入 type 字段。两类模型的字段位置不同:
| 模型类型 | 字段路径 |
|---|---|
| 文本模型 | extra_body.provider.type |
| 视频模型 | provider.type |
Gemini 原生协议会忽略请求体中的 extra_body.provider —— 请求正常返回,约束不生效,且没有任何报错。该协议请改用 X-OfoxAI-Provider-Type 请求头。 各协议的字段位置对照见 API · 供应商路由。
文本模型
cURL
curl https://api.ofox.io/v1/chat/completions \
-H "Authorization: Bearer $OFOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-5",
"messages": [{ "role": "user", "content": "..." }],
"extra_body": {
"provider": { "type": "bedrock" }
}
}'使用官方 OpenAI SDK 时,extra_body 需作为请求体中的字面量键存在。TypeScript SDK 在参数对象中直接书写 extra_body 即可;Python SDK 的 extra_body= 参数会将其内容合并至请求体顶层,因此需额外嵌套一层,或改用请求头传递。
可选供应商
ofox 当前支持的供应商如下。括号内为简写,与完整名称等效,二者均可使用:
| 供应商 | 说明 |
|---|---|
openai | OpenAI :GPT 系列官方 API |
anthropic | Anthropic :Claude 系列官方 API |
gemini | Google AI :Gemini 系列官方 API |
azure_foundry(foundry) | Azure AI Foundry :微软云模型托管平台 |
aws_bedrock(bedrock) | Amazon Bedrock :AWS 云模型托管服务 |
google_vertex(vertex) | Vertex AI :谷歌云模型托管平台 |
aliyun | 阿里云百炼 :阿里云模型服务平台 |
volcengine | 火山引擎方舟 :字节跳动国内平台 |
byteplus | BytePlus :字节跳动海外平台 |
deepseek | DeepSeek :DeepSeek 系列官方 API |
moonshot | 月之暗面 :Kimi 系列官方 API |
zhipu | 智谱 :GLM 系列官方 API |
minimax | MiniMax :MiniMax 系列官方 API |
grok | xAI :Grok 系列官方 API |
jina | Jina AI :向量与重排模型 |
tencent | 腾讯云混元 :腾讯云模型服务平台 |
并非所有供应商都承载全部模型。特定模型的承载供应商及各供应商支持的协议,可在模型广场 的模型详情页查看;程序化获取请使用 GET /v2/models/catalog/{provider}/{slug}?include=provider_price 返回的 provider_cards[]。
文本模型
文本模型分布于上表中的多数供应商。具体承载关系与协议支持情况以模型详情页为准。
视频模型
bytedance/seedance-* 系列由以下两个供应商承载,二者内容策略存在差异:
| 供应商 | 说明 | 内容策略 |
|---|---|---|
volcengine | 火山引擎方舟,字节跳动国内平台 | 标准审核 |
byteplus | BytePlus,字节跳动海外平台 | 支持不适合所有受众(NSFW)的内容 |
byteplus 允许 seedance 生成不适合所有受众(NSFW)的内容,volcengine 执行标准审核。需要此类内容时必须显式指定 provider.type: "byteplus";未指定时请求可能经加权分流进入 volcengine,并被内容审核拒绝。
常见错误
error.type | 触发条件 |
|---|---|
invalid_provider_type | 取值不在供应商枚举内:名称拼写错误,或使用了已废弃的写法。 |
provider_type_unavailable | 供应商存在,但未承载该模型。文本模型的错误信息中会一并列出该模型的可用供应商。 |