Back to blog
    Fine-Tuning para agentes de voz con IA: Vapi, ElevenLabs y modelos locales
    voice-aiagentsfine-tuningvapicost-reductionsegment:agency

    Fine-Tuning para agentes de voz con IA: Vapi, ElevenLabs y modelos locales

    Los agentes de voz con IA que corren en GPT-4 cuestan $0.10-0.30 por minuto de conversación. Los modelos locales ajustados reducen eso a casi cero. Así es como construir agentes de voz que no te arruinen por llamada.

    EErtas Team·

    El mercado de agentes de voz con IA ha explotado. Vapi, ElevenLabs, Retell, Bland.ai — ahora hay docenas de plataformas que prometen agentes de voz conversacionales para soporte al cliente, reserva de citas, calificación de leads y ventas outbound. Las agencias están levantando bots de voz para clientes en horas. Las llamadas de demostración suenan impresionantes.

    Luego llegan las facturas.

    Un solo agente de voz con IA manejando 1,000 llamadas por mes con un promedio de 4 minutos por llamada acumula $400-$1,200/mes solo en costos de backbone LLM. Eso es antes de STT, TTS, telefonía y tarifas de plataforma. A 10,000 llamadas/mes, estás viendo $4,000-$12,000 — solo por el modelo de lenguaje decidiendo qué decir a continuación.

    El backbone LLM es la parte costosa. Y para la gran mayoría de casos de uso de agentes de voz, GPT-4 es excesivo masivamente.

    La arquitectura de agentes de voz

    Cada agente de voz con IA sigue el mismo pipeline:

    1. Speech-to-Text (STT): Convierte el audio del llamante a texto (Whisper, Deepgram, AssemblyAI)
    2. Procesamiento LLM: Genera la respuesta del agente basándose en la transcripción, contexto e instrucciones
    3. Text-to-Speech (TTS): Convierte el texto de respuesta de vuelta a audio (ElevenLabs, PlayHT, XTTS)

    Los pasos de STT y TTS son relativamente baratos — $0.006/minuto para Deepgram, $0.01-0.03/minuto para ElevenLabs dependiendo de tu plan. El paso de LLM es donde se va el dinero.

    Una conversación de voz típica genera 500-2,000 tokens por turno, con 10-30 turnos por llamada. Eso son 5,000-60,000 tokens por conversación. A precios de GPT-4o ($2.50/$10 por millón de tokens de entrada/salida), una llamada de 4 minutos con 20 turnos cuesta aproximadamente $0.15-0.40 solo en inferencia LLM.

    Los modelos locales ajustados llevan ese costo de LLM a efectivamente cero.

    Por qué los agentes de voz son perfectos para fine-tuning

    Las conversaciones de agentes de voz son sorprendentemente estrechas en alcance. Un agente de reserva de citas para un consultorio dental maneja tal vez 15-20 patrones de conversación distintos:

    • Programar una cita nueva
    • Reprogramar una existente
    • Preguntar sobre seguros aceptados
    • Preguntar sobre horarios de oficina
    • Solicitar direcciones
    • Manejar emergencias
    • Charla amable y saludos

    Eso es una tarea de clasificación y generación de respuestas — exactamente el tipo de trabajo donde un modelo ajustado de 7B u 8B iguala la calidad de GPT-4. El agente no necesita razonar sobre problemas novedosos ni sintetizar información de dominios dispares. Necesita reconocer la intención del llamante, extraer la información correcta del contexto, y generar una respuesta que suene natural.

    La ventaja de latencia de modelos pequeños

    Los agentes de voz tienen requisitos estrictos de latencia. Los llamantes esperan respuestas dentro de 300-800ms. Cualquier cosa por encima de 1 segundo se siente antinatural. Por encima de 2 segundos y la gente empieza a decir "¿Hola? ¿Estás ahí?"

    Aquí es donde los modelos pequeños realmente tienen una ventaja sobre las APIs en la nube:

    ConfiguraciónTiempo al primer tokenRespuesta completa (promedio)
    GPT-4o vía API200-600ms800-2,000ms
    GPT-3.5 vía API150-400ms500-1,200ms
    8B ajustado (local, RTX 4090)30-80ms150-400ms
    3B ajustado (local, RTX 3090)15-40ms80-250ms

    La inferencia local elimina el tiempo de ida y vuelta de red por completo. Para agentes de voz donde cada 100ms importa, correr un modelo ajustado en hardware local produce conversaciones notablemente más naturales. El agente responde más rápido de lo que un humano lo haría — lo cual, contraintuitivamente, lo hace sonar más humano porque hay menos silencio incómodo.

    Construyendo datos de entrenamiento desde transcripciones de conversaciones

    Los mejores datos de entrenamiento para un modelo de agente de voz son transcripciones de conversaciones reales. Si ya estás corriendo un agente de voz en GPT-4, tienes una mina de oro de datos de entrenamiento acumulándose cada día.

    Este es el proceso:

    Paso 1: Recopilar transcripciones

    Exporta los logs de conversaciones de tu plataforma de voz. Vapi proporciona transcripciones completas de conversaciones vía su API. Retell y Bland.ai tienen capacidades de exportación similares. Necesitas la transcripción completa turno por turno incluyendo prompts de sistema y llamadas a herramientas.

    Paso 2: Filtrar por calidad

    No toda conversación es buen dato de entrenamiento. Filtra por:

    • Resultados exitosos: Llamadas donde el agente logró el objetivo (cita reservada, pregunta respondida, lead calificado)
    • Flujo natural: Conversaciones sin reintentos excesivos o confusión
    • Cobertura representativa: Asegúrate de que todos los tipos principales de conversación estén incluidos

    Típicamente, el 60-70% de las conversaciones son buenos candidatos de entrenamiento. De 1,000 llamadas totales, espera 600-700 transcripciones utilizables.

    Paso 3: Formatear como pares de entrenamiento

    Convierte cada conversación al formato de chat que espera tu modelo objetivo:

    {
      "messages": [
        {"role": "system", "content": "You are a scheduling assistant for Downtown Dental..."},
        {"role": "user", "content": "Hi, I'd like to make an appointment"},
        {"role": "assistant", "content": "I'd be happy to help you schedule an appointment..."},
        {"role": "user", "content": "Do you take Delta Dental?"},
        {"role": "assistant", "content": "Yes, we accept Delta Dental PPO and Premier plans..."}
      ]
    }
    

    Paso 4: Añadir casos extremos

    Complementa tus transcripciones reales con ejemplos sintéticos para casos extremos:

    • Llamantes que están molestos o confundidos
    • Llamadas donde el agente necesita decir "no lo sé" o transferir a un humano
    • Solicitudes simultáneas ("Necesito reprogramar mi cita y también preguntar sobre mi factura")
    • Solicitudes fuera de tema que el agente debería desviar elegantemente

    Un dataset de 500-1,000 conversaciones es típicamente suficiente para un fine-tune de agente de voz. Más datos ayudan, pero los rendimientos disminuyen después de 1,000 ejemplos para un agente de propósito único.

    Comparación de costos a escala

    Así se ven los números en diferentes niveles de escala. Asume duración promedio de llamada de 4 minutos, 20 turnos por llamada, y ~30,000 tokens por conversación.

    1,000 Llamadas/Mes

    ComponenteAgente GPT-4oAgente 8B Ajustado
    Inferencia LLM$400-$1,200$0 (local)
    STT (Deepgram)$24$24
    TTS (ElevenLabs)$99-$330$99-$330
    Hardware/hosting$0$50-$100 (GPU en la nube)
    Total mensual$523-$1,554$173-$454

    10,000 Llamadas/Mes

    ComponenteAgente GPT-4oAgente 8B Ajustado
    Inferencia LLM$4,000-$12,000$0 (local)
    STT$240$240
    TTS$330-$990$330-$990
    Hardware/hosting$0$150-$300
    Total mensual$4,570-$13,230$720-$1,530

    100,000 Llamadas/Mes

    ComponenteAgente GPT-4oAgente 8B Ajustado
    Inferencia LLM$40,000-$120,000$0 (local)
    STT$2,400$2,400
    TTS$3,300-$9,900$3,300-$9,900
    Hardware/hosting$0$500-$1,500
    Total mensual$45,700-$132,300$6,200-$13,800

    A 100K llamadas/mes, el modelo ajustado ahorra $39,500-$118,500/mes. La economía no es sutil.

    Arquitectura: Reemplazando el backbone LLM

    El cambio es directo. Tu arquitectura de agente de voz permanece igual — STT, LLM, TTS — solo reemplazas la capa de LLM.

    Opción A: Ollama + API compatible con OpenAI

    La mayoría de las plataformas de voz te permiten especificar un endpoint LLM personalizado. Corre tu modelo ajustado vía Ollama, que expone una API compatible con OpenAI:

    ollama serve
    # Model accessible at http://localhost:11434/v1/chat/completions
    

    Apunta Vapi o tu pipeline de voz personalizado a http://your-server:11434/v1/chat/completions en lugar de https://api.openai.com/v1/chat/completions. El formato de solicitud es idéntico.

    Opción B: vLLM para alto rendimiento

    Si estás manejando más de 50 llamadas concurrentes, el procesamiento de solicitud única de Ollama se convierte en un cuello de botella. vLLM proporciona inferencia por lotes con batching continuo — puede manejar cientos de solicitudes concurrentes en una sola GPU:

    python -m vllm.entrypoints.openai.api_server \
      --model ./fine-tuned-voice-agent \
      --max-model-len 4096 \
      --gpu-memory-utilization 0.9
    

    Opción C: Híbrido con fallback a la nube

    Corre inferencia local para el 90% de las llamadas que encajan en la distribución de entrenamiento de tu modelo ajustado. Enruta llamadas inusuales o complejas a GPT-4 como fallback. Capturas la mayoría de los ahorros de costos manteniendo la calidad en casos extremos.

    La detección es simple: si la puntuación de confianza del modelo cae por debajo de un umbral, o si la conversación excede cierto número de turnos, escala al modelo en la nube.

    Requisitos de hardware

    Para inferencia de agentes de voz, la latencia importa más que el rendimiento. Esto es lo que funciona:

    HardwareTamaño de modeloLlamadas concurrentesCosto
    RTX 4090 (24GB)8B Q45-15$1,600 único
    A6000 (48GB)8B Q8 o 14B Q410-30$4,500 único
    L4 (nube)8B Q45-15$0.50/hr
    A10G (nube)8B Q810-25$1.00/hr

    Una sola RTX 4090 manejando 10 llamadas concurrentes con un promedio de 4 minutos por llamada puede procesar 150 llamadas por hora — 3,600 llamadas por día — 108,000 llamadas por mes. Una GPU de consumo. $1,600.

    Self-hosting de TTS para reducir costos aún más

    ElevenLabs y PlayHT producen excelente calidad de voz, pero sus costos se acumulan a escala. Los modelos TTS open-source han cerrado la brecha significativamente:

    • XTTS v2 (Coqui): Calidad cercana a la humana, soporta clonación de voz, corre localmente
    • Piper TTS: Menor calidad pero extremadamente rápido, bueno para casos de uso simples
    • StyleTTS2: TTS neuronal de alta calidad con control de estilo

    Correr XTTS v2 localmente añade cero costo marginal por llamada. La calidad es aproximadamente 85-90% de ElevenLabs para la mayoría de las voces. Para despliegues sensibles al costo, TTS self-hosted puede eliminar otros $99-$9,900/mes de la factura.

    Entrenando el modelo de agente de voz ajustado

    El proceso de fine-tuning en sí es el mismo que cualquier fine-tune de modelo de chat, con algunas consideraciones específicas para voz:

    1. Mantén las respuestas cortas. Las respuestas de voz deberían ser 1-3 oraciones. Los párrafos largos suenan antinaturales cuando se hablan. Entrena al modelo para ser conciso.
    2. Incluye muletillas y marcadores conversacionales. El habla real incluye "Claro," "Déjame verificar eso," "Un momento." Estos hacen que la salida TTS suene natural.
    3. Entrena con conversaciones multi-turno. El modelo necesita manejar ida y vuelta, no solo pares de pregunta-respuesta individuales.
    4. Incluye manejo de interrupciones. Los llamantes interrumpen. Entrena al modelo para manejar entradas parciales elegantemente.

    Sube tu dataset formateado a Ertas y selecciona tu modelo base — Llama 3.1 8B Instruct o Qwen 2.5 7B Instruct funcionan bien para agentes de voz. El fine-tuning toma 1-3 horas dependiendo del tamaño del dataset. Despliega el modelo resultante vía Ollama y apunta tu pipeline de voz hacia él.

    Cuándo mantener GPT-4 en el loop

    Los modelos locales ajustados funcionan para la mayoría de los casos de uso de agentes de voz, pero algunos escenarios todavía se benefician de un modelo frontier:

    • Conversaciones de dominio abierto donde el llamante puede preguntar sobre cualquier cosa (líneas generales de servicio al cliente)
    • Troubleshooting complejo que requiere razonamiento de múltiples pasos sobre problemas técnicos
    • Agentes multilingües manejando más de 10 idiomas (aunque los modelos multilingües ajustados están mejorando rápido)
    • Prototipado inicial antes de que tengas datos de conversación para ajustar

    Para la mayoría de los agentes de voz en producción — reserva de citas, calificación de leads, estado de pedidos, manejo de FAQ — un modelo ajustado de 7-8B maneja el 95%+ de las llamadas a calidad igual o mejor que GPT-4, con menor latencia y costo dramáticamente menor.


    Ship AI that runs on your users' devices.

    Ertas early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Lectura adicional

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading