esp-ai  by wangzongming

ESP-AI: AI integration solution for hardware

created 1 year ago
713 stars

Top 49.1% on sourcepulse

GitHubView on GitHub
Project Summary

ESP-AI provides a low-cost, integrated solution for embedding AI dialogue capabilities into development boards, primarily targeting the ESP32 series. It simplifies the integration of Automatic Speech Recognition (ASR), Large Language Models (LLM), and Text-to-Speech (TTS) services, enabling developers to create conversational AI experiences for robots and other embedded devices with minimal effort.

How It Works

The system follows a complete conversation chain: ASR processes speech, which is then fed to an LLM (or RAG) for response generation, and finally, TTS synthesizes the spoken output. ESP-AI emphasizes fast response algorithms to balance service costs and user experience, supports conversation interruption, and allows dynamic context-aware responses. Its plugin-based architecture enables integration with various ASR, LLM, and TTS services, offering flexibility and extensibility. The server-side is built on Node.js, while the client-side utilizes Arduino/IDF.

Quick Start & Requirements

  • Server Installation: docker run -itd -p 8088:8088 --name esp-ai-server registry.cn-shanghai.aliyuncs.com/xiaomingio/esp-ai:1.0.0
  • Client Installation: Download dependency from the release page and flash to the development board.
  • Prerequisites: Node.js (server-side), Arduino/IDF (client-side).
  • Resources: The project offers free ASR, LLM, and TTS services via its open platform.
  • Documentation: English Docs

Highlighted Details

  • Provides a complete AI dialogue solution (ASR+LLM+TTS) for development boards.
  • Features customizable offline wake words and supports conversation interruption.
  • Offers a plugin-based architecture for integrating various AI services.
  • Includes a developer platform with free ASR, LLM, and TTS services, and custom voice cloning.

Maintenance & Community

  • Active development with a clear changelog available.
  • QQ Discussion Group: 854445223.
  • Open to contributions via Pull Requests and GitHub Issues.

Licensing & Compatibility

  • The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The project recommends using Tianwen ASRPro for wake-up accuracy, indicating potential limitations with built-in offline wake-up methods. Development is planned for plugins in other languages, suggesting a current reliance on Node.js for plugin development.

Health Check
Last commit

1 month ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
1
Star History
66 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.