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

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

A função DATE_FORMAT() do MySQL

adb - Como capturar em vídeo a tela de seu Android

Organizando projetos com a classe FastTemplate (parte 1)

Paginação de resultados em PHP/MySQL

Criando gráficos com a classe JPGraph (parte 1)

Leitura recomendada

As Principais Distribuições GNU/Linux - Versão 2012

Ubuntu 10.04 no Notebook Acer 5532

Introdução ao Linux: Dual-Boot com Big Linux 4 e Windows XP

A importância de um backup

CentOS 5.8 - MySQL Cluster 7.1 + HAProxy

  
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