Chatbots WhatsApp IA · Varela Insights

LLM routing multi-modelo en bots WhatsApp: reduce costos 80% sin perder calidad

El LLM routing multi-modelo es el patrón de usar el modelo de IA adecuado para cada tipo de tarea en lugar del más capaz para todas. Stack típico: Gemini Flash 2.5 para clasificación de intent (~$0.0001 USD/msg), Claude Haiku para FAQ (~$0.001), Claude Sonnet 4.5 para conversación natural (~$0.01), GPT-4o para razonamiento con function calling (~$0.02). Reduce costos 70-90% vs usar GPT-4o para todo. Implementación: ~50 líneas Python adicional, ROI primer mes.

Autor: Dr. Irving VarelaPublicado: 2026-05-23Lectura: 7 minIdioma: Español (México)

El error que sangra costos: usar GPT-4o para todo

Cuando una empresa implementa su primer bot WhatsApp con IA, el patrón más común es conectarlo a GPT-4o (o Claude Sonnet 4.5) y usar ese mismo modelo para CADA interacción. Resultado: factura mensual 10-50x más alta de lo necesario, sin diferencia perceptible en calidad para 80% de las conversaciones.

La solución es LLM routing multi-modelo: usar el modelo adecuado para cada tipo de tarea, en lugar de usar el más capaz para todas. Esto reduce costo operacional 70-90% sin sacrificar experiencia del usuario.

Los modelos disponibles en 2026 vía OpenRouter

ModeloCosto input (1M tokens)Costo output (1M tokens)Latencia típicaMejor para
Gemini Flash 2.5$0.0625 USD$0.25 USD500-800msClasificación intent, extracción entidad, respuestas cortas
Claude Haiku 4.5$0.25 USD$1.25 USD600-1000msConversación natural ligera, FAQs
GPT-4o-mini$0.15 USD$0.60 USD700-1200msRazonamiento simple, function calling básico
Claude Sonnet 4.5$3.00 USD$15.00 USD1000-2000msConversación natural en español MX, manejo de tono
GPT-4o$2.50 USD$10.00 USD1200-2500msRazonamiento estructurado, integración multi-fuente
Claude Opus 4.7$15.00 USD$75.00 USD2000-4000msSolo casos enterprise complejos, code generation

Diferencia de costo entre Gemini Flash y Claude Opus para procesar 1 millón de tokens: 48× más caro Opus. Para tareas simples (90% del bot), Flash es suficiente.

El stack de routing típico

Tier 0 — Clasificación de intent (Gemini Flash)

Cada mensaje entrante pasa primero por un clasificador rápido que determina: (a) ¿es FAQ conocida?, (b) ¿requiere data lookup?, (c) ¿es conversación libre?, (d) ¿es escalación humana?, (e) ¿es spam/fuera de scope?. Este step usa Gemini Flash con prompt de 200-300 tokens. Costo: ~$0.0001 USD por mensaje.

Tier 1 — FAQ y respuestas directas (Claude Haiku o cache)

Si intent = FAQ y respuesta está cacheada (vector store con embeddings), retorna respuesta cacheada sin pasar por LLM. Si no, usa Claude Haiku para generar. Costo: ~$0.001 USD por respuesta.

Tier 2 — Conversación natural (Claude Sonnet)

Si intent = conversación libre o respuesta tonal compleja, usa Claude Sonnet 4.5. Mantiene mejor el tono mexicano y maneja regionalismos. Costo: ~$0.01 USD por respuesta de 200 tokens output.

Tier 3 — Razonamiento + function calling (GPT-4o)

Si intent = requiere combinar múltiples fuentes (CRM lookup + cálculo + decisión), usa GPT-4o. Mejor en function calling estructurado. Costo: ~$0.02 USD por respuesta.

Tier 4 — Casos enterprise complejos (Claude Opus, raro)

Solo para conversaciones donde la complejidad lo justifica (consultas legales, recomendaciones técnicas multi-variable). Usar <1% de las veces. Costo: ~$0.10-0.30 USD por respuesta.

Ejemplo: estructura del router en código

