Pular para o conteúdo

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.
Fábio Berbert de Paula fabio
Hits: 6.268 Categoria: Linux Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar

Parte 2: Exemplo de como abrir programas

Agora vamos criar um exemplo de como abrir programas com a assistente virtual. Primeiramente vou criar um objeto mapeando cada palavra desejada a um comando:

comandos = {
    'firefox': '/usr/bin/firefox',
    'editor': '/usr/bin/kedit',
    'calculator': '/usr/bin/kcalc',
    'jarvis': 'echo 1 > /dev/null'
}

Feito isso vamos criar uma função que irá executar o comando desejado:

def executar_comando(comando):
    os.system(comandos[comando])

E por fim ajustar o script para que ele execute o comando desejado:

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

A versão final do script ficou assim:

import os
from pocketsphinx import LiveSpeech, get_model_path

comandos = {
    'firefox': '/usr/bin/firefox',
    'editor': '/usr/bin/kedit',
    'calculator': '/usr/bin/kcalc'
}

def executar_comando(comando):
    os.system(comandos[comando])

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)
    executar_comando(phrase)

E claro, você precisa adicionar os comandos que deseja executar ao arquivo fabio.keyphrase:

jarvis/1e-1/
firefox/1e-1/
editor/1e-1/
calculator/1e-1/

Execute o script novamente e agora você poderá abrir os programas desejados com a assistente virtual.

Nota final

Este artigo foi escrito usando o auxílio do ChatGPT-4 e o código Python com o auxílio da extensão para o NeoVim chamada CoPilot, da GitHub.

Até a próxima!

   1. Introdução
   2. Exemplo de como abrir programas

Como criar um keylogger em Python

Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado

Filtros do Instagram no Gimp

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

Enviando mensagens de WhatsApp no Linux usando Shell Script e ADB

Empacotamento e compactadores de arquivos

Vida nova para o Kurumin 7

Instalação do Debian Lenny 5

openSUSE 11.3 (parte 1)

Comandos básicos do Linux

#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

Entre na sua conta para comentar.