OpenRouter é um proxy/gateway que unifica o acesso a dezenas de LLMs diferentes (OpenAI, Anthropic, Google, Meta, Mistral, etc.) através de uma única API compatível com o formato OpenAI. Permite trocar de modelo sem mudar código.

Como funciona

Sua aplicação → OpenRouter API → modelo escolhido (GPT-4o, Claude, Gemini, etc.)

Uma única API key do OpenRouter substitui múltiplas chaves de múltiplos provedores.

Uso (compatível com OpenAI SDK)

from openai import OpenAI
 
client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key="sk-or-...",
)
 
response = client.chat.completions.create(
    model="anthropic/claude-sonnet-4-5",  # formato: provedor/modelo
    messages=[{"role": "user", "content": "Olá!"}]
)

Seleção de modelos

O modelo é especificado no formato provedor/nome-do-modelo:

Modelo OpenRouterEquivalente
openai/gpt-4oGPT-4o
anthropic/claude-sonnet-4-5Claude Sonnet
google/gemini-2.0-flash-001Gemini 2.0 Flash
meta-llama/llama-3.3-70b-instructLlama 3.3 70B
mistralai/mistral-7b-instructMistral 7B

Roteamento inteligente

# Roteamento por preço — usa o modelo mais barato que atenda
model = "openai/gpt-4o"
 
# Fallback automático — se o modelo primário falhar, tenta o próximo
extra_body = {
    "route": "fallback",
    "models": ["anthropic/claude-sonnet-4-5", "openai/gpt-4o"]
}

Integrações

  • LangChain: ChatOpenAI(base_url="https://openrouter.ai/api/v1")
  • LiteLLM: suporte nativo via openrouter/modelo
  • LlamaIndex: OpenAI(api_base="https://openrouter.ai/api/v1")

Monitoramento de custo

O OpenRouter registra custo por chamada e permite ver o gasto por modelo no dashboard. Para rastreamento mais detalhado em produção, combinar com langfuse.

Ver também: llm | langfuse