Skip to Content
DocsFunciones avanzadasEnrutamiento de proveedores

Enrutamiento de proveedores

Un mismo modelo suele estar servido por más de un proveedor: bytedance/seedance-2.0, por ejemplo, llega tanto de volcengine como de byteplus. ofox selecciona un proveedor de forma automática; provider.type fija la petición a uno concreto.

Enrutamiento por defecto

Cuando no se envía el campo provider, ofox reparte la petición con un peso entre los canales que sirven ese modelo en ese momento. Qué proveedor atiende una petición concreta no es predecible.

Fijar un proveedor

Indica el nombre del proveedor en el campo type. La ubicación del campo difiere según el tipo de modelo:

Tipo de modeloUbicación del campo
Modelos de chatextra_body.provider.type
Modelos de vídeoprovider.type

El protocolo nativo de Gemini ignora extra_body.provider en el cuerpo: la petición se completa, la restricción sencillamente no se aplica y no hay ningún error. En ese protocolo usa la cabecera X-OfoxAI-Provider-Type. El contrato de campo por protocolo está en API · Enrutamiento de proveedores.

Terminal
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" } } }'

Con los SDK oficiales de OpenAI, extra_body debe estar presente como clave literal en el cuerpo de la petición. El SDK de TypeScript lo envía tal como se escribe en el objeto de parámetros. El argumento extra_body= del SDK de Python fusiona su contenido en el nivel superior del cuerpo, por lo que la clave debe anidarse un nivel más, o enviarse como cabecera.

Proveedores disponibles

Los proveedores que ofox admite actualmente se listan a continuación. Los nombres cortos, entre paréntesis, equivalen al nombre completo; se aceptan ambos:

ProveedorDescripción
openaiOpenAI :API oficial de la familia GPT
anthropicAnthropic :API oficial de la familia Claude
geminiGoogle AI :API oficial de la familia Gemini
azure_foundry (foundry)Azure AI Foundry :plataforma de alojamiento de modelos en Microsoft Azure
aws_bedrock (bedrock)Amazon Bedrock :servicio de alojamiento de modelos en AWS
google_vertex (vertex)Vertex AI :plataforma de alojamiento de modelos en Google Cloud
aliyunAlibaba Cloud Bailian :plataforma de servicios de modelos de Alibaba Cloud
volcengineVolcengine Ark :plataforma de ByteDance para China continental
byteplusBytePlus :plataforma de ByteDance para el resto del mundo
deepseekDeepSeek :API oficial de la familia DeepSeek
moonshotMoonshot AI :API oficial de la familia Kimi
zhipuZhipu AI :API oficial de la familia GLM
minimaxMiniMax :API oficial de la familia MiniMax
grokxAI :API oficial de la familia Grok
jinaJina AI :modelos de embedding y reranking
tencentTencent Cloud Hunyuan :plataforma de servicios de modelos de Tencent Cloud

No todos los proveedores sirven todos los modelos. Cuáles sirven un modelo concreto —y qué protocolos admite cada uno— aparece en la página de ese modelo dentro del catálogo de modelos . Los mismos datos están disponibles por código como provider_cards[], que devuelve GET /v2/models/catalog/{provider}/{slug}?include=provider_price.

Modelos de chat

Los modelos de chat se reparten entre la mayoría de los proveedores anteriores. La correspondencia exacta y el soporte de protocolos figuran en la página de cada modelo.

Modelos de vídeo

La familia bytedance/seedance-* está servida por los dos proveedores siguientes, cuyas políticas de contenido difieren:

ProveedorDescripciónPolítica de contenido
volcengineVolcengine Ark, plataforma de ByteDance para China continentalModeración estándar
byteplusBytePlus, plataforma de ByteDance para el resto del mundoPermite contenido no apto para todos los públicos (NSFW)

byteplus permite que seedance genere contenido no apto para todos los públicos (NSFW), mientras que volcengine aplica moderación estándar. Debe indicarse provider.type: "byteplus" de forma explícita cuando se requiera ese contenido; de lo contrario, el reparto ponderado puede enviar la petición a volcengine, donde la moderación la rechazará.

Errores habituales

error.typeCondición
invalid_provider_typeEl valor no está en la enumeración de proveedores: nombre mal escrito o escritura ya retirada.
provider_type_unavailableEl proveedor existe pero no sirve este modelo. En los modelos de chat el mensaje de error lista además los que sí lo sirven.
Last updated on