Agentes de IA por teléfono: la arquitectura y los tropiezos que ninguna demo enseña
Un agente de voz que coge la llamada, reserva la cita, responde las preguntas habituales con tu base de conocimiento y pasa a una persona cuando hace falta: es uno de los proyectos de IA más pedidos ahora mismo. La demo es fácil. Lo que hace que funcione en una línea real son los tiempos, las interrupciones, un traspaso limpio y lo básico en lo legal. Esta es la arquitectura que uso y los tropiezos que conviene prever.
10 min de lectura
1. Empieza por la tarea, no por la voz
Los mejores agentes telefónicos hacen pocas cosas muy bien: responder las preguntas que tu equipo responde veinte veces al día, reservar o mover una cita, tomar un recado y pasar todo lo demás a una persona. Escribe esas tareas con la información que necesita cada una, los sistemas que toca y qué cuenta como hecho.
Esa lista decide la arquitectura mucho más que la elección de la voz. Una clínica que reserva citas necesita acceso al calendario y una comprobación de identidad; un restaurante que da su horario no necesita ninguna de las dos. Empieza estrecho, mide y luego amplía.
2. Dos arquitecturas: una cadena o un solo modelo de voz
La cadena clásica tiene tres piezas: voz a texto, un modelo de lenguaje que decide qué decir y qué herramienta llamar, y texto a voz. Cada pieza es sustituible, puedes registrar el texto de cada turno y las llamadas a herramientas funcionan igual que en un agente de chat. El precio es la latencia: tres pasos que tardan cada uno lo suyo.
La opción más nueva es un único modelo de voz a voz, como la Gemini Live API de Google, que escucha y responde directamente en audio. Reacciona más rápido y suena más natural, pero tienes menos control sobre cada paso y menos sitios para tus propias comprobaciones. Mi opción por defecto para procesos de negocio es la cadena con streaming en cada paso; uso un modelo de voz a voz donde la calidad de la conversación importa más que un control estricto.
3. La línea: números, media streams y WebSockets
La llamada llega a un número de un proveedor como Twilio o Azure Communication Services. Desde ahí, el audio tiene que llegar a tu agente en tiempo real. Twilio Media Streams envía el audio en bruto de una llamada en curso por un WebSocket y, en modo bidireccional, recibe audio de vuelta; ConversationRelay de Twilio va un paso más allá y se encarga del reconocimiento y la síntesis de voz, de modo que tu servidor solo ve texto. Azure Communication Services ofrece Call Automation con las mismas piezas en Azure.
Elijas lo que elijas, pon el servidor del agente cerca de la región de medios del proveedor y deja el camino del WebSocket corto: sin proxies de más ni capas que acumulen. Cada salto añade un retraso que se oye.
4. El presupuesto de latencia: tiempo hasta el primer sonido
La telefonía tiene desde hace tiempo su propia norma sobre cuánto retraso en un sentido tolera una conversación (ITU-T G.114). Un agente de voz suma tiempo de modelo encima de la red, así que trata el retraso como un presupuesto que repartes entre los pasos: detectar que quien llama ha terminado, transcribir, las primeras palabras del modelo y el primer sonido de la respuesta.
La métrica que sigo es el tiempo desde el final de la frase de quien llama hasta el primer sonido que reproducimos, en cada turno, y miro los turnos lentos, no la media. Tres cosas ayudan más: hacer streaming en cada paso en lugar de esperar frases completas, mantener cortas las respuestas habladas y lanzar las llamadas a herramientas en cuanto la intención está clara. Si una consulta tarda, dilo («un momento, miro el calendario») en vez de quedarte en silencio.
5. Interrupciones y turnos de palabra
La gente interrumpe. Dice «no, el martes» mientras el agente todavía lee los huecos del lunes. El agente tiene que notar que la persona habla, parar su propio audio al momento y escuchar. Sin esa interrupción, quien llama habla encima de una voz que no se detiene y la llamada se desmorona.
Diseña además para el teléfono, no para una pantalla: nunca leas listas de diez opciones, ofrece dos; repite a quien llama los datos importantes, como la fecha y la hora; y evita todo lo que solo funciona a la vista, como enlaces o tablas. Una conversación telefónica son frases cortas y confirmaciones.
6. Herramientas y datos: las mismas reglas que tu equipo
El agente reserva, mueve y cancela a través de tus propios sistemas, con herramientas lo más estrechas posible. Dale las mismas reglas que a tu recepción: comprobar quién llama antes de revelar o cambiar nada personal, leer el cambio en voz alta y obtener un sí antes de guardarlo, y nunca manejar números de tarjeta en la conversación; los pagos van en un flujo propio y certificado.
Registra el texto de cada turno y cada llamada a herramienta, para poder revisar las llamadas difíciles, mejorar la base de conocimiento y demostrar lo que hizo el agente cuando alguien pregunte.
7. Traspaso: en caliente y con un resumen
Todo agente telefónico necesita una salida. Cuando quien llama pide una persona, cuando el agente no entiende dos veces seguidas o cuando el tema queda fuera de sus tareas, transfiere la llamada. Una transferencia en frío, en la que la persona repite todo, deshace el tiempo que ahorró el agente. Un traspaso en caliente le da a quien coge el teléfono un resumen de dos líneas: quién llama, qué quiere y qué se ha comprobado ya.
Prevé el caso en que no hay nadie libre o la oficina está cerrada: toma un recado con un número para devolver la llamada y crea una tarea, en lugar de dejar que suene al vacío. Dial de Twilio y las funciones de transferencia de Azure Communication Services cubren la parte telefónica.
8. Consentimiento, grabación y decir que es una IA
Empieza cada llamada diciendo que quien llama habla con un asistente de IA. En la UE esto pasa a ser obligatorio: el AI Act exige informar a las personas cuando interactúan directamente con un sistema de IA, y esa obligación se aplica desde el 2 de agosto de 2026.
Las normas sobre grabación de llamadas cambian según el país, así que pide asesoramiento para los mercados en los que trabajas. Un punto de partida seguro: avisar de la grabación al principio, grabar solo cuando lo necesitas, guardar transcripciones en lugar de audio donde baste, fijar un plazo de conservación y dejar los datos personales fuera de los logs que no los necesitan. Y dar a quien llama una forma de hablar con una persona en cualquier momento.
Conclusión
Un agente telefónico funciona por los tiempos y la confianza: streaming en todo, dejar interrumpir, actuar con las reglas de tu equipo, traspasar en caliente y decir claramente que es una IA.
Proyectos reales relacionados
Pruébalo tú mismo
Fuentes y guías oficiales
- Twilio: Media Streams (live call audio over WebSockets)
- Twilio: ConversationRelay
- Twilio: TwiML <Dial> (call transfer)
- Azure Communication Services: Call Automation
- Azure AI Speech: overview
- Gemini API: Live API
- ITU-T G.114: One-way transmission time
- EU AI Act (Regulation (EU) 2024/1689), Article 50 transparency obligations
Más artículos
- 3.025 pull requests en diez meses: un proceso de entrega con IA, desde dentro
- La Ley de IA de la UE para medianas empresas: qué te aplica y desde cuándo
- FinOps para el gasto en IA: tokens, caché, enrutado y presupuestos que aguantan
- Hacer visible una red de restaurantes en las respuestas de la IA: un proyecto GEO paso a paso
- Cómo está hecha esta web: estática donde se puede, en streaming donde hace falta
- Costes de Kubernetes en EKS y GKE: el mismo método, otras palancas
- Una landing zone para empresas medianas, en Terraform o Bicep: las piezas que importan
- El manual de migración de sistemas heredados: oleadas, ejecución en paralelo y recuentos y checksums idénticos
- Seguridad de MCP a fondo: dejar entrar a los asistentes de IA en tu producto sin abrir las puertas
- Monitorizar resultados de negocio: paneles en verde, caja vacía
- Pruebas de restauración: un backup que nunca has restaurado es solo una esperanza
- Respuestas de IA en streaming en Azure Static Web Apps: la cabecera que lo retenía todo
- Construir un asistente de IA para WhatsApp de principio a fin: lo que hace falta más allá de la demo
- Sistemas air-gapped: software crítico sin conexión a internet
- IA en producción en AWS: Amazon Bedrock y AgentCore en una configuración privada
- IA en producción con Microsoft Foundry: una configuración de referencia privada para agentes
- /goal, /loop o rutinas: deja de vigilar a tu agente de programación
- Los nuevos planes de Claude: Max, Ultra y lo que significan para los equipos
- OpenAI Codex a finales de 2026: goal mode, dots y cómo blindarlo
- ¿GitHub Copilot, Claude Code o Codex? Cómo elegiría para una empresa
- Fundamentos de GEO: cómo aparecer en las respuestas de la IA
- IA en producción en Google Cloud: de Vertex AI a Gemini Enterprise Agent Platform
- LLM locales en una red air-gapped: IA para tus datos más sensibles
- Quiero ejecutar un LLM local: ¿qué servidor compro?
- MiniMax M3: ¿un modelo puntero que puedes ejecutar tú mismo?
- Investigación de prompts a gran escala con un modelo abierto
- SEO y GEO juntos: una auditoría práctica en 6 pasos
- Dimensionar bien Kubernetes: el método que llevó un clúster de 7 a 4 nodos
- IA privada para datos sensibles: un LLM local que supera la revisión de seguridad
- Del prototipo con IA a producción: las ocho capas que añado, en este orden
