Índice:
- Etapa 1: História
- Etapa 2: construção de hardware
- Etapa 3: Introdução ao SNIPS
- Etapa 4: interface com o Snips AI (projeto básico)
- Etapa 5: Interface com Snips AI (Projeto AI)
- Etapa 6: Criação de aplicativo e objetivos
- Etapa 7: Grave o Raspbian no cartão SD
- Etapa 8: Instale a plataforma Snips
- Etapa 9: Configurar o Hardware
- Etapa 10: Importar modelo AI do console
- Etapa 11: Manipulador e código de ação
- Etapa 12: Solução de problemas
- Etapa 13: Gabinete
- Etapa 14: Funcionamento da IA
Vídeo: Treinador pessoal de inglês - AI Voice Assistant: 15 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Este projeto ajudará os alunos que estão se preparando para qualquer exame linguístico, onde podem ser treinados interagindo com o Snips AI.
Etapa 1: História
Por que construímos isso?
Pela minha experiência pessoal, tenho visto muitas pessoas se preparando para os vários testes linguísticos, como GRE, TOEFL, IELTS. Eles precisam de uma pessoa para ajudá-los a memorizar e compreender as palavras. Geralmente, quando uma pessoa se prepara para qualquer um desses exames, ela precisa de uma pessoa para verificar e corrigir se cometeu um erro. Com esta solução, podemos reduzir a mão de obra empregando um assistente de voz.
Etapa 2: construção de hardware
Em primeiro lugar, gostaria de agradecer a SNIPS e SEEED por apoiar este projeto com o incrível Snips Voice Interaction Development Kit (Base Kit), eu realmente me senti informativo usando esta placa e capaz de realizar alguns dos projetos complexos integrados dentro de um PCB.
Você pode comprar o kit básico de interação por voz Snips por $ 115 e o kit satélite de interação por voz Snips por $ 85
Etapa 3: Introdução ao SNIPS
Antes de começar, vamos revisar o que você precisa.
- Raspberry Pi 3B / B + (recomendado) ou Pi 2 Modelo B (compatível).
- Cabo Micro USB e adaptador de alimentação Micro USB para Raspberry Pi.
- Cartão Micro SD (mínimo 8 GB) - É necessário um sistema operacional para começar. Você pode baixar Raspbian Stretch e usar os guias para Mac OS, Linux e Windows no site Raspberry Pi.
- Um teclado e mouse USB e um monitor HDMI externo - também recomendamos ter um teclado e mouse USB, bem como um monitor HDMI à mão.
- Conexão com a Internet (Ethernet ou WiFi)
Kit básico de interação de voz Snips
Os kits de desenvolvimento de interação de voz Snips capacitam os usuários a iniciar o desenvolvimento de interfaces de voz e integrar facilmente a plataforma Snips AI Voice com o hardware. Os recortes são executados no dispositivo, o que significa que todos os seus comandos de voz e dados são processados localmente, em vez de serem enviados para a nuvem. Esse processamento no dispositivo resulta em um assistente de voz offline completamente seguro que mantém seus dados pessoais privados, como deveria ser.
O Voice Interaction Base Kit permite que você execute toda a plataforma de voz Snips AI. Equipado com um Raspberry Pi 3 Modelo B + e o ReSpeaker 2-Mics Pi HAT, ele é capaz de funcionar como um alto-falante inteligente doméstico. Junto com o kit vem um alto-falante, um Grove - Sensor de Temperatura e Umidade (SHT31), um Grove - Relay e um pegboard para pendurá-lo na parede ou criar um suporte bacana.
Mas isso não é tudo! O Voice Interaction Satellite Kit estenderá sua estação base para alcançar cada cômodo de sua casa e permitirá que você interaja com o hardware com base em onde você emite seus comandos!
Este kit contém uma placa Raspberry Pi3 B +, ReSpeaker 2-Mics Pi HAT, Grove - Relé, Grove - Sensor de Temperatura e Umidade (SHT31), Alto-falante 6 Ohm 2W, Cartão MicroSD, Adaptador de alimentação com conector Micro USB, Cabo Grove x 2, Base Acrílica painel.
Etapas da montagem: (Conteúdo do SNIPS) A imagem a seguir é a visão geral das peças da montagem.
Aqui, as peças de montagem são montadas no painel de base.
Em seguida, todas as peças eletrônicas são montadas na placa.
Em seguida monte a capa protetora acrílica no topo do Grove -Relay.
Essas 2 peças são usadas para transformar o Kit em um suporte de mesa.
Finalmente, você está pronto para jogar com Snips.
O kit oferece duas formas de colocação. Ele pode ser colocado em uma superfície horizontal como um suporte ou pode ser pendurado na parede usando fios ou linha. Tenha cuidado com o relé quando o kit estiver ligado, pois a tensão de trabalho será alta.
NOTA: Também temos um Kit de satélite de interação de voz Snips que tem um Raspberry Pi zero no lugar do Raspberry Pi 3B +
Etapa 4: interface com o Snips AI (projeto básico)
- Alimente o kit pelo adaptador de energia padrão no kit ou use um adaptador CC 5V-2A com um conector Micro USB.
- A próxima etapa é instalar o assistente Snips no Raspberry Pi. Para economizar seu tempo de configuração, o cartão MicroSD no kit foi atualizado com a imagem do sistema totalmente funcional, o que significa que o assistente Snips está pronto para suas palavras-gatilho.
- Recomendamos enfaticamente que você estude o guia de instalação passo a passo visitando: https://docs.snips.ai/getting-started/quick-start… e aprenda a ferramenta sam na linha de comando.
- Acione o assistente dizendo “Ei-snips” e siga o comando:
Você pode encontrar o vídeo do exemplo pré-instalado no kit base Snips Voice Interaction abaixo.
Etapa 5: Interface com Snips AI (Projeto AI)
Então é assim que funciona. Primeiro, usamos a hotword para iniciar o reconhecimento de Snips. Ele entende a frase usando Snips NLU e determina a intenção. Em seguida, usando o intent, extraia os slots respectivamente. Com o código de ação, programamos a resposta do AI com os respectivos para os slots.
Etapa 6: Criação de aplicativo e objetivos
- Crie um assistente. No meu caso, criei um assistente com o nome JARVIS e com uma hotword JARVIS.
- Crie um aplicativo personalizado ou, para iniciantes, use o aplicativo da biblioteca.
- Eu criei um aplicativo com o nome de palavras
- Crie uma intenção e comece a treinar a IA. Isso desempenha um papel importante em tornar sua IA robusta. Treine-o com todas as entradas possíveis.
- Crie um slot para identificar as palavras. Coloque o slot na frase esperada da frase. Para meu exemplo, givenword é o nome do slot e é destacado em azul.
- Depois de fazer isso, seu ASR personalizado estará pronto. Experimente com as entradas. Podemos encontrar a resposta à sua direita, abaixo do assistente. Isso fornece a você a extração do valor bruto, do nome da intenção e do slot.
- Defina slots com mais exemplos, conforme fornecido abaixo
- Finalmente, implante seu assistente para experimentar sua IA personalizada.
Etapa 7: Grave o Raspbian no cartão SD
Raspbian é a distribuição Linux escolhida para rodar no Raspberry Pi. Neste guia, estaremos usando a versão Lite, mas a versão Desktop (que vem com um ambiente gráfico) também pode ser usada.
- Baixe Etcher e instale-o.
- Conecte um leitor de cartão SD com o cartão SD dentro.
- Abra o Etcher e selecione em seu disco rígido o arquivo Raspberry Pi.img ou.zip que deseja gravar no cartão SD
- Selecione o cartão SD no qual deseja gravar sua imagem.
- Revise suas seleções e clique em 'Flash!' para começar a gravar dados no cartão SD
Conecte o dispositivo à sua rede
- Habilite o acesso SSH adicionando ssh de arquivo vazio, novamente colocado na raiz do volume de inicialização em seu cartão SD.
- Insira o cartão SD no Raspberry Pi. Ele será inicializado em cerca de 20 segundos. Agora você deve ter acesso SSH ao seu Raspberry Pi. Por padrão, seu nome de host será raspberrypi.local. No seu computador, abra uma janela de terminal e digite o seguinte:
A senha padrão é framboesa
Etapa 8: Instale a plataforma Snips
Instale a interface de linha de comando Sam em seu computador, caso ainda não tenha feito isso. Abra uma janela de terminal e digite:
sudo npm install -g snips-samor npm install -g snips-sam // Windows
Encontre seu Raspberry Pi na rede executando:
dispositivos sam
Em seguida, estabeleça uma conexão com o dispositivo. Será solicitado que você forneça o nome de usuário e a senha do dispositivo (o padrão é pi e raspberry, respectivamente):
Sam conectar
Agora estamos prontos para instalar a plataforma Snips no Raspberry Pi. Digite o comando:
sam init
Etapa 9: Configurar o Hardware
Sam fornece alguns comandos para instalar e configurar facilmente os componentes de hardware. Nesta seção, configuraremos um alto-falante e um microfone. Dependendo da sua configuração, algumas configurações personalizadas precisam ser feitas.
áudio de configuração sam
Teste o alto-falante
Para verificar se o alto-falante está funcionando, execute
alto-falante de teste sam
Se tudo funcionar bem, você deverá ouvir no alto-falante uma voz dizendo algumas palavras. Configure o microfone Você pode verificar se o seu microfone está funcionando:
microfone de teste sam
Supondo que você tenha um alto-falante, se puder ouvir claramente o que acabou de dizer, você pode seguir em frente sem mais configurações de microfone.
Quando estiver satisfeito com o funcionamento da configuração do seu hardware, você estará pronto para passar para a próxima etapa, onde implantará seu primeiro assistente.
Etapa 10: Importar modelo AI do console
Depois de criar seu assistente a partir das etapas anteriores, faça login no console a partir da janela do terminal executando:
login sam
Você será solicitado a inserir suas credenciais do Snips Console.
Em seguida, instale o assistente:
assistente de instalação sam
Se você criou vários assistentes no console, será solicitado a escolher qual deles deseja instalar em uma lista.
Etapa 11: Manipulador e código de ação
Para que o Raspberry Pi responda, teremos que escrever algum código de manipulador. Este é um código que é executado quando um determinado evento ocorre na plataforma Snips, como quando a intenção é detectada.
Você tem vários métodos para criar Handler, dependendo do funcionamento.
Crie uma pasta em seu computador na qual deseja armazenar o código do manipulador. Na janela do terminal, mude para esse diretório e digite:
npm init
Isso criará um arquivo chamado package.json que contém a descrição do seu projeto, dependências e muito mais. Em seguida, adicione a dependência do pacote mqtt:
npm install mqtt --save
Agora, crie um arquivo chamado index.js e cole o seguinte código, substituindo a variável hostname pelo hostname do seu Raspberry Pi (se for diferente do raspberrypi padrão):
var mqtt = requer ('mqtt');
var hostname = "mqtt: //raspberrypi.local"; var client = mqtt.connect (hostname); client.on ('connect', function () {console.log ("[Snips Log] Conectado ao corretor MQTT" + hostname); client.subscribe ('hermes / #');}); client.on ('message', function (topic, message) {if (topic === "hermes / asr / startListening") {onListeningStateChanged (true);} else if (topic === "hermes / asr / stopListening") {onListeningStateChanged (false);} else if (topic.match (/ hermes / / hotword / /.+ / / installed / g)! == null) {onHotwordDetected ()} else if (topic.match (/ hermes / /intent\/.+/g)! == null) {onIntentDetected (JSON.parse (mensagem));}}); function onIntentDetected (intent) {console.log ("[Snips Log] Intent detectado:" + JSON.stringify (intent)); } function onHotwordDetected () {console.log ("[Snips Log] Hotword detectado"); } função onListeningStateChanged (ouvindo) {console.log ("[Snips Log]" + (ouvindo? "Iniciar": "Parar") + "ouvindo"); }
Execute este código usando o Node:
node index.js
Você deve ver uma mensagem de uma conexão bem-sucedida com o agente Snips MQTT. Como antes, execute uma interação de voz com seu Raspberry Pi:
Ei, Snips, como está o tempo em Chennai
Você deve ver a atualização dos logs:
[Snips Log] Conectado ao corretor MQTT mqtt: //raspberrypi.local
[Snips Log] Hotword detectado [Snips Log] Começar a escutar [Snips Log] Parar de escutar [Snips Log] Intent detectado: {"sessionId": "c84b5aa5-3f14-4218-975e-8872b9217933", "customData": null, "siteId ":" default "," input ":" qual é o clima em chennai "," intent ": {" intentName ":" searchWeatherForecast "," probabilidade ": 0,73845243}," slots ": [{" rawValue ":" chennai "," value ": {" kind ":" Custom "," value ":" Chennai "}," range ": {" start ": 44," end ": 53}," entity ":" locality ", "slotName": "forecast_locality"}]}
Etapa 12: Solução de problemas
Exclua o assistente anterior, se houver
$ sudo rm -rf / usr / share / snips / assistant /
Para mudar o diretório para o Assistente
cd / var / lib / snips / skills /
Para clonar o conteúdo do repo para local
git clone
Para executar o script setup.sh
./setup.sh
Ative o ambiente virtual
fonte venv / bin / activate
Execute o código de ação
./action-.py
Para dar permissão ao script Python
chmod + x action-.py
Etapa 13: Gabinete
- Eu usei um invólucro classificado como IP para este projeto
- Primeiro, fiz os orifícios necessários para montar o circuito e os slots para o cabo de alimentação e o cabo HDMI.
- Em seguida, coloquei todo o Raspberry Pi dentro da caixa e aparafusei com firmeza.
- Fiz uma pequena abertura para o alto-falante e o microfone e cobri com um pequeno pedaço de folha de acrílico.
- Conecte o alto-falante ao chapéu ReSpeaker firmemente.
- Por fim, todos os parafusos são montados com firmeza e o cabo de alimentação é inserido por meio de uma ranhura.
- É assim que a IA finalmente se parece: D
Etapa 14: Funcionamento da IA
Você pode encontrar os dados que são monitorados usando o Snips-watch
Agora é hora do show. Comecei a fazer com Simple greetings AI. Dê uma olhada em seu funcionamento.
O Trainer AI foi programado para palavras limitadas. Isso é extensível com pequenas modificações. Isso ajuda os alunos a memorizar o significado mais rápido do que o método tradicional.
Atenção: Este projeto é treinado para 25 palavras aproximadamente. Ele pode ser expandido ainda mais fazendo pequenos ajustes no código de ação.
Você pode encontrar os scripts de ação em meu repositório Github em anexo.
Project Repo for Greetings AI -
Project Repo for Trainer AI -
Link para Meu aplicativo:
Toda a configuração custa cerca de US $ 115, que pode ser adquirida da SNIPS, e essa solução é muito barata e eficaz quando comparada aos métodos tradicionais. Aproximadamente mais de 100.000 testes foram realizados na Índia e este produto será o melhor suplemento para compradores GRE.
Dê um joinha se realmente te ajudou e siga meu canal para projetos interessantes.:) Compartilhe este vídeo se quiser. Feliz por ter se inscrito: https://console.snips.ai/store/en/skill_xBKlxnE5K… Obrigado pela leitura!
Recomendado:
Treinador de cães: 5 etapas
Dog Dog Trainer: De acordo com AKC, (https://www.akc.org/expert-advice/nutrition/how-many-times-a-day-should-a-dog-eat/) o tamanho da porção da refeição para o As rações são essenciais para os cães, e o tamanho da caixa também limitava o número de rações que o cão poderia comer por dia, “Veterinário
Treinador de fluido hidráulico: 9 etapas
Treinador de fluido hidráulico: Estas são as etapas para operar com segurança e eficácia um treinador hidráulico
Treinador de cães invisível: 9 etapas
Treinador de cães invisível: Nota! Os blocos reativos não estão mais disponíveis, portanto você não pode completar este Instructable. Com um sensor de pressão, led e alto-falante, você pode transformar seu Pi em um treinador de cães invisível que treina seu cão para sair do sofá. Quando o cachorro se senta no
Plataforma removível para treinador de marcha: 7 etapas
Plataforma removível para instrutor de marcha: Membros da equipe: Ananya Nandy, Vyshnavi Vennelakanti, Kanika GakharCo-Designers: Jennifer e JulianAgradeço à equipe do MIT AT Hack Exec e ao MIT Lincoln Beaver Works Center Este projeto foi concluído para o AT Hack 2019 (o hackathon de tecnologia assistiva
IRobot Criar Robô Pessoal Pessoal: 16 Passos (com Imagens)
IRobot Create Personal Home Robot: Apresentando um robô doméstico pessoal construído em torno da plataforma iRobot Create e um sistema de computador mini-itx. Nunca foi tão fácil e acessível projetar e construir robôs aproveitando as economias de escala do software, PC, brinquedo e o