Home Assistant Año de la Voz – Capítulo 2: Hablemos

Home Assistant Año de la Voz – Capítulo 2: Hablemos

Este año es el Año de la Voz de Home Assistant. Nuestro objetivo para 2023 es permitir que los usuarios controlen Home Assistant en su propio idioma. Hoy presentamos el Capítulo 2, nuestro segundo hito en la construcción hacia este objetivo.

En el Capítulo 1, nos enfocamos en las intenciones: lo que el usuario quiere hacer. En la actualidad, la comunidad de Home Assistant ha traducido comandos y respuestas comunes para el hogar inteligente a 45 idiomas, acercándose a los 62 idiomas que admite Home Assistant.

Para el Capítulo 2, nos hemos expandido más allá del texto para incluir ahora audio; específicamente, convertir audio (voz) en texto y texto nuevamente en voz. Con esta funcionalidad, la función de asistencia de Home Assistant ahora puede proporcionar una interfaz de voz completa para que los usuarios interactúen.

Un asistente de voz también necesita hardware, por lo que hoy lanzamos el soporte de ESPHome para Assist y; Para colmo: estamos lanzando el asistente de voz más privado del mundo. Sigue leyendo para ver lo que eso implica.

Para ver la presentación en video de esta publicación de blog, incluidas las demostraciones en vivo, consulte la grabación de nuestra transmisión en vivo.

Composición de asistentes de voz

La nueva integración de Assist Pipeline le permite configurar todos los componentes que componen un asistente de voz en un solo lugar.

Para los comandos de voz, las canalizaciones comienzan con audio. Un sistema de voz a texto determina las palabras que pronuncia el usuario, que luego se reenvían a un agente de conversación. La intención es extraída del texto por el agente y ejecutada por Home Assistant. En este punto, “encender la luz” haría que tu luz se encienda 💡. La última parte de la canalización es la conversión de texto a voz, en la que se habla de la respuesta del agente. Esto puede ser una simple confirmación (“Luz encendida”) o la respuesta a una pregunta, como “¿Qué luces están encendidas?”

assist config

Captura de pantalla de la nueva configuración de Assist en Home Assistant.

Con la nueva página de configuración del asistente de voz, los usuarios pueden crear múltiples asistentes, mezclando y combinando servicios de voz. ¿Quieres un asistente de inglés estadounidense que responda con acento británico? Ningún problema. ¿Qué pasa con un segundo asistente que escucha los comandos de voz en holandés, alemán o francés? O tal vez quieras incluir ChatGPT en la mezcla. Cree tantos asistentes como desee y úselos desde el cuadro de diálogo Asistencia, así como el hardware de asistente de voz para Home Assistant.

Interactuar con muchos servicios diferentes significa que muchas cosas diferentes pueden salir mal. Para ayudar a los usuarios a descubrir qué salió mal, hemos creado una amplia herramienta de depuración para asistentes de voz en Home Assistant. Siempre puede inspeccionar las últimas 10 interacciones por asistente de voz.

assist debug

Captura de pantalla de la nueva herramienta de depuración Assist.

Asistente de voz con tecnología de Home Assistant Cloud

La suscripción a Home Assistant Cloud, además de la conexión remota encriptada de extremo a extremo, incluye servicios de voz a texto y de texto a voz de última generación. Esto le permite a su asistente de voz hablar más de 130 idiomas (incluidos dialectos como el español peruano) y es extremadamente rápido para responder. Muestra:

Como suscriptor, puede comenzar a usar la voz directamente en Home Assistant. No necesitará ningún hardware o software adicional para comenzar.

Además de la conversión de voz a texto y de texto a voz de alta calidad para sus asistentes de voz, también apoyará el desarrollo del propio Home Assistant.

Únete a Home Assistant Cloud hoy

El asistente de voz completamente local

Con Home Assistant puedes tener dos cosas garantizadas: habrá opciones y una de esas opciones será local. Con nuestro asistente de voz eso no es diferente.

Piper: nuestro nuevo modelo de texto a voz local de alta calidad

Para hacer posible la ejecución local de texto a voz de calidad, tuvimos que crear nuestro propio sistema de texto a voz que está optimizado para ejecutarse en una Raspberry Pi 4. Se llama Piper.

logotipo de gaitero

Piper utiliza algoritmos modernos de aprendizaje automático para lograr un discurso con un sonido realista, pero aun así puede generar audio rápidamente. En una Raspberry Pi 4, Piper puede generar 2 segundos de audio con solo 1 segundo de tiempo de procesamiento. Las CPU más potentes, como Intel Core i5, pueden generar 17 segundos de audio en la misma cantidad de tiempo. Muestra:

Para obtener más muestras, consulte el sitio web de Piper

Ya está disponible un complemento con Piper para Home Assistant con más de 40 voces en 18 idiomas, incluidos: catalán, danés, alemán, inglés, español, finlandés, francés, griego, italiano, kazajo, nepalí, holandés, noruego, polaco, portugués brasileño, ucraniano, vietnamita y chino. Voices for Piper se entrenan a partir de conjuntos de datos de audio abiertos, muchos de los cuales provienen de audiolibros gratuitos leídos por voluntarios. Si estás interesado en contribuir con tu voz, ¡háznoslo saber!