def route_message(user_msg, context):
    # Tier 0: Classify intent
    intent = gemini_flash.classify(
        user_msg=user_msg,
        intents=["faq", "lookup", "free_chat", "escalate", "spam"]
    )

    if intent == "spam":
        return None  # Silently drop

    if intent == "escalate":
        notify_human(user_msg, context)
        return "Te pongo con una persona del equipo, en breve te responde."

    if intent == "faq":
        # Tier 1: Try cache first, then Haiku
        cached = vector_lookup(user_msg)
        if cached.score > 0.85:
            return cached.answer
        return claude_haiku.generate(user_msg, context)

    if intent == "lookup":
        # Tier 3: needs function calling
        return gpt_4o_with_tools.generate(user_msg, context, tools=CRM_TOOLS)

    if intent == "free_chat":
        # Tier 2: best for natural conversation
        return claude_sonnet.generate(user_msg, context)

Resultados típicos del routing optimizado

Para bot con 5,000 conversaciones únicas mensuales mix típico (60% FAQ, 25% conversación libre, 10% lookup, 5% escalamiento):

EstrategiaCosto LLM/mes
Todo GPT-4o (anti-pattern)$80-150 USD
Todo Claude Sonnet (anti-pattern)$60-120 USD
LLM routing optimizado$15-30 USD
Ahorro70-85%

La inversión inicial extra para implementar el router (4-8 horas dev) se paga en el primer mes.

OpenRouter como puerta única

En lugar de gestionar 5 API keys (OpenAI + Anthropic + Google + xAI + DeepSeek), usar OpenRouter como single point of access simplifica:

Costo OpenRouter: 5% markup sobre tarifa nativa de cada modelo. Justificado por la simplificación operacional.

Preguntas frecuentes

¿Vale la pena la complejidad del routing?

Sí, después del primer mes. Setup inicial: 4-8 horas dev. Ahorro mensual: $50-120 USD para bot 5K conversaciones. ROI primer mes. Plus, modelos rápidos (Gemini Flash) tienen latencia menor que GPT-4o, mejorando UX. La complejidad del código es ~50 líneas extra Python — trivial vs ahorro.

¿Cuándo usar Claude Opus 4.7 en bot WhatsApp?

Casi nunca. Claude Opus es overkill para 99% de las conversaciones WhatsApp. Casos justificados: (a) consultas legales que requieren razonamiento extendido, (b) recomendaciones de productos enterprise B2B con 20+ variables, (c) análisis de problemas técnicos complejos. Para esos casos, usar tier 4 con max_tokens limitado y validación de salida. Costo $0.10-0.30 USD por respuesta — aceptable si justifica el caso comercial.

¿El routing afecta calidad de respuesta?

Solo si está mal calibrado. Bien calibrado, el usuario no nota la diferencia — Gemini Flash es excelente para FAQ y respuestas cortas; Claude Sonnet brilla para conversación natural; GPT-4o destaca en function calling. Mal calibrado (usar Gemini Flash para conversación tonal compleja), el bot suena seco. Validar con CSAT post-conversación.

¿Puedo usar modelos open-source self-hosted?

Sí, viable para empresas con infraestructura GPU. Llama 3.3 70B o Mistral Large local pueden reemplazar Tier 1-2. Costo: ~$300-500 USD/mes GPU + ops, comparable a Claude Sonnet a 5K conversaciones. Vale la pena solo si: (a) volumen >50K conversaciones/mes, (b) requisitos de privacidad extremos (no enviar datos a APIs públicas), (c) tienes equipo MLOps interno. Para mayoría de PyMEs MX, API hosted es más eficiente.

Dr. Irving Varela, fundador de Varela Insights
Dr. Irving Varela — Ph.D, PMP Fundador de Varela Insights · Director de Estudios Aplicados GEO · Monterrey, México. Ver perfil completo →

¿Tu PyME necesita una solución de IA medible?

Conversación de 30 min, sin compromiso. Cotizamos en menos de 24 horas. Precios públicos en pesos mexicanos.

Agenda conversación →
"La virtud como máxima y la palabra como medida."— Dr. Irving Varela