Un framework de agentes que conecta humanos digitales (2.5D, 3D, móvil, PC y web) y LLM con sistemas empresariales.
joey-zhou/xiaozhi-esp32-server-java
Servidor Java y plataforma de administración para dispositivos de voz Xiaozhi ESP32, con monitoreo de dispositivos, gestión de voces y personalidades, y registros de conversaciones.
- Estrellas
- 1,381
- Forks
- 505
- Issues abiertos
- 2
- Último commit
- hace 23 días
¿Qué es?
Xiaozhi ESP32 Server Java es un backend Java para hardware de voz basado en ESP32 compatible con el firmware Xiaozhi ESP32. Incluye una consola web de administración para gestionar usuarios, dispositivos, roles y actualizaciones OTA, además de un servicio de diálogo independiente que gestiona flujos de audio por WebSocket y MQTT, así como el pipeline de conversación con IA.
El sistema se divide en dos procesos: xiaozhi-server, para la administración, y xiaozhi-dialogue, para la voz en tiempo real. Ambos comparten MySQL y Redis, y se pueden escalar de forma independiente. El reconocimiento y la síntesis de voz pueden usar modelos locales como sherpa-onnx y Vosk, o proveedores en la nube; los modelos de lenguaje pueden provenir de OpenAI, Zhipu, Ollama, Dify, Coze y otros. La compatibilidad con herramientas MCP, las llamadas a funciones, una base de conocimiento RAG y el reconocimiento de huellas de voz amplían las capacidades del asistente.
Se puede implementar con Docker Compose o desde el código fuente, con JDK 21, Maven, Node 22, MySQL 8 y Redis 7. Los modelos se descargan mediante un script incluido durante la primera ejecución.
Funciones clave
- 01Procesos separados para la administración y el diálogo que comparten MySQL y Redis, y se escalan de forma independiente
- 02Reconocimiento y síntesis de voz locales y en la nube, con clonación de voz e interacción en streaming
- 03Integración con OpenAI, Zhipu, Ollama, Dify, Coze y otros proveedores de LLM
- 04Compatibilidad con el protocolo de herramientas MCP y llamadas a funciones para controlar dispositivos de domótica
- 05Base de conocimiento RAG para documentos PDF, Office e imágenes
- 06Memoria a largo plazo y reconocimiento de huellas de voz para varios miembros del hogar
Casos de uso
- Ejecutar un backend de asistente de voz autohospedado para dispositivos ESP32 en el hogar o la oficina
- Gestionar un conjunto de dispositivos compatibles con Xiaozhi mediante actualizaciones OTA y monitoreo
- Crear un asistente de voz que controle dispositivos de domótica mediante MCP o llamadas a funciones
- Crear prototipos de productos de voz con IA en hardware ESP32 y proveedores intercambiables de reconocimiento de voz y LLM
Inicio rápido
- 1
Crea una carpeta y accede a ella
mkdir xiaozhi && cd xiaozhi - 2
Descarga el archivo docker-compose.yml
curl -O https://raw.githubusercontent.com/joey-zhou/xiaozhi-esp32-server-java/main/docker-compose.yml - 3
Inicia los contenedores
docker compose up -d - 4
Cuando los contenedores estén en buen estado, abre http://localhost:8084 e inicia sesión como admin / 123456; después, configura una clave de API de LLM
Antes de usarlo
- Debes proporcionar tu propia clave de API de LLM para que el sistema pueda mantener conversaciones; no se incluye ninguna clave.
- Algunas funciones no son de código abierto y solo están disponibles en la versión comercial.
Temas
Preguntas frecuentes
- ¿Qué es xiaozhi-esp32-server-java?
- Servidor Java y plataforma de administración para dispositivos de voz Xiaozhi ESP32, con monitoreo de dispositivos, gestión de voces y personalidades, y registros de conversaciones. Xiaozhi ESP32 Server Java es un backend Java para hardware de voz basado en ESP32 compatible con el firmware Xiaozhi ESP32. Incluye una consola web de administración para gestionar usuarios, dispositivos, roles y actualizaciones OTA, además de un servicio de diálogo independiente que gestiona flujos de audio por WebSocket y MQTT, así como el pipeline de conversación con IA.
- ¿xiaozhi-esp32-server-java es gratuito? ¿Qué licencia tiene?
- xiaozhi-esp32-server-java es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿xiaozhi-esp32-server-java sigue mantenido?
- Mantenimiento activo. El último commit de xiaozhi-esp32-server-java fue el 27 sept 2026.
- ¿Para qué puedo usar xiaozhi-esp32-server-java?
- Ejecutar un backend de asistente de voz autohospedado para dispositivos ESP32 en el hogar o la oficina Gestionar un conjunto de dispositivos compatibles con Xiaozhi mediante actualizaciones OTA y monitoreo Crear un asistente de voz que controle dispositivos de domótica mediante MCP o llamadas a funciones Crear prototipos de productos de voz con IA en hardware ESP32 y proveedores intercambiables de reconocimiento de voz y LLM
- ¿Cómo se instala xiaozhi-esp32-server-java?
- Crea una carpeta y accede a ella: mkdir xiaozhi && cd xiaozhi Descarga el archivo docker-compose.yml: curl -O https://raw.githubusercontent.com/joey-zhou/xiaozhi-esp32-server-java/main/docker-compose.yml Inicia los contenedores: docker compose up -d Cuando los contenedores estén en buen estado, abre http://localhost:8084 e inicia sesión como admin / 123456; después, configura una clave de API de LLM
- ¿Dónde consigo xiaozhi-esp32-server-java?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/joey-zhou/xiaozhi-esp32-server-java
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Servidor backend en Python/Java/Vue para dispositivos de voz xiaozhi-esp32 con ESP32, compatible con MQTT+UDP, WebSocket, MCP, reconocimiento de voz y bases de conocimiento.
SDK oficial de Python para crear servidores y clientes de Model Context Protocol que conectan aplicaciones con LLM con herramientas, datos y prompts.
SDK oficial de TypeScript para crear servidores y clientes de Model Context Protocol que proporcionan contexto estandarizado a aplicaciones con LLM.
Asistente de IA de escritorio multiplataforma que se conecta con los principales proveedores de LLM y funciona como cliente MCP con una base de conocimiento local.
Servidor MCP que expone las funciones de ingeniería inversa de Ghidra para que los clientes LLM puedan descompilar y analizar binarios.