k2-fsa/sherpa-onnx

Speech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages

What it solves

Sherpa-onnx는 다양한 음성 및 오디오 처리 작업을 로컬에서 실행할 수 있는 매우 포터블하고 효율적인 방법을 제공합니다. 복잡한 클라우드 의존성을 없애고, 개발자는 방대한 하드웨어 플랫폼과 프로그래밍 언어에서 음성-텍스트 변환, 텍스트-음성 변환 및 기타 오디오 분석 도구를 배포할 수 있습니다.

How it works

이 프로젝트는 ONNX Runtime을 활용해 CPU, GPU 또는 전용 NPU에서 사전 학습된 모델을 로컬에서 실행합니다. 스트리밍 및 비스트리밍 ASR, TTS, 스피커 다이어리제이션, 음성 활동 감지(VAD) 등 다양한 오디오 기능을 지원합니다. 시스템은 극한의 크로스 플랫폼 호환성을 목표로 하며, 10개 이상의 프로그래밍 언어에 대한 API를 제공하고 거의 모든 주요 운영 체제와 프로세서 아키텍처를 지원합니다.

Who it’s for

고성능 서버부터 모바일 디바이스(Android, iOS), 임베디드 시스템(Raspberry Pi, Jetson), WebAssembly를 통한 웹 브라우저까지, 로컬·오프라인 실행이 필요한 오디오 기반 애플리케이션을 개발하는 개발자를 위한 것입니다.

Highlights

  • Comprehensive Audio Suite: ASR, TTS, 스피커 식별, 다이어리제이션, 오디오 태깅 및 소스 분리를 지원합니다.
  • Extreme Portability: x86, ARM, RISC‑V 및 다양한 NPU(Rockchip, Qualcomm, Ascend, Axera)와 호환됩니다.
  • Broad Language Support: C++, C, Python, Go, C#, Java, Kotlin, JavaScript, Swift, Rust, Dart, Pascal 등에 대한 API를 제공합니다.
  • Local Execution: 오프라인 로컬 처리를 위해 설계되어 프라이버시를 보장하고 지연 시간을 감소시킵니다.