Un proyecto de código abierto llamado Hermes reconoce tamil e inglés, responde en voz alta y ejecuta acciones simples, informó Electronics For You. El hardware es barato. La placa de desarrollo ESP32 cuesta unos cientos de rupias, y la parte compleja del software la maneja un PC con Windows.

La mayoría de estos proyectos se piensa solo en inglés. Hermes suma control por voz en tamil, además de las funciones habituales de temporizador, música y control de enchufes inteligentes. Lo publicó un desarrollador que firma como ROHITCRAFTSYT, que dejó la lista de componentes en el repositorio.

¿Qué se necesita para armarlo?

Placa ESP32 conectada a un micrófono y un parlante junto a un celular con la interfaz de asistente de voz, sobre un escritorio de madera.

En hardware, la lista es esta:

  • Placa de desarrollo ESP32-S3
  • Micrófono MEMS I2S INMP441
  • Amplificador I2S MAX98357A
  • Parlante de 8 Ω y 3 W
  • Pulsador, cables de puente y protoboard
  • Cable USB de datos y una fuente de 5 V

En software se necesita un PC con Windows, Python 3.11 o posterior y una cuenta gratuita de Groq.

Cómo reparte el trabajo

El ESP32 maneja la entrada y la salida de audio, y un programa en Python que corre en el PC hace de cerebro del asistente. Cuando el usuario mantiene apretado el botón para hablar, la placa manda el audio por wifi al computador. El modelo Whisper alojado en Groq convierte la voz en texto, y después un modelo de lenguaje alojado también en Groq procesa la petición y decide la respuesta.

El servicio de voz neuronal en línea de Microsoft convierte esa respuesta en habla, incluso con su voz en tamil, ta-IN-PallaviNeural, y el audio sale por el parlante. Con ese reparto, un microcontrolador relativamente barato resuelve tareas por voz sin tener que correr un modelo grande de IA en local.

Hermes todavía depende mucho de la conexión a internet. Si el servicio de voz de Microsoft no está disponible, el software cae al servicio de Google y después a la voz sin conexión que trae Windows. El reconocimiento de voz y el procesamiento del lenguaje no funcionan completos sin conexión. Correr un modelo de lenguaje local con Ollama figura como una posibilidad futura, no como una función terminada.

Configuración

El asistente arranca después de configurar el software, ya sea con hermes_bridge.py o con el archivo start_bridge.bat que viene para Windows. La placa necesita sus propios archivos de configuración, como config.example.h y secrets.h.example, donde hay que llenar las credenciales de wifi y el token antes de cargar el firmware con arduino-cli. La red wifi tiene que ser de 2,4 GHz con cifrado WPA2. No sirven 5 GHz ni WPA3.

Más que conversar

El proyecto trae además una interfaz web a la que se entra desde un teléfono conectado a la misma red. El software puede buscar en la web, abrir aplicaciones y sitios, controlar la reproducción de medios, programar temporizadores, recordatorios y alarmas, consultar precios de criptomonedas y guardar memoria de corto y largo plazo.

También se comunica con dispositivos inteligentes Tuya, relés por MQTT, Home Assistant, Wake-on-LAN, Chromecast y Android TV. Una integración adicional permite controlar la reproducción de Spotify, pero solo con una cuenta Premium. La apertura de puertas por voz viene desactivada por defecto.

¿Qué limitaciones tiene?

Hay varias que conviene considerar antes de armarlo. Según Electronics For You, el ESP32 clásico que usa el proyecto no tiene PSRAM, así que la versión actual funciona con un pulsador y no con una palabra de activación hablada. El software del lado del PC está hecho para Windows, y el nivel gratuito de Groq tiene límites de uso diario.

El repositorio además es nuevo, así que puede haber errores, o puede tocar resolver problemas con el entorno de Python, la carga del firmware y la configuración de las API. Por esos requisitos el proyecto le calza mejor a alguien con algo de experiencia en electrónica y programación que a un principiante absoluto.

El costo del hardware rondaría entre 1.500 y 3.000 rupias, según el precio de los componentes disponibles. Eso lo deja al alcance de aficionados a la electrónica y de colegios o institutos que quieran experimentar con interacción por voz. Lo que más lo distingue es que permite probar control por voz en tamil, un idioma que casi no aparece en estos proyectos. La desventaja de fondo es que la inteligencia sigue en la nube.

Lo que viene

La hoja de ruta del proyecto propone varias mejoras. Detección de palabra de activación con el ESP32-S3, respuestas por streaming que el usuario pueda interrumpir y la opción de usar un modelo de lenguaje local. Si se concretan, el asistente dependería menos de la nube y respondería más rápido.

El esquema de conexiones está en el repositorio del proyecto en GitHub.