Aprendizagem pessoal com IA
e orientação prática

Sherpa-ONNX:使用ONNXRuntime实现离线语音识别和合成

Introdução geral

sherpa-onnx 是由 Next-gen Kaldi 团队开发的一个开源项目,旨在提供高效的离线语音识别和语音合成解决方案。它支持多种平台,包括 Android、iOS、Raspberry Pi 等,能够在没有网络连接的情况下进行实时语音处理。该项目依赖于 ONNX Runtime 框架,提供从语音到文本(ASR)、文本到语音(TTS)以及语音活动检测(VAD)等功能,适用于各类嵌入式系统和移动设备。该项目不仅支持离线使用,还可以通过WebSocket实现服务器和客户端的通信。

Sherpa-ONNX:使用ONNXRuntime实现离线语音识别和合成-1

在线演示:https://huggingface.co/spaces/k2-fsa/generate-subtitles-for-videos


 

Lista de funções

  • 离线语音识别(ASR):支持多种语言的实时语音转文字,无需网络连接。
  • 离线语音合成(TTS):提供高质量的文本转语音服务,同样无需网络。
  • 语音活动检测(VAD):实时检测语音活动,适用于各种语音交互场景。
  • Suporte a várias plataformas:适用于 Linux、macOS、Windows、Android、iOS 等多个操作系统。
  • 跨语言模型支持:支持如 Zipformer、Paraformer 等先进的语音模型,提升识别和合成的精度。
  • 低资源消耗:优化后的模型可以在资源有限的设备上流畅运行。

 

Usando a Ajuda

Processo de instalação

sherpa-onnx 是一个开源项目,你可以从 GitHub 直接下载源码进行编译,或者直接使用预编译的二进制文件:

1.armazém de clones::

git clone https://github.com/k2-fsa/sherpa-onnx.git
cd sherpa-onnx
  1. 编译源码::
    • 对于 Linux 和 macOS 用户:
      mkdir build
      cd build
      cmake -DCMAKE_BUILD_TYPE=Release ..
      make -j4
      
    • 对于 Windows 用户,你可能需要使用 Visual Studio 或其他 CMake 支持的编译器。
  2. 下载预编译文件::
    • 访问 GitHub 发布页面(例如 https://github.com/k2-fsa/sherpa-onnx/releases),选择适合你的操作系统的预编译版本进行下载。

Uso

语音识别(ASR)示例::

  • modo de linha de comando::
    下载预训练模型(例如 sherpa-onnx-streaming-zipformer-bilingual-zh-en):

    wget https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-streaming-zipformer-bilingual-zh-en.tar.bz2
    tar xvf sherpa-onnx-streaming-zipformer-bilingual-zh-en.tar.bz2
    

    然后运行:

    ./build/bin/sherpa-onnx --tokens=sherpa-onnx-streaming-zipformer-bilingual-zh-en/tokens.txt --encoder=sherpa-onnx-streaming-zipformer-bilingual-zh-en/encoder.onnx --decoder=sherpa-onnx-streaming-zipformer-bilingual-zh-en/decoder.onnx your_audio.wav
    
  • 实时识别::
    使用麦克风进行实时语音识别:

    ./build/bin/sherpa-onnx-microphone --tokens=sherpa-onnx-streaming-zipformer-bilingual-zh-en/tokens.txt --encoder=sherpa-onnx-streaming-zipformer-bilingual-zh-en/encoder.onnx --decoder=sherpa-onnx-streaming-zipformer-bilingual-zh-en/decoder.onnx
    

语音合成(TTS)示例::

  • 下载预训练的 TTS 模型(例如 VITS 模型):
    wget https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/sherpa-onnx-tts-vits.tar.bz2
    tar xvf sherpa-onnx-tts-vits.tar.bz2
    
  • 运行 TTS:
    ./build/bin/sherpa-onnx-offline-tts --model=sherpa-onnx-tts-vits/model.onnx "你好,世界"
    

语音活动检测(VAD)::

  • 运行 VAD:
    ./build/bin/sherpa-onnx-vad --model=path/to/vad_model.onnx your_audio.wav
    

advertência

  • Seleção de modelos:根据你的需求选择适当的模型(如 streaming 或 non-streaming 版本)。不同的模型在性能和实时性上有所不同。
  • Requisitos de hardware:虽然 sherpa-onnx 旨在低资源消耗,但复杂的模型可能需要更高的计算能力,特别是在移动设备上。
  • Suporte a idiomas:预训练模型可能支持多种语言,确保选择适合你的语言的模型。

通过这些步骤和提示,你可以开始使用 sherpa-onnx 进行语音相关的应用开发,无论是实时对话系统还是离线的语音处理。

Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Sherpa-ONNX:使用ONNXRuntime实现离线语音识别和合成

Chefe do Círculo de Compartilhamento de IA

O Chief AI Sharing Circle se concentra no aprendizado de IA, fornecendo conteúdo abrangente de aprendizado de IA, ferramentas de IA e orientação prática. Nosso objetivo é ajudar os usuários a dominar a tecnologia de IA e explorar juntos o potencial ilimitado da IA por meio de conteúdo de alta qualidade e compartilhamento de experiências práticas. Seja você um iniciante em IA ou um especialista sênior, este é o lugar ideal para adquirir conhecimento, aprimorar suas habilidades e realizar inovações.

Entre em contato conosco
pt_BRPortuguês do Brasil