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: 4.080 ]

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

Viva o Linux finalmente de volta!

A trajetória do Viva o Linux - retrospectiva 2003/2004

Como camuflar seu WhatsApp Web usando Snippets JavaScript

Formatando Disquetes

I Encontro da Comunidade Viva o Linux

Leitura recomendada

Ubuntu - Manual do Iniciante

Software Livre: primeiras impressões

OpenLDAP: Instalando um servidor de diretórios com replicação (SyncRepl)

Mamãe, quero Arch! (parte 2 - final)

Afinal, qual a melhor distribuição?

  
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