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:
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.
Modelos de chat
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.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:
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:
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á.