/sherpa

Speech-to-text server framework with next-gen Kaldi

Primary LanguagePythonApache License 2.0Apache-2.0

Documentation Status

Try sherpa from within your browser without installing anything: https://huggingface.co/spaces/k2-fsa/automatic-speech-recognition

See https://k2-fsa.github.io/sherpa/python/huggingface/ for more details.

sherpa

sherpa is an open-source speech-to-text (i.e., speech recognition) framework, focusing exclusively on end-to-end (E2E) models, namely transducer- and CTC-based models.

Note: There is no plan to support attention-based encoder-decoder (AED) models.

Installation

Please first install:

git clone https://github.com/k2-fsa/sherpa
cd sherpa
mkdir build
cd build
cmake \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_INSTALL_PREFIX=$HOME/software/sherpa \
  ..
make -j6 install/strip

# If you don't want to strip the binaries and libraries, you can
# use "make -j6 install"

export PATH=$HOME/software/sherpa/bin:$PATH

# To uninstall sherpa, use
#  rm -rf $HOME/software/sherpa

or

git clone https://github.com/k2-fsa/sherpa
cd sherpa

python3 setup.py bdist_wheel
pip install ./dist/k2_sherpa-*.whl

# Please don't use `python3 setup.py install`.
# Otherwise, you won't have access to pre-compiled binaries

# To uninstall sherpa, use
#  pip uninstall k2-sherpa

Using Docker

docker build . -f Dockerfile -t sherpa_server:latest
docker run --rm --gpus all --name sherpa_server --net host -it sherpa_server:latest

To check that you have installed sherpa successfully, you can run the following binaries:

sherpa-version

sherpa-offline --help
sherpa-online --help
sherpa-online-microphone --help

sherpa-offline-websocket-server --help
sherpa-offline-websocket-client --help

sherpa-online-websocket-server --help
sherpa-online-websocket-client --help
sherpa-online-websocket-client-microphone --help

Usages

See documentation at https://k2-fsa.github.io/sherpa/ for more usages.