OpenRouter — API unificada para más de 300 modelos, una sola factura
OpenRouter es un router gestionado que expone más de 300 LLM (OpenAI, Claude, Gemini, modelos open source vía Groq/Together/Fireworks) detrás de una única API compatible con OpenAI y una factura consolidada.
Why OpenRouter
OpenRouter resuelve un dolor específico: "quiero probar 10 modelos esta semana sin firmar 10 contratos con proveedores". Cargas crédito una vez, accedes a todos los grandes modelos cerrados y open source detrás de una sola API key, cambias de modelo cambiando un string. El precio es pay-per-token — un pequeño margen sobre los precios directos de proveedor a cambio de cero setup y facturación unificada.
Es la vía más rápida para benchmarkear modelos sobre tu carga real. Prompt caching, streaming, tool calls y visión funcionan todos de manera uniforme. Puedes A/B testear Claude 3.5 Sonnet contra Gemini 2.0 Pro contra Llama 3.3 70B en una tarde.
Donde no es la respuesta correcta: cuando necesitas relaciones directas con los proveedores (contratos enterprise, SLAs zero-retention, residencia regional de datos) o cuando el margen por token importa a tu volumen. A más de 10M de tokens al mes, ir directo con LiteLLM proxificando tus propias claves suele ser más barato y te da palanca contractual.
Quick Start — OpenAI SDK + Model String
HTTP-Referer y X-Title son opcionales pero recomendados — hacen que tu app aparezca en el leaderboard de OpenRouter (útil para atribución). Los nombres de modelo siguen el formato proveedor/model-slug. El modelo "openrouter/auto" deja el enrutamiento al optimizador de costo de OpenRouter.
# pip install openai
from openai import OpenAI
client = OpenAI(
api_key="sk-or-...",
base_url="https://openrouter.ai/api/v1",
default_headers={
"HTTP-Referer": "https://tokrepo.com",
"X-Title": "TokRepo AI Gateway Example",
},
)
# Switch models by changing the string — same code path
for model in [
"anthropic/claude-3.5-sonnet",
"openai/gpt-4o-mini",
"google/gemini-2.0-flash-001",
"meta-llama/llama-3.3-70b-instruct",
]:
resp = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": "Name one thing you do best."}],
max_tokens=80,
)
print(f"{model}: {resp.choices[0].message.content.strip()}")
print(f" cost: $ {resp.usage.total_tokens} tokens")
# Advanced: let OpenRouter pick cheapest available provider
# model="openrouter/auto" → auto-routes based on cost + availability.
# Or use OR-specific params for provider preferences and fallbacks.Características clave
300+ modelos detrás de una sola API
Modelos cerrados (OpenAI, Anthropic, Google, Cohere), grandes modelos abiertos (Llama, Mistral, Qwen, DeepSeek) y modelos especializados (Perplexity online, modelos de visión). Una API key para todo.
Failover automático entre proveedores
OpenRouter mantiene varios proveedores upstream por modelo open source (Groq, Together, Fireworks, Anyscale). Si uno está caído o lento, reintenta con otro de manera transparente.
Pay-per-token, sin mínimos
Cargas crédito y pagas solo lo que usas. Sin cuotas mensuales, sin suscripciones por proveedor. Costo visible por petición en los headers de respuesta.
Preferencias de proveedor
Headers en la petición para priorizar proveedores, regiones o tiers de pricing específicos. Útil para compliance ("solo proveedores UE") o rendimiento ("prefiero Groq").
Modelos en tier gratis
Un conjunto rotativo de modelos gratis (por ejemplo, variantes pequeñas de Llama y Gemma) para experimentación. Rate-limited pero útiles para prototipado.
Atribución de app
Las apps pueden registrarse con OpenRouter para leaderboards y reglas de enrutamiento por defecto. Buen canal de distribución para herramientas AI públicas.
Comparación
| Type | Model Count | Billing | Self-host? | |
|---|---|---|---|---|
| OpenRouteresta | Managed router | 300+ | Unified (topup + per-token) | No |
| LiteLLM | Self-host proxy + SDK | 100+ providers | BYO keys per provider | Yes |
| Together AI | Hosted open-source inference | ~50 OSS models | Per-token | No |
| Groq | Specialty fast inference | ~20 OSS models | Per-token | No |
Casos de uso
01. Benchmarking de modelos
Corre tus prompts reales contra una docena de modelos en una tarde. Compara calidad y costo antes de comprometerte con un proveedor principal.
02. Prototipado rápido
Side projects, hacks de fin de semana, demos — una sola recarga, todos los modelos disponibles. Evita la fricción de "solo quiero 5 $ de Claude" del alta directa con el proveedor.
03. Apps que dejan al usuario elegir modelo
Chatbots y wrappers AI que exponen la elección de modelo a los usuarios finales. OpenRouter es la vía más limpia para ofrecer 10+ opciones sin 10+ integraciones.
Precios y licencia
Precio por token: costo upstream directo más un pequeño margen (típicamente 5-10 %). Tarifas exactas por modelo en openrouter.ai/models. Sin cuotas mensuales.
Tier gratuito: modelos gratis limitados (rate-limited, lista rotativa) para experimentar. Útil para dev/test sin gasto.
A escala, compara contra el directo: para cargas mono-modelo de alto volumen, las relaciones directas con proveedores suelen ganarle al margen de OpenRouter. OpenRouter gana en flexibilidad y costo multi-modelo; el directo gana en descuentos por volumen y compliance.
Activos relacionados en TokRepo
OpenRouter — Unified API for 300+ LLMs with Auto Failover
OpenRouter is one OpenAI-compatible endpoint for 300+ LLMs across 60+ providers. Transparent pricing, no markup, automatic failover when a route is down.
OpenRouter MCP — One Server for 300+ LLMs in Claude Code
OpenRouter MCP exposes all 300+ OpenRouter models to Claude Code, Cursor, Codex CLI as one MCP server. Switch models per task, BYO routing, no extra SDKs.
OpenRouter Auto Routing — Pick the Best Model per Query
OpenRouter Auto routes each query to the optimal model balancing cost, latency, capability. Set model=openrouter/auto, the router decides per-prompt.
OpenRouter — Unified API for 200+ AI Models
Single API to access 200+ AI models from OpenAI, Anthropic, Google, Meta, Mistral, and more. OpenAI-compatible format, automatic fallbacks, and usage-based pricing.
Preguntas frecuentes
¿OpenRouter vs LiteLLM?+
OpenRouter es un servicio gestionado (ellos guardan las claves, te facturan, toman un margen). LiteLLM es un proxy self-hosted (tú guardas las claves, recibes facturas directas del proveedor). OpenRouter para velocidad y flexibilidad; LiteLLM para control y compliance.
¿Cuánto añade OpenRouter sobre los precios del proveedor?+
Típicamente un margen del 5-10 %, según el modelo. Algunos modelos open source cuestan menos en OpenRouter que el precio anunciado del proveedor gracias a los acuerdos de volumen de OpenRouter. Compara en openrouter.ai/models para la tarifa actual de cada modelo.
¿OpenRouter soporta tool calls / function calling?+
Sí — en los modelos que lo soportan (OpenAI, Claude, Gemini, muchos modelos open source vía sus runtimes respectivos). La API reproduce la forma de tool calls de OpenAI.
¿Puedo usar OpenRouter con Claude Code / Cursor / Cline?+
Sí. Estas herramientas aceptan cualquier endpoint compatible con OpenAI. Apúntalos a https://openrouter.ai/api/v1 con tu clave de OpenRouter y elige cualquier modelo soportado.
¿Hay alguna preocupación de retención de datos?+
OpenRouter loguea metadatos (qué modelo, tokens, latencia) por defecto. El logging del contenido del prompt/respuesta es opt-in por petición vía headers. Para zero-retention completo, revisa los proveedores específicos y activa el header "OpenRouter ignore" — o usa LiteLLM con claves directas del proveedor.