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

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

Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota

Como criar um bot para curtir e comentar perfis do Instagram

FISL 10: Venturas e desventuras da turma do VOL

Desbloquear a tela do Android pelo PC (PIN)

Assumindo o controle do teu Android com ADB

Leitura recomendada

Permissões no Linux

O Linux é difícil?

Qual a melhor distribuição? Ainda a pergunta...

Instalação do Driver ATI Radeon XPRESS 200 no Ubuntu 16.04

Instalação de Programas no Ubuntu (atualizaçã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