Cuando dices “Alexa, ¿qué tiempo hace hoy?” y el altavoz te responde, no hay magia ni una persona escuchando al otro lado. Es una compleja cadena de tecnologías de inteligencia artificial: activación por palabra de activación (wake word), grabación de audio, conversión de voz a texto (speech-to-text) en la nube, procesamiento de lenguaje natural (NLU) para entender la intención, búsqueda en una base de datos o llamada a una API, y finalmente generación de respuesta (text-to-speech). Todo en menos de un segundo. Te explico cómo funciona Alexa (de Amazon), aunque Google Assistant y Siri usan principios muy similares, y qué ocurre en el dispositivo local frente a los servidores en la nube.
Arquitectura general: dispositivo local vs. nube (cloud-based)
Los asistentes como Amazon Alexa, Google Assistant y Siri funcionan como un sistema distribuido:
- Dispositivo local (altavoz inteligente, móvil, pantalla): es responsable de capturar la voz, detectar la wake word (Alexa, Hey Google, Hey Siri), comprimir el audio y enviarlo a la nube. El dispositivo local tiene muy poca inteligencia de procesamiento de lenguaje (solo el modelo de detección de wake word).
- Nube (servidores de Amazon, Google, Apple): allí ocurre el procesamiento pesado: STT (voz a texto), NLU (comprensión del lenguaje), diálogo, acceso a bases de conocimiento, y la síntesis de voz (TTS). La respuesta (texto o audio) se envía de vuelta al dispositivo para que lo reproduzca.
Esta arquitectura permite que los dispositivos sean baratos (no necesitan gran potencia de cómputo) y que la IA se actualice constantemente sin necesidad de actualizar el firmware. También plantea problemas de privacidad: las grabaciones de voz se envían a servidores externos (aunque supuestamente se eliminan después de procesar).
Amazon afirma que solo se envía el audio después de la palabra de activación, y que el dispositivo no almacena ni transmite conversaciones sin la wake word (esto es verificable mediante análisis de tráfico de red).
Comparativa rápida
- Alexa (Amazon): ecosistema muy amplio de “skills” (aplicaciones de terceros), buena integración con dispositivos domésticos (smart home).
- Google Assistant: mejor reconocimiento de contexto y búsqueda en internet (gracias a Google Search).
- Siri (Apple): más privada (procesa muchas solicitudes en el dispositivo en los iPhone modernos), pero menos abierta a terceros.
Detección de la palabra de activación (wake word): el dispositivo escucha pero no graba
El dispositivo está constantemente escuchando (en bucle) pero sin almacenar ni enviar nada. Tiene un pequeño modelo de reconocimiento de voz local (algoritmo de redes neuronales, típicamente CNN) que analiza las ondas sonoras y busca la secuencia fonética de “Alexa” (o “Hey Google”, “Hey Siri”). Este modelo es muy ligero (tamaño de unos pocos megabytes) y funciona con un bajo consumo de energía.
Cuando detecta la wake word, el dispositivo comienza a grabar el audio posterior en un búfer circular (normalmente los siguientes 2-5 segundos, dependiendo de si se habla tras la activación). Una vez que el usuario termina de hablar (el detector de final de discurso, VAD, detecta silencio), el dispositivo comprime el audio (por ejemplo, códec Opus) y lo envía cifrado (TLS) a los servidores de Amazon (o Google, Apple).
El dispositivo no procesa el contenido de la frase, solo la wake word. Esto es importante para la privacidad: la grabación no se guarda localmente, solo en la nube (y Amazon afirma que se elimina tras procesar, aunque el usuario puede revisar el historial en la app).
Grabación, compresión y envío seguro a la nube
El equipo de audio típico incluye un array de micrófonos (en los Echo, 7 micrófonos en forma de anillo); esto permite hacer beamforming (separar la voz del usuario del ruido ambiente y cancelar eco). El audio se muestrea a 16 kHz (la frecuencia suficiente para la voz humana, el CD usa 44.1 kHz). Luego se comprime con un códec (como Opus) para reducir el ancho de banda.
La transmisión se realiza mediante una conexión TLS (igual que HTTPS) a un punto de entrada regional (Amazon Alexa Voice Service). La latencia crítica: el objetivo es que el tiempo total (voz → respuesta) sea inferior a 1 segundo. Por eso los servidores están distribuidos geográficamente (AWS).
Reconocimiento de voz: de onda sonora a texto (ASR – Automatic Speech Recognition)
Una vez en la nube, el primer paso es convertir la señal de audio en una secuencia de palabras. Esto lo hace un motor de reconocimiento automático del habla (ASR). El proceso está basado en redes neuronales profundas (Deep Learning) – típicamente una arquitectura CTC (Connectionist Temporal Classification) o atención (transformers). Las etapas son:
- Preprocesamiento: se extraen características acústicas (MFCC, espectrograma log-mel) del audio.
- Modelo acústico: predice las probabilidades de fonemas (unidades de sonido) a partir de las características. Entrenado con miles de horas de audio etiquetado.
- Modelo de lenguaje: da contexto probando secuencias de palabras (por ejemplo, “qué tiempo hace” es más probable que “que tiempo ase”).
- Decodificador: combina el modelo acústico y de lenguaje para producir la transcripción final (texto).
El resultado es una cadena de texto, por ejemplo: “¿qué clima hace en Madrid hoy?”. La precisión del ASR moderno supera el 95% en condiciones ideales, pero se degrada con ruido de fondo y acentos fuertes.
Amazon también utiliza modelos “end-to-end” (de audio a texto directamente con transformers) para simplificar la arquitectura.
Procesamiento de lenguaje natural (NLU): intención, entidades y slots (diálogo)
El texto ya transcrito se pasa a un motor de comprensión del lenguaje natural (NLU). Aquí se determina:
- Intención (intent): ¿Qué quiere el usuario? Ejemplos: GetWeather, PlayMusic, SetAlarm, TurnOnLight, OrderPizza.
- Entidades (slots): los parámetros relevantes. Para “GetWeather” → entidad “location” (Madrid) y “date/time” (hoy).
El NLU se entrena con un conjunto de “muestras de entrenamiento” (utterances). Por ejemplo, para la intención GetWeather:
- “¿Qué tiempo hace en {location}?”
- “Clima para {date}”
- “¿Va a llover mañana?”
Amazon Alexa permite a los desarrolladores definir sus propias intenciones y slots para sus Skills (aplicaciones). El NLU de Alexa es un sistema de machine learning (modelo basado en RNN/transformer) que también incluye reconocimiento de entidades predefinidas (fechas, lugares, canciones).
Si el NLU no entiende (baja confianza), Alexa puede pedir aclaración (“¿Para qué ciudad?”). También mantiene el contexto de la conversación (para responder a respuestas como “Sí” después de una pregunta).
Ejemplo de diálogo con contexto
Usuario: “Alexa, pon música de los Beatles”.
Alexa: “De acuerdo. Reproduciendo ‘Hey Jude’”.
Usuario: “Pon la siguiente canción”. (Contexto: el NLU entiende que “siguiente canción” se refiere a la playlist actual).
Backend y Skills: cómo Alexa ejecuta acciones (conectar con APIs externas, dispositivos IoT)
Una vez que el NLU ha identificado la intención, Alexa necesita ejecutarla. Esto implica llamar a un servicio backend:
- Funciones integradas de Alexa (nativas): por ejemplo, temporizadores, alarmas, preguntas triviales, consultas matemáticas. Amazon las implementa como servicios internos.
- Skills de terceros: los desarrolladores publican Skills en la tienda de Alexa. Una Skill es una aplicación en la nube (AWS Lambda, servidor web) que recibe la intención (JSON) y devuelve una respuesta (texto, instrucciones de voz, tarjeta visual). El flujo es: el dispositivo envía la intención a la Skill (a través del servicio Alexa), la Skill hace las operaciones (consulta una API, controla un dispositivo IoT, etc.) y devuelve el resultado.
- Smart Home (domótica): para encender luces, cerrar persianas, ajustar termostatos, Alexa envía comandos a través de la nube a los dispositivos compatibles (marcas como Philips Hue, TP-Link Kasa, etc.). Estos dispositivos se vinculan mediante el “skill” de la marca y la autenticación OAuth.
Ejemplo: “Alexa, enciende la luz de la cocina”. La intención es TurnOnLight; el slot “location” = cocina. Alexa consulta el dispositivo en la nube (servidores de Philips Hue) con la credencial del usuario. Hue recibe la orden y envía señal Zigbee a la bombilla. Todo en menos de un segundo.
La Skill puede devolver una respuesta hablada (“Listo, la luz de la cocina está encendida”).
Generación de voz: Text-to-Speech (TTS) y los distintos tonos de Alexa
Después de que el backend genera el texto de respuesta (por ejemplo, “En Madrid la temperatura es de 18 grados con cielos despejados”), Alexa debe convertirlo en voz. El motor de síntesis de voz (TTS) utiliza redes neuronales (WaveNet, o sistemas más modernos como Tacotron 2 + WaveGlow). Produce audio de alta calidad que incluso incluye entonación natural, pausas y emociones ligeras.
Amazon ofrece diferentes voces (masculina, femenina, varios idiomas). Además, Alexa puede “cambiar de voz” temporalmente para ciertos propósitos (por ejemplo, personajes infantiles, o cánticos). El TTS se ejecuta en la nube, se genera un archivo de audio (formato MP3 o PCM) y se envía al dispositivo para que lo reproduzca. El dispositivo reproduce el flujo de audio mientras llega, sin necesidad de descargar todo primero.
En algunos casos, Alexa utiliza grabaciones pre-grabadas (por ejemplo, sonidos de notificaciones o respuestas cortas) en lugar de generar voz desde cero.
Privacidad y almacenamiento de grabaciones
Los usuarios pueden revisar su historial de grabaciones en la app de Alexa. Amazon permite eliminar grabaciones automáticamente (por ejemplo, después de 3 meses) o manualmente. También se puede desactivar el uso de grabaciones para mejorar los modelos (los asistentes pueden mejorar con datos de usuarios, pero hay opciones de exclusión). Siri de Apple procesa muchas solicitudes en el dispositivo, lo que mejora la privacidad, pero tiene un reconocimiento menos preciso en entornos ruidosos.