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.942 ]

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

Torne-se um DJ usando Linux

cpulimit - Limitando o uso da CPU por processo

DesignCap - Ferramenta de design gráfico para leigos

Implementando um tradutor de línguas no seu web site

Python - Usando requests anônimos através da rede Tor

Leitura recomendada

Funcionamento de um cluster Linux

GNOME vs KDE - Usabilidade ou Personalização

Pós-instalação do Arch Linux em um Dell Vostro 1400

30 motivos para usar o Linux

Mandrake Linux 10.1 Powerpack

  
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