Vosk es el motor, una aplicación escrita en Python y basada en redes neuronales que reconoce palabras en varios idiomas (según el diccionario que se cargue) y que funciona de forma independiente (no requiere conexiones a otros sistemas) por lo que instalas el servidor, cargas el diccionario del idioma que deseas, lo ejecutas y ya está el puerto listo para enviarle audio y que el motor lo convierta a texto.
Instalación Servidor
La instalación del servidor no puede ser más sencilla:
|
1 |
docker run –d –p 2700:2700 alphacep/kaldi–es:latest |
Ejecutamos este docker que corre en background y nos abre el puerto 2700 para que nos conectemos vía websocket y enviarle el audio.
Conectándonos al servidor Vosk
Luego tan solo hay que descargar un cliente websocket para enviarle el archivo wav (formateado a 8Khz y mono)
|
1 2 3 |
git clone https://github.com/alphacep/vosk–server cd vosk–server/websocket ./test.py test.wav |
Si no funciona debemos instalar:
|
1 2 |
yum install python3 python3–devel pip–3 install websockets |
Python 3.9
|
1 2 3 4 5 6 7 8 9 10 |
wget https://www.python.org/ftp/python/3.9.6/Python–3.9.6.tgz tar xzf Python–3.9.6.tgz cd Python–3.9.6 ./configure —enable–optimizations make altinstall Verificar la version python3.9 —version |
Actualizar PIP
|
1 |
/usr/local/bin/python3.9 –m pip install —upgrade pip |
Instalar nuevamente
|
1 |
pip3.9 install websockets |
Cliente Asterisk para conectar el ASR de Vosk
La gente de AlphaCep ha publicado un módulo para Asterisk, FreeSwitch y Jigasi (el módulo que utiliza Jitsi)
https://github.com/alphacep/vosk-asterisk
|
1 2 3 4 5 6 7 |
git clone https://github.com/alphacep/vosk–asterisk.git git clone https://github.com/asterisk/asterisk cd vosk–asterisk ./bootstrap ./configure —with–asterisk=/usr/src/asterisk–18.20.0/ —prefix=/usr make make install |
Si los archivos no los copia en la carpeta adecuada, hacemos lo siguiente:
|
1 2 3 4 5 |
mv /usr/lib/asterisk/modules/* /usr/lib64/asterisk/modules/ rmdir /usr/lib/asterisk/modules rmdir /usr/lib/asterisk cd /usr/lib64/asterisk/modules/ chown asterisk.asterisk * |
De esta manera, podéis utilizar el reconocedor de audio directamente desde el Dialplan de Asterisk:
|
1 2 3 4 5 6 |
[internal] exten = 1,1,Answer same = n,Wait(1) same = n,SpeechCreate same = n,SpeechBackground(hello) same = n,Verbose(0,Result was ${SPEECH_TEXT(0)}) |
Eso sí, nos avisan en varios sitios que el sistema de reconocimiento requiere de un sistema potente, ya que consume bastante memoria y procesador cada vez que tiene que hacer un reconocimiento, pero eso es algo común en cualquier ASR hospedado por nosotros, así que a tenerlo en cuenta si queremos instalarlo en nuestro sistema de comunicaciones.
Toda la información en la página de Vosk: https://alphacephei.com/vosk/
Su página para estar al día: https://alphacephei.com/en/news.html
Y la guía para configurarlo en Issabel: https://t.me/Issabel_channel/4
Instalacion en Debian
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
apt update apt install –y python3 python3–pip python–is–python3 python —version pip —version mkdir –p /opt/vosk cd /opt/vosk wget https://alphacephei.com/vosk/models/vosk–model–small–es–0.42.zip apt install unzip –y unzip vosk–model–small–es–0.42.zip mv vosk–model–small–es–0.42 model–es rm vosk–model–small–es–0.42.zip chown –R asterisk:asterisk /opt/vosk chmod –R 755 /opt/vosk |

Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.