Provedores LLM e SmartRouter
14 provedores suportados, estratégias de roteamento, controle de budget e anomaly detection.
Por que múltiplos provedores
Um único provedor de LLM é um ponto único de falha operacional. Três cenários recorrentes ilustram o problema:
- Orçamento — GPT-4 e Claude Opus custam por milhão de tokens uma ordem de grandeza a mais que DeepSeek ou Gemini Flash. Pagar o preço premium para tarefas triviais é desperdício linear.
- Disponibilidade — cada provedor tem incidentes, rate limits, regiões indisponíveis. Depender de um deles deixa o agente offline quando o provedor está.
- Fit por tarefa — Claude é forte em código longo, GPT em raciocínio abstrato, Gemini em multimodal, Groq e Cerebras em throughput bruto. A escolha ótima depende da query, não do contrato anual.
O IronShell integra 14 provedores com uma fachada comum, e o SmartRouter escolhe o melhor para cada turno baseado em estratégia configurável.
Os 14 provedores suportados
Provedores em nuvem
Anthropic
- Modelos: Claude Sonnet 4.6, Sonnet 4.7, Opus 4.5.
- Força: código longo (até 1M de tokens no Opus), raciocínio com extended thinking, tool use confiável.
- Uso típico: geração de código complexa, análise arquitetural, review de PR.
- Custo relativo: alto, mas com prompt caching reduz 60-80%.
OpenAI
- Modelos: GPT-4o, GPT-4 Turbo, GPT-5.
- Força: ampla cobertura de conhecimento, boa qualidade em vision, SDK maduro.
- Uso típico: queries abertas de conhecimento, análise de imagem, embeddings.
- Custo relativo: médio-alto. Prompt caching disponível.
Google (Gemini)
- Modelos: Gemini 2.5 Pro, Gemini 2.5 Flash, Gemini Multimodal Live.
- Força: context window de até 2M tokens, multimodal nativo com vídeo.
- Uso típico: análise de documentos grandes, pipelines vision, OCR de qualidade.
- Custo relativo: baixo-médio. Free tier generoso.
DeepSeek
- Modelos: DeepSeek-V3, DeepSeek-Coder-V2.
- Força: custo imbatível (aproximadamente 0,27 USD por milhão de tokens, 10x mais barato que GPT-4), qualidade alta em código.
- Uso típico: tarefas de código em volume, batch jobs, prototipagem.
- Custo relativo: muito baixo.
Groq
- Modelos: Llama 3.3 70B, Mixtral 8x7B, DeepSeek-R1-Distill.
- Força: latência extrema via LPU custom — tokens saem em velocidade de rede, não de GPU.
- Uso típico: respostas em tempo real, chatbots interativos, streaming.
- Custo relativo: baixo.
Cerebras
- Modelos: Llama 3.1 70B, Llama 3.1 405B.
- Força: 2.100 tokens por segundo sustentados — o mais rápido disponível comercialmente.
- Uso típico: geração em streaming para UX responsiva, agentes em loop tight.
- Custo relativo: médio.
SambaNova
- Modelos: Llama 3.1 405B, DeepSeek-V3.
- Força: alternativa de alto throughput a Groq/Cerebras, disponibilidade diferente.
- Uso típico: failover quando os outros high-speed estão saturados.
OpenRouter
- Modelos: proxy para 300+ modelos de terceiros.
- Força: único lugar para acessar modelos específicos (Nous Hermes, Qwen, etc.).
- Uso típico: experimentação, acesso a modelos sem contrato direto.
- Observação: markup sobre o preço do provedor subjacente.
Fireworks AI
- Modelos: Llama, Mixtral, DeepSeek, modelos fine-tuneados.
- Força: hospedagem de modelos open source com SLA empresarial.
- Uso típico: carga de produção em modelo open source.
Together AI
- Modelos: Llama, Mistral, Qwen, dezenas de opções.
- Força: catálogo extenso, preços competitivos, API compatível OpenAI.
- Uso típico: substituto de Fireworks, comparação de modelos.
Azure OpenAI
- Modelos: GPT-4, GPT-4o, GPT-5 (conforme disponibilidade regional).
- Força: compliance enterprise, data residency por região, SLA contratual.
- Uso típico: ambientes regulados que já têm contrato Azure.
Provedores locais
Ollama
- Modelos: qualquer modelo GGUF (Llama, Mistral, DeepSeek, Qwen, etc.).
- Força: 100% local, zero custo por token, zero vazamento de dados.
- Uso típico: ambientes air-gapped, compliance estrita, desenvolvimento offline.
- Requisito: GPU recomendada (GTX 1060+ para modelos 7B, RTX 4090+ para 70B).
vLLM
- Modelos: Hugging Face models via vLLM server.
- Força: throughput production-grade com continuous batching.
- Uso típico: produção self-hosted em GPU dedicada.
- Requisito: GPU NVIDIA, CUDA 11.8+.
LocalAI
- Modelos: GGUF, ONNX, diffusers (imagem).
- Força: API compatível OpenAI, suporte CPU-only, multi-modelo.
- Uso típico: deploy on-premise simples, testes.
SmartRouter
O SmartRouter é o componente que escolhe qual provedor usar para cada turno. Ele considera quatro dimensões e permite escolher a estratégia por aplicação.
Estratégia: economy
Minimiza custo por token. Prioriza DeepSeek, Gemini Flash, Ollama (zero cost), Groq para latência. Usa Claude ou GPT-4 só se a tarefa explicitamente requer alta qualidade.
Quando usar: agentes batch, jobs noturnos, pipelines de ingestão de volume, prototipagem.
Estratégia: speed
Minimiza latência token-a-token. Prioriza Cerebras (2.100 tok/s), Groq (LPU), SambaNova, Gemini Flash.
Quando usar: chatbots em tempo real, agentes interativos, UX que precisa de streaming imediato.
Estratégia: quality
Maximiza qualidade de output mesmo com custo e latência maiores. Prioriza Claude Opus, GPT-5, Gemini 2.5 Pro.
Quando usar: geração de código em produção, análise arquitetural, review de segurança.
Estratégia: balanced (default)
Equilibra custo, latência e qualidade. Usa Claude Sonnet, GPT-4o, Gemini 2.5 Pro. Failover automático para provedores mais baratos se o orçamento está próximo do limite.
Quando usar: workload misto de desenvolvimento típico.
Estratégia: ilp (experimental)
Integer Linear Programming via glpk.js. Minimiza custo total respeitando threshold de performance por query. Requer corpus histórico de queries rotuladas.
Quando usar: otimização global em agentes de alto volume, quando o custo mensal de LLM é material.
IronBudget
O SmartRouter consulta o IronBudget antes de qualquer chamada. O IronBudget gerencia:
- Cap absoluto por provedor — em USD por dia, semana, mês.
- Cap por sessão — limite de gasto de um agente em uma sessão.
- Detecção de anomalia — se o gasto de um provedor sobe 10x acima da baseline de 7 dias, failover automático para provedor mais barato e alerta para o operador.
- Priorização quando budget estourar — provedores locais (Ollama, vLLM) nunca são bloqueados por budget. A lista de failover é configurável.
Exemplo de configuração
# .env
IRONSHELL_PROVIDER=smart-router
SMART_ROUTER_STRATEGY=balanced
# Keys (pelo menos uma)
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
GOOGLE_API_KEY=AI...
DEEPSEEK_API_KEY=sk-...
GROQ_API_KEY=gsk_...
# Budget (opcional)
IRONSHELL_BUDGET_DAILY_USD=50
IRONSHELL_BUDGET_MONTHLY_USD=1000
IRONSHELL_BUDGET_ANOMALY_MULTIPLIER=10
IRONSHELL_BUDGET_FAILOVER=ollama,deepseek,gemini-flash
# Provedor local como failover
OLLAMA_HOST=http://localhost:11434
OLLAMA_MODEL=llama3.3:70b
Com essa configuração, o agente começa usando a estratégia balanced, respeita o cap diário de 50 USD, e migra para Ollama local se algum provedor cloud apresentar spike anômalo.
Cenários práticos
Cenário 1 — Startup com budget apertado
SMART_ROUTER_STRATEGY=economy
DEEPSEEK_API_KEY=sk-...
GEMINI_API_KEY=AI...
GROQ_API_KEY=gsk_...
Com DeepSeek a 0,27 USD por 1M tokens para código e Gemini Flash para queries gerais, um agente ativo fica na faixa de 10-30 USD por mês para uso típico de desenvolvimento.
Cenário 2 — Enterprise com compliance Azure
SMART_ROUTER_STRATEGY=quality
AZURE_OPENAI_API_KEY=...
AZURE_OPENAI_ENDPOINT=https://...openai.azure.com/
AZURE_OPENAI_DEPLOYMENT=gpt-5-deployment
Restringe o agente a Azure OpenAI com data residency garantida. Todos os logs passam por auditoria HMAC local antes de sair da rede.
Cenário 3 — Ambiente air-gapped
SMART_ROUTER_STRATEGY=balanced
OLLAMA_HOST=http://localhost:11434
OLLAMA_MODEL=llama3.3:70b
VLLM_HOST=http://gpu-server:8000
IRONSHELL_OFFLINE=true
Nenhuma chamada HTTP externa. Ollama no laptop para queries pequenas, vLLM na GPU do servidor para carga pesada. O flag IRONSHELL_OFFLINE faz o SmartRouter ignorar provedores cloud mesmo se as keys estiverem setadas.
Cenário 4 — Latência crítica (tempo real)
SMART_ROUTER_STRATEGY=speed
CEREBRAS_API_KEY=csk-...
GROQ_API_KEY=gsk_...
SAMBANOVA_API_KEY=...
Cerebras como primário (2.100 tok/s), Groq como secundário, SambaNova como terciário. Latência primeira-token fica sub-100ms para streaming.
Comparação de custo
Ordem de magnitude, por milhão de tokens input, valores típicos de 2026. Confira sempre o preço atual no provedor antes de basear decisão em números absolutos.
| Provedor | Modelo | Input USD/1M | | --- | --- | ---: | | Anthropic | Claude Opus 4.5 | ~15 | | OpenAI | GPT-5 | ~12 | | Anthropic | Claude Sonnet 4.7 | ~3 | | OpenAI | GPT-4o | ~2.5 | | Google | Gemini 2.5 Pro | ~1.25 | | Fireworks | Llama 3.3 70B | ~0.90 | | Together | Llama 3.3 70B | ~0.88 | | Groq | Llama 3.3 70B | ~0.59 | | Google | Gemini 2.5 Flash | ~0.30 | | DeepSeek | DeepSeek-V3 | ~0.27 | | Ollama | qualquer | 0 | | vLLM | qualquer | 0 |
Para tarefas equivalentes, DeepSeek custa aproximadamente 50x menos que Claude Opus. A qualidade em código é razoavelmente próxima; em raciocínio abstrato há diferença sensível. O SmartRouter em modo balanced usa essa diferença para otimizar gasto médio.
Provider keepalive e health checks
O IronShell monitora disponibilidade dos provedores configurados com health check a cada 30 segundos. Provedores com 3 falhas consecutivas entram em quarentena por 5 minutos. O SmartRouter ignora provedores em quarentena automaticamente.
Métricas expostas via endpoint /v1/providers/health:
{
"anthropic": { "status": "healthy", "latency_p99_ms": 840, "last_check": "..." },
"openai": { "status": "healthy", "latency_p99_ms": 920, "last_check": "..." },
"deepseek": { "status": "quarantined", "reason": "3 timeouts", "retry_at": "..." },
"ollama": { "status": "healthy", "latency_p99_ms": 150, "last_check": "..." }
}
Próximos passos
- Integrações — channels, MCP, skills compatíveis.
- Deployment — self-host em VPS, enterprise on-premise.
- Benchmarks — performance medida dos componentes.
- FAQ — perguntas sobre SLA, compliance, enterprise.