Guia de Instalação¶
Esta seção apresenta o procedimento de instalação do recurso de reconhecimento de fala e os módulos adicionais de classificação de gênero, idade e emoção. Para isso é necessário instalar os seguintes módulos:
Speech Server: serviço que oferece uma interface de acesso para uso combinado das funções de ASR com as funções de classificação.
CPQD Reconhecimento de Fala: serviço de reconhecimento de fala (ASR) do CPQD
Cada servidor é diponibilizado como um conjunto de imagens Docker e são gerenciados pela ferramenta Docker Swarm.
Requisitos de sistema¶
Antes de instalar o Speech Server, certifique-se de que atende os requisitos apresentados nesta seção.
Processador
O tipo do processador deve ser um dos seguintes:
Intel® Xeon Phi™ processor
Intel® Xeon® processor
Intel® Core™ processor family
Intel Atom® processor
Se o processador usado não está nesta lista, o desempenho pode ser menor, e até mesmo exigir um instalador diferente.
Memória
O uso do reconhecimento de fala em conjunto com os classificadores de voz requer em torno de 6 GB de memória RAM livre, sem considerar o consumo de sistema operacional e outras aplicações.
Disco
Recomendamos pelo menos 30 GB de espaço livre em HD para a instalação do sistema e espaço de armazenamento de logs.
Docker
O sistema requer a instalação da ferramenta Docker (20.10.6) e Docker-compose (1.29.0) para a sua execução. A partir destas versões temos a funcionalidade de “service profiles”
Instalação¶
A instalação do recurso de reconhecimento de fala e módulos adicionais de classificação de voz é feita através de um arquivo de instalação e imagens Docker. Antes de realizar o procedimento de instalação, você deve estar de posse de:
arquivo de instalação
speech-server.run
usuário de acesso ao container-registry do CPQD
número de licença de utilização do ASR adquirido com o CPQD
Instalação do servidor
Para realizar a instalação, faça o login em «container-registry.cpqd.com.br» com o usuário fornecido pelo CPQD:
docker login container-registry.cpqd.com.br -u <usuario>
Password:
Login Succeeded
Após o login, execute o arquivo instalador speech-server.run
.
sudo ./speech-server.run
Verifying archive integrity... 100% MD5 checksums are OK. All good.
Uncompressing CPQD Servidor de Fala. 100%
Swarm initialized: current node (m3bg3nzfkh9y1nwoetqhqkni0) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join --token SWMTKN-1-66dodjqaxsmxcry80cxa3xxmedb4k9xrivth9ufgfi3iopljui-4xx50mhlmgv98038rgyn1nn46 127.0.0.1:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
sending incremental file list
.env
docker-compose.yaml
start_manager
stop_manager
sent 2,352 bytes received 92 bytes 4,888.00 bytes/sec
total size is 5,993 speedup is 2.45
Done!
Configuração inicial¶
Antes de iniciar o servidor é necessário configurar a licença fornecida pelo CPQD. Para maiores informações sobre a licença, consulte o Manual do CPQD Reconhecimento de Fala - Licenças.
O arquivo de configuração do servidor é o .env
. Nele configuramos o identificador da licença e a quantidade de canais que se deseja utilizar. A quantidade de canais configurada deve ser inferior ou igual àquela contratada pela licença.
Localize o arquivo .env
na pasta /opt/cpqd/speech-server
, e edite os atributos ASR_LICENSE_ID e ASR_LICENSE_CHANNELS abaixo:
# Configuração API
API_PORT=8000
TIMEOUT=120
LOG_LEVEL="INFO"
ASR_WS_HOST="ws://asr-server:8025/asr-server/asr"
ASR_REST_HOST="http://asr-server:8025/asr-server/rest/recognize"
ASR_VAD_ENABLED=True
# Timezone de execução
TIMEZONE="America/Sao_Paulo"
# Configuração ASR
ASR_LICENSE_ID=<ENTER_YOUR_LICENSE_ID> # Adicionar Licença Utilizada
ASR_LICENSE_CHANNELS=<ENTER_THE_CHANNELS_NUMBER> #Adicionar Numeros de Canais
ASR_LICENSE_HOST=sl.cpqd.com.br
ENGINE_LOG_ENABLE="true"
ENGINE_LOG_LEVEL=info
ENGINE_TUNING_LOG=false
Iniciar o servidor¶
Execute o comando abaixo para iniciar o servidor. Note que o processo deve estar parado, executar o comando com o servidor em execução não tem efeito.
/opt/cpqd/speech-server/start_manager -h <host>
No exemplo seguinte, estamos usando o host 127.0.0.1 para subir a aplicação.
/opt/cpqd/speech-server/start_manager -h 127.0.0.1
Pulling audio-pipeline ... done
Pulling asr-server ... done
Pulling redis ... done
Pulling rabbitmq ... done
Pulling emotion-worker ... done
Pulling gender-worker ... done
Pulling age-worker ... done
Pulling api-recognize ... done
Swarm initialized: current node (vmb17unzwpqjijwq9d12vae8u) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join --token SWMTKN-1-4o7rxe5z95pwbwyp27q4jfqpainivyos5dgypfljzxduzxzklk-7srkqbnncdofwfdicsy7ei533 127.0.0.1:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
Creating network ss_default
Creating service ss_asr-server
Creating service ss_redis
Creating service ss_rabbitmq
Creating service ss_emotion-worker
Creating service ss_gender-worker
Creating service ss_age-worker
Creating service ss_api-recognize
Creating service ss_audio-pipeline
Parar o servidor¶
Execute o comando abaixo para finalizar a execução do servidor.
/opt/cpqd/speech-server/stop_manager
No exemplo seguinte, realizamos a parada do servidor.
/opt/cpqd/speech-server/stop_manager
Node left the swarm.