espressif/esp-skainet

Espressif intelligent voice assistant

ESP‑Skainet – ESP32용 온디바이스 음성 어시스턴트 SDK

개요 – ESP‑Skainet은 ESP32 시리즈 마이크로컨트롤러(특히 ESP32‑S3)에서 웨이크 워드 감지 및 오프라인 음성 명령어 인식을 직접 실행할 수 있게 해주는 Espressif의 오픈 소스 소프트웨어 스택입니다. 초소형 웨이크 워드 엔진(WakeNet), 유연한 명령어 인식 모델(MultiNet), 그리고 에코 제거, VAD, 노이즈 억제 등을 수행하는 오디오 프론트엔드를 번들로 제공합니다.

중요성 – 현대의 음성 어시스턴트는 일반적으로 클라우드에서 실행되지만, 많은 IoT 장치는 저지연, 개인정보 보호, 전력 효율적인 음성 처리가 필요합니다. ESP‑Skainet은 ESP32 칩에서 사용 가능한 수백 KB의 RAM과 Flash에 맞는 완전하고 즉시 플래시 가능한 솔루션을 제공합니다.


핵심 구성 요소

구성 요소 역할 주요 사양
WakeNet 상시 대기 웨이크 워드 감지기 “Hi, Lexin”, “Alexa”, 중국어 구문 등 사용자 정의 또는 내장 단어 감지; ESP32‑S3에서 100 KB 미만의 RAM으로 실행
MultiNet 오프라인 음성 명령어 인식기 모델 재학습 없이 최대 200개의 영어/중국어 명령어 지원; 더 빠른 속도를 위해 옥타 SPI PSRAM이 탑재된 ESP32‑S3에서 실행
오디오 프론트엔드 (AFE) 마이크 스트림 전처리 음향 에코 제거, 음성 활동 감지, 블라인드 소스 분리, 노이즈 억제 포함; Amazon Alexa Built‑in 장치 인증 완료

일반적인 하드웨어

오디오 입력(마이크 또는 I²S)이 포함된 ESP32 개발 보드가 필요합니다. README에는 ESP32‑Korvo, ESP32‑S3‑Korvo‑1/2, ESP‑BOX, ESP32‑S3‑EYE, ESP32‑P4‑Function‑EV 등 지원되는 여러 키트가 나열되어 있습니다.


시작하기 (빠른 요약)

  1. 저장소 복제
    git clone https://github.com/espressif/esp-skainet.git
    
  2. ESP‑IDF (v4.4 또는 v5.0)를 설치하고 IDF_PATH를 설정합니다.
  3. 예제 선택examples/wake_word_detection 폴더가 가장 간단합니다.
  4. 빌드 및 플래시
    cd examples/wake_word_detection
    idf.py flash monitor
    
  5. 사용자 정의idf.py menuconfig를 실행하여 자신만의 웨이크 워드나 명령어 구문을 추가합니다.

구축 가능한 애플리케이션

  • 음성 제어 스마트 홈 장치 – 몇 가지 음성 명령으로 조명, 에어컨 등을 켜거나 끕니다.
  • 상시 대기 어시스턴트 – 웨이크 워드를 감지한 후 로컬에서 명령어를 처리하여 사용자 데이터를 장치 내에 유지합니다.
  • 웨어러블 또는 로봇용 임베디드 음성 UI – 작은 메모리 점유율과 2마이크 AFE 덕분에 가능합니다.
  • AI 엣지 교육용 프로토타입 키트 – 예제와 문서를 통해 학생들이 온디바이스 음성 AI를 쉽게 실험할 수 있습니다.

문서 및 지원

  • 상세 엔진 문서: WakeNetMultiNet.
  • 오디오 프론트엔드 가이드: AFE.
  • 버그/기능 요청을 위한 GitHub 이슈 트래커.
  • 메인 ESP‑IDF 저장소에 연결된 기여 가이드.

결론

ESP‑Skainet은 웨이크 워드 감지와 명령어 인식을 저비용 마이크로컨트롤러로 가져오는 진정한 프로덕션급 AI/ML 프로젝트입니다. ESP32 하드웨어에서 개인정보를 최우선으로 하는 오프라인 음성 인터페이스를 구축하려는 모든 사람에게 유용합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트