Como implementar uma assistente virtual no Linux

Neste artigo vamos aprender como criar uma assistente virtual no Linux, que irá responder por comandos de voz captados pelo seu microfone. Estarei utilizando o software PocketSphinx com Python.

[ Hits: 3.944 ]

Por: Fábio Berbert de Paula em 22/03/2023 | Blog: https://fabio.automatizando.dev


Introdução



Neste artigo vamos aprender como criar uma assistente virtual no Linux, que irá responder por comandos de voz captados pelo seu microfone.

Por motivos óbvios, quanto melhor for o seu microfone, melhor será a qualidade de captação de voz. Porém, mesmo com um microfone de baixa qualidade, você conseguirá fazer com que a assistente virtual responda aos seus comandos.

Para a missão utilizaremos o software de reconhecimento de voz PocketSphinx, que é baseado em linguagem natural, e funciona offline, ou seja, não necessita de conexão com a internet para funcionar.

Utilizei a distribuição Debian 11, mas o procedimento é o mesmo para qualquer distribuição Linux.

1. Instale o PocketSphinx e suas dependências:

sudo apt update
sudo apt install pocketsphinx pocketsphinx-en-us

Também precisamos instalar o módulo Python para o PocketSphinx:

pip3 install pocketsphinx

Arquivo de palavras-chave

O primeiro passo será a criação de um arquivo contendo as palavras-chave que serão utilizadas para ativar a assistente virtual. Para isso, crie um arquivo chamado fabio.keyphrase, com o seguinte conteúdo:

jarvis/1e-1/
hello/1e-1/

O número após a barra (/) indica o quão rigoroso você quer que o reconhecimento seja. Valores menores tornam o reconhecimento mais rigoroso, enquanto valores maiores tornam-no menos rigoroso.

No meu caso salvei o arquivo em /home/fabio/.config/, mas você pode salvar em qualquer lugar.

Criando a assistente virtual

Agora vamos criar o script Python que irá captar os comandos de voz e responder por eles. Para isso, crie um arquivo chamado jarvis.py, com o seguinte conteúdo:

import os
from pocketsphinx import LiveSpeech, get_model_path

model_path = get_model_path() + '/en-us/'

speech = LiveSpeech(
    verbose=False,
    sampling_rate=16000,
    buffer_size=2048,
    no_search=False,
    full_utt=False,
    hmm=os.path.join(model_path, 'en-us'),
    dic=os.path.join(model_path, 'cmudict-en-us.dict'),
    kws=os.path.join(os.getcwd(), '/home/fabio/.config/fabio.keyphrase')
)

print("Escutando a palavra-chave...")

for phrase in speech:
    print("Palavra-chave detectada: ", phrase)

Feito isso, execute o script:

python3 jarvis.py

Agora, basta falar a palavra-chave que você definiu no arquivo fabio.keyphrase, e a assistente virtual irá responder por ela.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Exemplo de como abrir programas
Outros artigos deste autor

SimpleScreenRecorder - Gravar Vídeos do seu Desktop

Root no Samsung Galaxy S3 usando GNU/Linux

Desenhar com o mouse na tela do desktop

Criando Aplicativos Mobile com React Native

Integrando o Exim4 com o SendGrid

Leitura recomendada

Qual distribuição usar

À procura por pacotes em distros Debian-based (Ubuntu, Linux Mint e outras)

Adicionando um atalho na área de trabalho a um compartilhamento de rede no Ubuntu

Entretenimento no Linux

Entrevista com Knurt, o pires voador

  
Comentários
[1] Comentário enviado por maurixnovatrento em 25/03/2023 - 16:32h


Ótimo artigo.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts