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

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


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!

Página anterior    

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

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

Utilizando o Buffer de Gravação no Editor Vim

Tecnologia a seu favor: 3 motivos para ter um sistema financeiro e ganhar tempo no trabalho

HOWTO: Como se tornar moderador do Viva o Linux

Clicador automático de Tinder com Python

Leitura recomendada

Aos que estão começando...

Fazendo backup com o tar

Adicione vídeos como papel de parede no seu Linux

Lógica para computação - parte III

Iniciante KUbuntu 7.10 (curto e grosso)

  
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