Este projeto é baseado na teoria e tecnologia de inteligência simbiótica humano-máquina para desenvolver sistemas inteligentes de hardware e software para terminais
fornecendo serviços de backend para o projeto de hardware inteligente de código aberto
xiaozhi-esp32
Implementado usando Python, Java e Vue de acordo com o Protocolo de Comunicação Xiaozhi
Suporte ao protocolo MQTT+UDP, protocolo WebSocket, ponto de acesso MCP, reconhecimento de impressão vocal e base de conhecimento
Perguntas Frequentes · Reportar Problemas · Documentação de Implantação · Notas de Lançamento
Liderado pela Equipe do Professor Siyuan Liu (Universidade de Tecnologia do Sul da China)
刘思源教授团队主导研发(华南理工大学)
Este projeto requer dispositivos de hardware ESP32 para funcionar. Se você adquiriu hardware relacionado ao ESP32, conectou-se com sucesso ao serviço backend implantado pelo Brother Xia e deseja construir seu próprio serviço backend xiaozhi-esp32 de forma independente, então este projeto é perfeito para você.
Quer ver os efeitos de uso? Clique nos vídeos abaixo 🎥
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
Este projeto é um software de código aberto. Este software não possui parceria comercial com nenhum provedor de serviços de API de terceiros (incluindo, mas não se limitando a reconhecimento de fala, modelos de linguagem, síntese de voz e outras plataformas) com os quais se conecta, e não fornece nenhuma forma de garantia quanto à qualidade de serviço ou segurança financeira desses provedores. Recomenda-se que os usuários priorizem provedores de serviço com licenças comerciais relevantes e leiam cuidadosamente seus termos de serviço e políticas de privacidade. Este software não armazena nenhuma chave de conta, não participa de fluxos de fundos e não assume o risco de perda de fundos recarregados.
-
A funcionalidade deste projeto não está completa e não passou por avaliação de segurança de rede. Por favor, não o utilize em ambientes de produção. Se você implantar este projeto para fins de aprendizado em um ambiente de rede pública, certifique-se de que as medidas de proteção necessárias estejam em vigor.
Este projeto oferece dois métodos de implantação. Por favor, escolha de acordo com suas necessidades específicas:
| Método de Implantação | Funcionalidades | Cenários Aplicáveis | Documentação de Implantação | Requisitos de Configuração | Tutoriais em Vídeo |
|---|---|---|---|---|---|
| Instalação Simplificada | Diálogo inteligente, gerenciamento de agente único | Ambientes de baixa configuração, dados armazenados em arquivos de configuração, sem necessidade de banco de dados | ①Versão Docker / ②Implantação via Código-Fonte | 2 núcleos 4GB se usar FunASR, 2 núcleos 2GB se todas APIs |
- |
| Instalação de Módulo Completo | Diálogo inteligente, gerenciamento multiusuário, gerenciamento de múltiplos agentes, operação de interface do console inteligente | Experiência com funcionalidade completa, dados armazenados em banco de dados | ①Versão Docker / ②Implantação via Código-Fonte / ③Tutorial de Atualização Automática via Código-Fonte | 4 núcleos 8GB se usar FunASR, 2 núcleos 4GB se todas APIs |
Tutorial em Vídeo de Inicialização via Código-Fonte Local |
Perguntas frequentes e tutoriais relacionados podem ser consultados neste link
💡 Nota: Abaixo está uma plataforma de teste implantada com o código mais recente. Você pode gravar e testar se necessário. Usuários simultâneos: 6, os dados serão limpos diariamente.
Endereço do Console de Controle Inteligente: https://2662r3426b.vicp.fun
Endereço do Console de Controle Inteligente (H5): https://2662r3426b.vicp.fun/h5/index.html
Ferramenta de Teste de Serviço: https://2662r3426b.vicp.fun/test/
Endereço da Interface OTA: https://2662r3426b.vicp.fun/xiaozhi/ota/
Endereço da Interface WebSocket: wss://2662r3426b.vicp.fun/xiaozhi/v1/
Note
Este projeto oferece dois esquemas de configuração:
-
Configurações Gratuitas Nível Básico: Adequado para uso pessoal e doméstico, todos os componentes utilizam soluções gratuitas, sem necessidade de pagamento adicional. -
Configuração de Streaming: Adequado para demonstrações, treinamentos, cenários com mais de 2 usuários simultâneos, etc. Utiliza tecnologia de processamento em streaming para velocidade de resposta mais rápida e melhor experiência.
A partir da versão 0.5.2, o projeto suporta configuração de streaming. Em comparação com versões anteriores, a velocidade de resposta é melhorada em aproximadamente 2,5 segundos, melhorando significativamente a experiência do usuário.
| Nome do Módulo | Configurações Gratuitas Nível Básico | Configuração de Streaming |
|---|---|---|
| ASR(Reconhecimento de Fala) | FunASR(Local) | 👍XunfeiStreamASR(Xunfei Streaming) |
| LLM(Modelo de Linguagem) | glm-4-flash(Zhipu) | 👍qwen-flash(Alibaba Bailian) |
| VLLM(Modelo de Visão) | glm-4v-flash(Zhipu) | 👍qwen2.5-vl-3b-instructh(Alibaba Bailian) |
| TTS(Síntese de Voz) | ✅LinkeraiTTS(Lingxi streaming) | 👍HuoshanDoubleStreamTTS(Volcano Streaming) |
| Intent(Reconhecimento de Intenção) | function_call(Chamada de função) | function_call(Chamada de função) |
| Memory(Função de Memória) | mem_local_short(Memória local de curto prazo) | mem_local_short(Memória local de curto prazo) |
Se você está preocupado com o tempo de resposta de cada componente, consulte o Relatório de Teste de Desempenho dos Componentes Xiaozhi, e teste em seu próprio ambiente seguindo os métodos de teste do relatório.
Este projeto fornece as seguintes ferramentas de teste para ajudá-lo a verificar o sistema e escolher modelos adequados:
| Nome da Ferramenta | Localização | Método de Uso | Descrição da Função |
|---|---|---|---|
| Ferramenta de Teste de Interação por Áudio | main》xiaozhi-server》test》test_page.html | Abrir diretamente com Google Chrome | Testa as funções de reprodução e recepção de áudio, verifica se o processamento de áudio no lado Python está normal |
| Ferramenta de Teste de Resposta de Modelo | main》xiaozhi-server》performance_tester.py | Execute python performance_tester.py |
Testa a velocidade de resposta dos três módulos principais: ASR(reconhecimento de fala), LLM(modelo de linguagem), VLLM(modelo de visão), TTS(síntese de voz) |
💡 Nota: Ao testar a velocidade dos modelos, apenas os modelos com chaves configuradas serão testados.
| Módulo de Funcionalidade | Descrição |
|---|---|
| Arquitetura Principal | Baseado em gateway MQTT+UDP, servidores WebSocket e HTTP, fornece sistema completo de gerenciamento de console e autenticação |
| Interação por Voz | Suporta ASR em streaming (reconhecimento de fala), TTS em streaming (síntese de voz), VAD (detecção de atividade vocal), suporta reconhecimento multilíngue e processamento de voz |
| Reconhecimento de Impressão Vocal | Suporta registro, gerenciamento e reconhecimento de impressão vocal de múltiplos usuários, processa em paralelo com o ASR, reconhecimento de identidade do falante em tempo real e repassa ao LLM para respostas personalizadas |
| Diálogo Inteligente | Suporta múltiplos LLM (modelos de linguagem de grande porte), implementa diálogo inteligente |
| Percepção Visual | Suporta múltiplos VLLM (modelos de visão de grande porte), implementa interação multimodal |
| Reconhecimento de Intenção | Suporta reconhecimento de intenção por LLM, Function Call (chamada de função), fornece mecanismo de processamento de intenção baseado em plugins |
| Sistema de Memória | Suporta memória local de curto prazo, memória via interface mem0ai, memória inteligente PowerMem, com funcionalidade de resumo de memória |
| Base de Conhecimento | Suporta base de conhecimento RAGFlow, permitindo que o LLM julgue se deve acionar a base de conhecimento após receber a pergunta do usuário, e então responda à pergunta |
| Chamada de Ferramentas | Suporta protocolo IOT do cliente, protocolo MCP do cliente, protocolo MCP do servidor, protocolo de endpoint MCP, funções de ferramentas personalizadas |
| Envio de Comandos | Suporta envio de comandos MCP para dispositivos ESP32 via protocolo MQTT a partir do Console Inteligente |
| Backend de Gerenciamento | Fornece interface de gerenciamento Web, suporta gerenciamento de usuários, configuração do sistema e gerenciamento de dispositivos; Suporta exibição em Chinês Simplificado, Chinês Tradicional e Inglês |
| Ferramentas de Teste | Fornece ferramentas de teste de desempenho, ferramentas de teste de modelo de visão e ferramentas de teste de interação por áudio |
| Suporte à Implantação | Suporta implantação via Docker e implantação local, fornece gerenciamento completo de arquivos de configuração |
| Sistema de Plugins | Suporta extensões de plugins funcionais, desenvolvimento de plugins personalizados e carregamento dinâmico de plugins |
Para conhecer o progresso específico do plano de desenvolvimento, clique aqui. Perguntas frequentes e tutoriais relacionados podem ser consultados neste link
Se você é um desenvolvedor de software, aqui está uma Carta Aberta aos Desenvolvedores. Seja bem-vindo a participar!
Xiaozhi é um ecossistema. Ao utilizar este produto, você também pode conferir outros projetos excelentes neste ecossistema
| Método de Uso | Plataformas Suportadas | Plataformas Gratuitas |
|---|---|---|
| Chamadas via interface OpenAI | Alibaba Bailian, Volcano Engine, DeepSeek, Zhipu, Gemini, iFLYTEK | Zhipu, Gemini |
| Chamadas via interface Ollama | Ollama | - |
| Chamadas via interface Dify | Dify | - |
| Chamadas via interface FastGPT | FastGPT | - |
| Chamadas via interface Coze | Coze | - |
| Chamadas via interface Xinference | Xinference | - |
| Chamadas via interface HomeAssistant | HomeAssistant | - |
Na verdade, qualquer LLM que suporte chamadas via interface openai pode ser integrado e utilizado.
| Método de Uso | Plataformas Suportadas | Plataformas Gratuitas |
|---|---|---|
| Chamadas via interface OpenAI | Alibaba Bailian, Zhipu ChatGLMVLLM | Zhipu ChatGLMVLLM |
Na verdade, qualquer VLLM que suporte chamadas via interface OpenAI pode ser integrado e utilizado.
| Método de Uso | Plataformas Suportadas | Plataformas Gratuitas |
|---|---|---|
| Chamadas via interface | EdgeTTS, iFLYTEK, Volcano Engine, Tencent Cloud, Alibaba Cloud e Bailian, CosyVoiceSiliconflow, TTS302AI, CozeCnTTS, GizwitsTTS, ACGNTTS, OpenAITTS, Lingxi Streaming TTS, MinimaxTTS | Lingxi Streaming TTS, EdgeTTS, CosyVoiceSiliconflow(parcial) |
| Serviços locais | FishSpeech, GPT_SOVITS_V2, GPT_SOVITS_V3, Index-TTS, PaddleSpeech | Index-TTS, PaddleSpeech, FishSpeech, GPT_SOVITS_V2, GPT_SOVITS_V3 |
| Tipo | Nome da Plataforma | Método de Uso | Modelo de Preço | Observações |
|---|---|---|---|---|
| VAD | SileroVAD | Uso local | Gratuito |
| Método de Uso | Plataformas Suportadas | Plataformas Gratuitas |
|---|---|---|
| Uso local | FunASR, SherpaASR | FunASR, SherpaASR |
| Chamadas via interface | FunASRServer, Volcano Engine, iFLYTEK, Tencent Cloud, Alibaba Cloud, Baidu Cloud, OpenAI ASR | FunASRServer |
| Método de Uso | Plataformas Suportadas | Plataformas Gratuitas |
|---|---|---|
| Uso local | 3D-Speaker | 3D-Speaker |
| Tipo | Nome da Plataforma | Método de Uso | Modelo de Preço | Observações |
|---|---|---|---|---|
| Memória | mem0ai | Chamadas via interface | Cota de 1000 vezes/mês | |
| Memória | powermem | Resumo local | Depende do LLM e BD | OceanBase de código aberto, suporta busca inteligente |
| Memória | mem_local_short | Resumo local | Gratuito | |
| Memória | nomem | Modo sem memória | Gratuito |
| Tipo | Nome da Plataforma | Método de Uso | Modelo de Preço | Observações |
|---|---|---|---|---|
| Intenção | intent_llm | Chamadas via interface | Baseado no preço do LLM | Reconhece intenção através de modelos de linguagem, forte generalização |
| Intenção | function_call | Chamadas via interface | Baseado no preço do LLM | Completa a intenção através de chamada de função do modelo de linguagem, velocidade rápida, bom resultado |
| Intenção | nointent | Modo sem intenção | Gratuito | Não realiza reconhecimento de intenção, retorna diretamente o resultado do diálogo |
| Tipo | Nome da Plataforma | Método de Uso | Modelo de Preço | Observações |
|---|---|---|---|---|
| RAG | ragflow | Chamadas via interface | Cobrado com base nos tokens consumidos para fatiamento e segmentação de palavras | Utiliza o recurso de geração aumentada por recuperação do RagFlow para fornecer respostas de diálogo mais precisas |
| Logo | Projeto/Empresa | Descrição |
|---|---|---|
![]() |
Robô de Diálogo por Voz Bailing | Este projeto foi inspirado pelo Robô de Diálogo por Voz Bailing e implementado com base nele |
![]() |
Tenclass | Agradecimentos à Tenclass por formular protocolos de comunicação padrão, soluções de compatibilidade multidispositivo e demonstrações práticas de cenários de alta concorrência para o ecossistema Xiaozhi; fornecendo suporte completo de documentação técnica para este projeto |
![]() |
Xuanfeng Technology (玄凤科技) | Agradecimentos à Xuanfeng Technology por contribuir com o framework de chamada de função, protocolo de comunicação MCP e implementação do mecanismo de chamada baseado em plugins. Através de um sistema padronizado de agendamento de instruções e capacidades de expansão dinâmica, melhora significativamente a eficiência de interação e extensibilidade funcional dos dispositivos de frontend (IoT) |
![]() |
huangjunsen | Agradecimentos a huangjunsen por contribuir com o módulo Console de Controle Inteligente Mobile, que permite controle eficiente e interação em tempo real em dispositivos móveis, melhorando significativamente a conveniência operacional e a eficiência de gerenciamento do sistema em cenários móveis. |
![]() |
Huiyuan Design (汇远设计) | Agradecimentos à Huiyuan Design por fornecer soluções visuais profissionais para este projeto, utilizando sua experiência prática de design atendendo mais de mil empresas para potencializar a experiência do usuário deste produto |
![]() |
Xi'an Qinren Information Technology (西安勤人信息科技) | Agradecimentos à Xi'an Qinren Information Technology por aprofundar o sistema visual deste projeto, garantindo consistência e extensibilidade do estilo de design geral em aplicações de múltiplos cenários |
![]() |
Contribuidores de Código | Agradecimentos a todos os contribuidores de código, seus esforços tornaram o projeto mais robusto e poderoso. |









