Enrutamiento de proveedores
OfoxAI soporta una arquitectura multi-proveedor donde el mismo modelo puede ser servido a través de diferentes nodos de proveedores. Mediante estrategias de enrutamiento, puede controlar cómo se distribuyen las solicitudes.
Estrategias de enrutamiento
| Estrategia | Descripción | Caso de uso |
|---|---|---|
priority | Por orden de prioridad (predeterminado) | Prioridad a la estabilidad |
cost | Prioridad al menor costo | Procesamiento por lotes, sensible al costo |
latency | Prioridad a la menor latencia | Conversación en tiempo real, interacción con el usuario |
balanced | Balanceo de carga | Escenarios de alta concurrencia |
Modo de uso
Configure la estrategia de enrutamiento mediante el parámetro extendido provider.routing:
from openai import OpenAI
client = OpenAI(
base_url="https://api.ofox.ai/v1",
api_key="<su OFOXAI_API_KEY>"
)
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[{"role": "user", "content": "Hola"}],
extra_body={
"provider": {
"routing": "cost" # Prioridad al menor costo
}
}
)const response = await client.chat.completions.create({
model: 'openai/gpt-4o',
messages: [{ role: 'user', content: 'Hola' }],
// @ts-ignore Parámetro extendido de OfoxAI
provider: {
routing: 'cost'
}
})Detalle de estrategias
priority — Enrutamiento por prioridad (predeterminado)
Distribuye las solicitudes según el orden de prioridad preestablecido por OfoxAI. Usa preferentemente los nodos con mayor estabilidad.
cost — Prioridad al costo
Selecciona automáticamente el nodo del proveedor con menor costo actual. Ideal para procesamiento por lotes, etiquetado de datos y otros escenarios donde la latencia no es crítica.
latency — Prioridad a la latencia
Selecciona el nodo del proveedor con menor latencia de respuesta. Ideal para escenarios de conversación en tiempo real que requieren respuestas rápidas.
balanced — Balanceo de carga
Distribuye las solicitudes de manera uniforme entre todos los nodos de proveedores disponibles. Ideal para escenarios de alta concurrencia, evitando la sobrecarga de un solo punto.
Mejores prácticas
- Conversación en tiempo real — use
latencypara menor tiempo de espera del usuario - Tareas por lotes — use
costpara reducir el costo total - Entorno de producción — use
prioritypor defecto para garantizar la estabilidad - Combine con respaldo — Las estrategias de enrutamiento se pueden combinar con el parámetro
fallback
También puede configurar una estrategia de enrutamiento global predeterminada en la consola de OfoxAI, sin necesidad de especificarla en cada solicitud.