Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ffd810fe00 | |||
| a1a0ed70a1 | |||
| 1554d9ede7 |
@@ -1,11 +1,19 @@
|
||||
[](https://travis-ci.com/alphacep/vosk-api)
|
||||
|
||||
Language bindings for Vosk and Kaldi to access speech recognition from various languages and on various platforms
|
||||
[РУС](README.ru.md)
|
||||
|
||||
* Python on Linux, Windows and RPi
|
||||
* Node
|
||||
* Android
|
||||
* iOS
|
||||
[中文](README.zh.md)
|
||||
|
||||
Vosk is a speech recognition toolkit. The best things in Vosk are:
|
||||
|
||||
1. Supports 8 languages - English, German, French, Spanish, Portuguese, Chinese, Russian, Vietnamese. More is coming.
|
||||
1. Works offline even on lightweight devices - Raspberry Pi, Android, iOS
|
||||
1. Installs with simple `pip3 install vosk`
|
||||
1. Portable models per language is just only 50Mb but there are much bigger server models available.
|
||||
1. Provides streaming API for the best user experience (unlike popular speech-recognition python package)
|
||||
1. There bindings for different prograbmming languages too - java/csharp/javascript etc.
|
||||
1. Allows quick reconfiguration of vocabulary for best accuracy.
|
||||
1. Supports speaker identification beside simple speech recognition
|
||||
|
||||
## Android build
|
||||
|
||||
@@ -81,6 +89,22 @@ cd python
|
||||
python3 setup.py install
|
||||
```
|
||||
|
||||
#### Running the example code with python
|
||||
|
||||
Run like this:
|
||||
|
||||
```
|
||||
cd vosk-api/python/example
|
||||
wget https://github.com/alphacep/kaldi-android-demo/releases/download/2020-01/alphacep-model-android-en-us-0.3.tar.gz
|
||||
tar xf alphacep-model-android-en-us-0.3.tar.gz
|
||||
mv alphacep-model-android-en-us-0.3 model-en
|
||||
python3 ./test_simple.py test.wav
|
||||
```
|
||||
|
||||
To run with your audio file make sure it has proper format - PCM 16khz 16bit mono, otherwise decoding will not work.
|
||||
|
||||
You can find other examples of using a microphone, decoding with a fixed small vocabulary or speaker identification setup in [python/example subfolder](https://github.com/alphacep/vosk-api/tree/master/python/example)
|
||||
|
||||
#### Java example API build
|
||||
|
||||
Or Java
|
||||
@@ -105,22 +129,6 @@ mv alphacep-model-android-en-us-0.3 model
|
||||
mono test.exe
|
||||
```
|
||||
|
||||
## Running the example code with python
|
||||
|
||||
Run like this:
|
||||
|
||||
```
|
||||
cd vosk-api/python/example
|
||||
wget https://github.com/alphacep/kaldi-android-demo/releases/download/2020-01/alphacep-model-android-en-us-0.3.tar.gz
|
||||
tar xf alphacep-model-android-en-us-0.3.tar.gz
|
||||
mv alphacep-model-android-en-us-0.3 model-en
|
||||
python3 ./test_simple.py test.wav
|
||||
```
|
||||
|
||||
To run with your audio file make sure it has proper format - PCM 16khz 16bit mono, otherwise decoding will not work.
|
||||
|
||||
You can find other examples of using a microphone, decoding with a fixed small vocabulary or speaker identification setup in [python/example subfolder](https://github.com/alphacep/vosk-api/tree/master/python/example)
|
||||
|
||||
## Models for different languages
|
||||
|
||||
For information about models see [the documentation on available models](https://github.com/alphacep/vosk-api/blob/master/doc/models.md).
|
||||
|
||||
+149
@@ -0,0 +1,149 @@
|
||||
[](https://travis-ci.com/alphacep/vosk-api)
|
||||
|
||||
[EN](README.md)
|
||||
|
||||
[中文](README.zh.md)
|
||||
|
||||
Библитека для распознавания речи "Воск". Преимущества библиотеки:
|
||||
|
||||
1. Поддерживает 8 языков - русский, английский, немецкий, французский, португальский, испанский, китайский, вьетнамский. В скором времени будут добавлены и другие
|
||||
1. Работает без доступа к сети даже на мобильных устройствах - Raspberry Pi, Android, iOS
|
||||
1. Устанавливается с помощью простой команды `pip3 install vosk` без дополнительных шагов
|
||||
1. Модели для каждого языка занимают всего 50Мб, но есть и гораздо более точные большие модели для более точного распознавания
|
||||
1. Сделана для потоковой обработки звука, что позволяет реализовать мгновенную реакцию на команды
|
||||
1. Поддерживает несколько популярных языков программирования - Java, C#, Javascript
|
||||
1. Позволяет быстро настраивать словарь распознавания для улучшения точности распознавания
|
||||
1. Позволяет идентифицировать говорящего
|
||||
|
||||
## Сборка для Android
|
||||
|
||||
```
|
||||
cd android
|
||||
gradle build
|
||||
```
|
||||
|
||||
Сборка включает платформы x86, armv7, arm64
|
||||
|
||||
Для примера приложения, созданного с помощью библиотеки "Воск" смотрите [демо проект](https://github.com/alphacep/kaldi-android-demo).
|
||||
|
||||
## Сборка для iOS
|
||||
|
||||
Доступна позапросу. Напишите нам [contact@alphacephei.com](mailto:contact@alphacephei.com).
|
||||
|
||||
## Установка для работы Python из Pypi
|
||||
|
||||
Проще всего установить "Воск" с помощью pip. Собирать ничего не нужно. Мы поддерживаем платформы Linux, RPi и Windows. Сборка для OSX будет скоро доступна.
|
||||
|
||||
Для начала убедитесь, что используются достаточно новые версии pip и Python:
|
||||
|
||||
* Python версия >= 3.5
|
||||
* pip версия >= 19.0
|
||||
|
||||
Обновите Python и Pip если нужно, а затем установите "Воск" такой командой:
|
||||
|
||||
```
|
||||
pip3 install vosk
|
||||
```
|
||||
|
||||
Для использования "Воск" смотрите примеры ниже.
|
||||
|
||||
## Сервер для протоколов Websocket и GRPC
|
||||
|
||||
We also provide a websocket server and grpc server which can be used in telephony and other applications. With bigger models adapted for 8khz audio it provides more accuracy.
|
||||
|
||||
The server is installed with docker and can run with a single command:
|
||||
|
||||
```
|
||||
docker run -d -p 2700:2700 alphacep/kaldi-en:latest
|
||||
```
|
||||
|
||||
Смотрите проект https://github.com/alphacep/vosk-server
|
||||
|
||||
|
||||
## Сборка из исходников
|
||||
|
||||
Если нужно собрать проект из исходного кода, необходимо будет собрать
|
||||
Kaldi самостоятельно. Сборка досаточно простая и прямолинейная, но может
|
||||
быть непривычной для начинающих. Обращайте внимания на сообщения об ошибках
|
||||
в процессе сборки.
|
||||
|
||||
#### Сборка Kaldi для модулей на Python, Java, C#
|
||||
|
||||
```
|
||||
git clone https://github.com/kaldi-asr/kaldi
|
||||
cd kaldi/tools
|
||||
make
|
||||
```
|
||||
|
||||
установите все рекомандуемые пакеты и повторите `make` если потребуется.
|
||||
|
||||
```
|
||||
extras/install_openblas.sh
|
||||
cd ../src
|
||||
./configure --mathlib=OPENBLAS --shared --use-cuda=no
|
||||
make -j 10
|
||||
```
|
||||
|
||||
#### Сборка модуля на Python
|
||||
|
||||
После Kaldi можно собрать модуль Python
|
||||
|
||||
```
|
||||
export KALDI_ROOT=<KALDI_ROOT>
|
||||
cd python
|
||||
python3 setup.py install
|
||||
```
|
||||
|
||||
#### Запуск примера для Python
|
||||
|
||||
Выполните следующие команды:
|
||||
|
||||
```
|
||||
cd vosk-api/python/example
|
||||
wget https://github.com/alphacep/kaldi-android-demo/releases/download/2020-01/alphacep-model-android-en-us-0.3.tar.gz
|
||||
tar xf alphacep-model-android-en-us-0.3.tar.gz
|
||||
mv alphacep-model-android-en-us-0.3 model-en
|
||||
python3 ./test_simple.py test.wav
|
||||
```
|
||||
|
||||
Для того, чтобы распознавать другой файл, переведите его в нужный формат - PCM 16кГц 16бит 1канал. Это можно сделать с помощью ffmpeg.
|
||||
|
||||
Другие примеры, в том числе использования микрофона, распознавание с небольшим словарём и распознавание говорящего можно найти в [каталоге python/example](https://github.com/alphacep/vosk-api/tree/master/python/example)
|
||||
|
||||
#### Сборка для Java
|
||||
|
||||
Перейдите в каталог Java и запустите сборку
|
||||
|
||||
```
|
||||
cd java && KALDI_ROOT=<KALDI_ROOT> make
|
||||
wget https://github.com/alphacep/kaldi-android-demo/releases/download/2020-01/alphacep-model-android-en-us-0.3.tar.gz
|
||||
tar xf alphacep-model-android-en-us-0.3.tar.gz
|
||||
mv alphacep-model-android-en-us-0.3 model
|
||||
make run
|
||||
```
|
||||
|
||||
#### Сборка для C#
|
||||
|
||||
Для сборки в среде Mono.
|
||||
|
||||
```
|
||||
cd csharp && KALDI_ROOT=<KALDI_ROOT> make
|
||||
wget https://github.com/alphacep/kaldi-android-demo/releases/download/2020-01/alphacep-model-android-en-us-0.3.tar.gz
|
||||
tar xf alphacep-model-android-en-us-0.3.tar.gz
|
||||
mv alphacep-model-android-en-us-0.3 model
|
||||
mono test.exe
|
||||
```
|
||||
|
||||
.NET тоже должен работать, хотя мы не пробовали.
|
||||
|
||||
## Модели для разных языков
|
||||
|
||||
По информации о моделях смотрите соответствующую [страницу документации](https://github.com/alphacep/vosk-api/blob/master/doc/models.md).
|
||||
|
||||
## Contact Us
|
||||
|
||||
Если возникли вопросы, свяжитесь с нами:
|
||||
|
||||
* Создайте проблему тут на github
|
||||
* Напишите нам по почте [contact@alphacephei.com](mailto:contact@alphacephei.com)
|
||||
* Заходите в нашу группу в Телеграмме [@speech_recognition_ru](https://t.me/speech_recognition_ru)
|
||||
@@ -0,0 +1,12 @@
|
||||
[](https://travis-ci.com/alphacep/vosk-api)
|
||||
|
||||
Vosk是言语识别工具包。Vosk最好的事情是:
|
||||
|
||||
1. 支持八种语言 - 中文, 英语,德语,法语,西班牙语,葡萄牙语,俄语,越南语。
|
||||
1. 移动设备上脱机工作-Raspberry Pi,Android,iOS。
|
||||
1. 使用简单的 pip3 install vosk 安装
|
||||
1. 每种语言的手提式模型只有是50Mb, 但还有更大的服务器模型可用
|
||||
1. 提供流媒体API,以提供最佳用户体验(与流行的语音识别python包不同)
|
||||
1. 也有针对不同编程语言的绑定-java / csharp / javascript等。
|
||||
1. 允许快速重新配置词汇以获得最佳准确性。
|
||||
1. 除了简单的语音识别外,还支持说话人识别
|
||||
+1
-1
@@ -7,7 +7,7 @@ with open("README.md", "r") as fh:
|
||||
|
||||
setuptools.setup(
|
||||
name="vosk", # Replace with your own username
|
||||
version="0.3.4",
|
||||
version="0.3.5",
|
||||
author="Alpha Cephei Inc",
|
||||
author_email="contact@alphacephei.com",
|
||||
description="API for Kaldi and Vosk",
|
||||
|
||||
+1
-3
@@ -1,4 +1,4 @@
|
||||
%module(package="vosk") vosk
|
||||
%module(package="vosk", "threads"=1) vosk
|
||||
|
||||
%include <typemaps.i>
|
||||
|
||||
@@ -10,8 +10,6 @@
|
||||
%include <arrays_csharp.i>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#if SWIGPYTHON
|
||||
%pybuffer_binary(const char *data, int len);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user