Voz a texto local con OpenAI Whisper

Whisper es un modelo de voz a texto de código abierto creado por OpenAI que se ejecuta localmente. Desde su lanzamiento en 2022, Whisper ha sido mejorado por la comunidad de código abierto para ejecutarse en hardware menos potente mediante proyectos como susurro.cpp y más rápido-susurro. ¡En menos de un año de progreso, Whisper ahora es capaz de proporcionar voz a texto para docenas de idiomas en servidores pequeños y computadoras de una sola placa!

Ya está disponible un complemento que usa un susurro más rápido para Home Assistant. En una Raspberry Pi 4, los comandos de voz pueden tardar unos 7 segundos en procesarse con unos 200 MB de RAM utilizados. Una CPU Intel Core i5 o superior es capaz de tiempos de respuesta inferiores a un segundo y puede ejecutar versiones más grandes (y más precisas) de Whisper.

Wyoming: el pegamento del asistente de voz

Los asistentes de voz comparten muchas funciones comunes, como la conversión de voz a texto, el reconocimiento de intenciones y la conversión de texto a voz. Creamos el protocolo de Wyoming para proporcionar un pequeño conjunto de mensajes estándar para hablar con los servicios de asistente de voz, incluida la capacidad de transmitir audio.

Wyoming permite a los desarrolladores centrarse en el núcleo de un servicio de voz sin tener que comprometerse con una pila de red específica como HTTP o MQTT. Este protocolo es compatible con la próxima versión 3.0 de Rhasspy, por lo que ambos proyectos pueden compartir servicios de voz.

Con Wyoming, estamos tratando de poner en marcha un ecosistema de voz abierta más interoperable que facilite el intercambio de componentes entre proyectos y plataformas. Los desarrolladores y científicos que deseen experimentar con nuevas tecnologías de voz solo necesitan implementar un pequeño conjunto de mensajes para integrarse con otros proyectos de asistente de voz.

Los complementos de Whisper y Piper mencionados anteriormente están integrados en Home Assistant a través de la nueva integración de Wyoming. Los servicios de Wyoming también se pueden ejecutar en otras máquinas y seguir integrándose en Home Assistant.

Asistentes de voz con tecnología ESPHome

ESPHome es nuestro software para microcontroladores. En lugar de programar, los usuarios definen cómo se conectan sus sensores en un archivo YAML. ESPHome leerá este archivo y generará e instalará software en su microcontrolador para que estos datos sean accesibles en Home Assistant.

Hoy estamos lanzando soporte para construir asistentes de voz usando ESPHome. Conecte un micrófono a su dispositivo ESPHome y podrá controlar su hogar inteligente con su voz. Incluya un altavoz y la casa inteligente le responderá.

Nos hemos centrado en el M5STACK ATOM Echo para pruebas y desarrollo. Por $13 viene con un micrófono y un parlante en una linda cajita. ¡Hemos creado un tutorial para convertir este dispositivo en un control remoto de voz directamente desde su navegador!

Tutorial: crea un control remoto de voz de $13 para Home Assistant.

Documentación del asistente de voz de ESPHome.

El asistente de voz más privado del mundo

Si estuvieras diseñando el asistente de voz más privado del mundo, ¿qué características tendría? Para empezar, solo debe escuchar cuando esté listo para hablar, en lugar de todo el tiempo. Y cuando responda, deberías ser el único en escucharlo. Esto suena extrañamente familiar… 🤔

¡Un teléfono! No, no el rectángulo sin rasgos distintivos que tienes en el bolsillo; un teléfono analógico. Estas grandes criaturas una vez gobernaron la Tierra con cuerdas retorcidas y apariencias únicas que combinan con tu estilo. Los teléfonos analógicos tienen una interfaz familiar que es difícil de superar: levanta el teléfono para escuchar/hablar y déjalo cuando termines.

¡Con la nueva integración de voz sobre IP de Home Assistant, ahora puede usar un teléfono de la “vieja escuela” para controlar su hogar inteligente!

Al configurar el marcado automático descolgado, su teléfono llamará automáticamente a Home Assistant cuando lo conteste. Di tu comando de voz o pregunta y escucha la respuesta. La conversación continuará todo el tiempo que desee: diga más comandos/preguntas, o simplemente cuelgue. Asigne una canalización/asistente de voz único a cada adaptador de VoIP, habilitando teléfonos dedicados para idiomas específicos.

Hemos centrado nuestros esfuerzos iniciales en admitir la caja de voz sobre IP Grandstream HT801. Funciona con cualquier teléfono con conector RJ11 y se conecta directamente a Home Assistant. No hay necesidad de un servidor adicional.

Tutorial: cree su propio asistente de voz más privado del mundo

Dale personalidad a tu asistente de voz usando la integración de OpenAI.

Algunos enlaces en esta página son enlaces de afiliados y las compras que utilizan estos enlaces respaldan el proyecto Home Assistant.


Visto en