Table des matières:

Personal English Trainer - AI Voice Assistant : 15 étapes
Personal English Trainer - AI Voice Assistant : 15 étapes

Vidéo: Personal English Trainer - AI Voice Assistant : 15 étapes

Vidéo: Personal English Trainer - AI Voice Assistant : 15 étapes
Vidéo: How to Create Personal AI Assistant | Like Iron Man 2024, Novembre
Anonim
Personal English Trainer - AI Voice Assistant
Personal English Trainer - AI Voice Assistant

Ce projet aidera les étudiants qui se préparent à n'importe quel examen linguistique, où ils pourront être formés en interagissant avec Snips AI.

Étape 1: Histoire

Histoire
Histoire
Histoire
Histoire

Pourquoi avons-nous construit cela ?

D'après mon expérience personnelle, j'ai vu de nombreuses personnes se préparer aux différents tests linguistiques tels que GRE, TOEFL, IELTS. Ils ont besoin d'une personne pour les aider à mémoriser et à comprendre les mots. Généralement, lorsqu'une personne se prépare à de tels examens, elle a besoin d'une personne pour vérifier et corriger si elle fait une erreur. Avec cette solution, nous pouvons réduire les effectifs en employant un assistant vocal.

Étape 2: Construire le matériel

Construction matérielle
Construction matérielle
Construction matérielle
Construction matérielle

Tout d'abord, je tiens à remercier SNIPS et SEEED pour avoir soutenu ce projet avec l'incroyable kit de développement d'interaction vocale Snips (kit de base), je me suis vraiment senti instructif en utilisant cette carte et en mesure de réaliser certains des projets complexes intégrés dans un PCB.

Vous pouvez acheter le kit de base d'interaction vocale Snips pour 115 $ et le kit satellite d'interaction vocale Snips pour 85 $

Étape 3: Premiers pas avec SNIPS

Premiers pas avec SNIPS
Premiers pas avec SNIPS
Premiers pas avec SNIPS
Premiers pas avec SNIPS
Premiers pas avec SNIPS
Premiers pas avec SNIPS

Avant de commencer, examinons ce dont vous aurez besoin.

  • Raspberry Pi 3B/B+ (recommandé) ou Pi 2 modèle B (pris en charge).
  • Câble Micro-USB et adaptateur secteur Micro-USB pour Raspberry Pi.
  • Carte Micro SD (Minimum 8 Go) - Un système d'exploitation est requis pour démarrer. Vous pouvez télécharger Raspbian Stretch et utiliser les guides pour Mac OS, Linux et Windows sur le site Web Raspberry Pi.
  • Un clavier et une souris USB et un moniteur HDMI externe - nous vous recommandons également d'avoir un clavier et une souris USB ainsi qu'un moniteur HDMI à portée de main.
  • Connexion Internet (Ethernet ou WiFi)

Kit de base d'interaction vocale Snips

Les kits de développement d'interactions vocales Snips permettent aux utilisateurs de démarrer rapidement le développement d'interfaces vocales et d'intégrer facilement la plate-forme vocale Snips AI au matériel. Snips s'exécute sur l'appareil, ce qui signifie que toutes vos commandes vocales et vos données sont traitées localement plutôt que d'être envoyées vers le cloud. Ce traitement sur l'appareil se traduit par un assistant vocal hors ligne entièrement sécurisé qui préserve la confidentialité de vos données personnelles, comme il se doit.

Le kit de base d'interaction vocale vous permet d'exécuter l'intégralité de la plate-forme vocale Snips AI. Alimenté par un Raspberry Pi 3 modèle B+ et le ReSpeaker 2-Mics Pi HAT, il est capable d'agir comme votre haut-parleur intelligent domestique. Le kit comprend un haut-parleur, un capteur de température et d'humidité Grove (SHT31), un relais Grove et un panneau perforé pour l'accrocher au mur ou créer un support astucieux.

Mais ce n'est pas tout! Le kit satellite d'interaction vocale étendra votre station de base pour atteindre chaque pièce de votre maison et vous permettra d'interagir avec le matériel en fonction de l'endroit où vous émettez vos commandes !

Ce kit contient une carte Raspberry Pi3 B+, ReSpeaker 2-Mics Pi HAT, Grove - Relay, Grove - Capteur de température et d'humidité (SHT31), Haut-parleur 6 Ohm 2W, Carte MicroSD, Adaptateur secteur avec connecteur Micro USB, Câble Grove x 2, Base en acrylique panneau.

Étapes d'assemblage: (Contenu de SNIPS) L'image suivante est la vue d'ensemble des pièces d'assemblage.

Ici, les pièces d'assemblage sont montées sur le panneau de base.

Ensuite, toutes les pièces électroniques sont montées sur la carte.

Après cela, montez le couvercle de protection acrylique sur le Grove-Relay.

Ces 2 parties sont utilisées pour transformer le Kit en support de table.

Enfin, vous êtes prêt à jouer avec Snips.

Le kit offre deux façons de placement. Il peut être placé sur une surface horizontale comme un support ou peut être accroché au mur à l'aide de fils ou de fils. Soyez prudent avec le relais lorsque le kit est sous tension car la tension de fonctionnement sera élevée.

REMARQUE: nous avons également un kit satellite d'interaction vocale Snips qui a un Raspberry Pi zéro à la place du Raspberry Pi 3B+

Étape 4: Interfaçage avec Snips AI (Projet de base)

Image
Image
Interfaçage avec Snips AI (Projet AI)
Interfaçage avec Snips AI (Projet AI)
  • Alimentez le kit par l'adaptateur secteur par défaut du kit ou utilisez un adaptateur CC 5V-2A avec un connecteur Micro USB.
  • L'étape suivante consiste à installer l'assistant Snips dans le Raspberry Pi. Pour économiser votre temps d'installation, la carte MicroSD dans le kit a été flashée avec l'image complète du système fonctionnel, ce qui signifie que l'assistant Snips est prêt pour vos mots de déclenchement.
  • Nous vous suggérons fortement d'étudier le guide d'installation étape par étape en visitant: https://docs.snips.ai/getting-started/quick-start… et d'apprendre l'outil sam en ligne de commande.
  • Déclenchez l'assistant en disant « Hey-snips », et suivez la commande:

Vous pouvez trouver la vidéo de l'exemple pré-installé dans le kit de base Snips Voice Interaction ci-dessous.

Étape 5: Interfaçage avec Snips AI (Project AI)

C'est donc ainsi que cela fonctionne. Tout d'abord, nous utilisons le mot clé pour lancer la reconnaissance Snips. Il comprend la phrase à l'aide de Snips NLU et détermine l'intention. Ensuite, en utilisant l'intention, extrayez les emplacements respectivement. Avec le code d'action, nous programmons la réponse de l'IA en fonction des emplacements.

Étape 6: Création de l'application et des intentions

Créer une application et des intentions
Créer une application et des intentions
Créer une application et des intentions
Créer une application et des intentions
Créer une application et des intentions
Créer une application et des intentions
  • Créer un assistant. Dans mon cas, j'avais créé un assistant avec un nom JARVIS et avec un mot clé JARVIS.
  • Créez une application personnalisée ou pour les débutants, utilisez l'application de la bibliothèque.
  • J'avais créé une application avec le nom Words
  • Créez une intention et commencez à entraîner l'IA. Cela joue un rôle majeur dans la robustesse de votre IA. Entraînez-le avec toutes les entrées possibles.
  • Créez une fente pour identifier les mots. Placez la fente à la phrase attendue de la phrase. Pour mon exemple, givenword est le nom du slot et il est surligné en bleu.
  • Une fois cela fait, votre ASR personnalisé sera prêt. Essayez avec les entrées. Nous pouvons trouver la réponse à votre droite, sous l'assistant. Cela vous donne l'extraction de la valeur brute, du nom de l'intention et de l'emplacement.
  • Définissez les emplacements avec plus d'exemples comme indiqué ci-dessous
  • Enfin, déployez votre assistant pour découvrir votre IA personnalisée.

Étape 7: graver Raspbian sur la carte SD

Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD
Graver Raspbian sur la carte SD

Raspbian est la distribution Linux de choix fonctionnant sur le Raspberry Pi. Dans ce guide, nous utiliserons la version Lite, mais la version Desktop (fournie avec un environnement graphique) peut également être utilisée.

  • Téléchargez Etcher et installez-le.
  • Connectez un lecteur de carte SD avec la carte SD à l'intérieur.
  • Ouvrez Etcher et sélectionnez sur votre disque dur le fichier Raspberry Pi.img ou.zip que vous souhaitez écrire sur la carte SD
  • Sélectionnez la carte SD sur laquelle vous souhaitez écrire votre image.
  • Vérifiez vos sélections et cliquez sur « Flash ! » pour commencer à écrire des données sur la carte SD

Connectez l'appareil à votre réseau

  • Activez l'accès SSH en ajoutant un fichier ssh vide, à nouveau placé à la racine du volume de démarrage sur votre carte SD.
  • Insérez la carte SD dans le Raspberry Pi. Il démarrera dans environ 20 secondes. Vous devriez maintenant avoir un accès SSH à votre Raspberry Pi. Par défaut, son nom d'hôte sera raspberrypi.local. Sur votre ordinateur, ouvrez une fenêtre de terminal et tapez ce qui suit:

ssh [email protected]

Le mot de passe par défaut est framboise

Étape 8: Installez la plate-forme Snips

Installer la plate-forme Snips
Installer la plate-forme Snips
Installer la plate-forme Snips
Installer la plate-forme Snips
Installer la plate-forme Snips
Installer la plate-forme Snips

Si vous ne l'avez pas déjà fait, installez l'interface de ligne de commande Sam sur votre ordinateur. Ouvrez une fenêtre de terminal et saisissez:

sudo npm install -g snips-samor npm install -g snips-sam //Windows

Trouvez votre Raspberry Pi sur le réseau en exécutant:

appareils mobiles

Ensuite, établissez une connexion avec l'appareil. Vous serez invité à saisir le nom d'utilisateur et le mot de passe de l'appareil (par défaut, pi et framboise, respectivement):

sam se connecter

Nous sommes maintenant prêts à installer la plateforme Snips sur le Raspberry Pi. Saisissez la commande:

sam init

Étape 9: Configurez le matériel

Configurer le matériel
Configurer le matériel
Configurer le matériel
Configurer le matériel

Sam fournit quelques commandes pour installer et configurer facilement les composants matériels. Dans cette section, nous allons mettre en place un haut-parleur et un microphone. Selon votre configuration, une configuration personnalisée doit être effectuée.

sam configuration audio

Tester le haut-parleur

Pour vérifier que le haut-parleur fonctionne, exécutez

haut-parleur de test sam

Si tout fonctionne bien, vous devriez entendre sur votre haut-parleur une voix disant quelques mots. Configurer le microphone Vous pouvez vérifier que votre microphone fonctionne:

micro test sam

En supposant que vous ayez un haut-parleur, si vous pouvez clairement entendre ce que vous venez de dire, vous pouvez passer à autre chose sans autre configuration du microphone.

Une fois que vous êtes convaincu que votre configuration matérielle fonctionne, vous êtes prêt à passer à l'étape suivante, où vous déploierez votre premier assistant.

Étape 10: Importation du modèle d'IA depuis la console

Importation d'un modèle d'IA depuis la console
Importation d'un modèle d'IA depuis la console

Une fois que vous avez créé votre assistant à partir des étapes précédentes, connectez-vous à la console depuis la fenêtre du terminal en exécutant:

sam se connecter

Il vous sera demandé de saisir vos informations d'identification de la console Snips.

Ensuite, installez l'assistant:

assistant d'installation sam

Si vous avez créé plusieurs assistants dans la console, il vous sera demandé de choisir celui à installer dans une liste.

Étape 11: gestionnaire et code d'action

Pour que le Raspberry Pi réponde, nous devrons écrire du code de gestionnaire. Il s'agit d'un code qui est exécuté lorsqu'un certain événement se produit sur la plate-forme Snips, par exemple lorsqu'une intention a été détectée.

Vous disposez de différentes méthodes pour créer un Handler en fonction du fonctionnement.

Créez un dossier sur votre ordinateur dans lequel vous souhaitez stocker votre code de gestionnaire. Dans la fenêtre du terminal, accédez à ce répertoire et entrez:

initialisation npm

Cela créera un fichier nommé package.json qui contient la description, les dépendances et plus encore de votre projet. Ensuite, ajoutez la dépendance du package mqtt:

npm install mqtt --save

Maintenant, créez un fichier appelé index.js et collez le code suivant, en remplaçant la variable hostname par le nom d'hôte de votre Raspberry Pi (s'il diffère du raspberrypi par défaut):

var mqtt = require('mqtt');

var hostname = "mqtt://raspberrypi.local"; var client = mqtt.connect(nom d'hôte); client.on('connect', function () { console.log("[Snips Log] Connecté au courtier MQTT " + nom d'hôte); client.subscribe('hermes/#'); }); client.on('message', fonction (sujet, message) { if (sujet === "hermes/asr/startListening") { onListeningStateChanged(true); } else if (sujet === "hermes/asr/stopListening") { onListeningStateChanged(false); } else if (topic.match(/hermes\/hotword\/.+\/detected/g) !== null) { onHotwordDetected() } else if (topic.match(/hermes\ /intent\/.+/g) !== null) { onIntentDetected(JSON.parse(message)); } }); function onIntentDetected(intent) { console.log("[Snips Log] Intention détectée: " + JSON.stringify(intent)); } function onHotwordDetected() { console.log("[Snips Log] Hotword détecté"); } function onListeningStateChanged(listening) { console.log("[Snips Log] " + (listening ? "Start": "Stop") + " listening"); }

Exécutez ce code à l'aide de Node:

index de nœud.js

Vous devriez voir un message indiquant une connexion réussie au courtier Snips MQTT. Comme précédemment, effectuez une interaction vocale avec votre Raspberry Pi:

Hey Snips, quel temps fait-il à Chennai

Vous devriez voir les journaux se mettre à jour:

[Snips Log] Connecté au courtier MQTT mqtt://raspberrypi.local

[Snips Log] Mot clé détecté [Snips Log] Commencer à écouter [Snips Log] Arrêter d'écouter [Snips Log] Intention détectée: {"sessionId":"c84b5aa5-3f14-4218-975e-8872b9217933", "customData":null, "siteId ": "default", "input":" quel temps fait-il à Chennai", "intent":{"intentName":"searchWeatherForecast", "probability":0.73845243}, "slots":[{"rawValue":" chennai", "value":{"kind":"Custom", "value":"Chennai"}, "range":{"start":44, "end":53}, "entity":"locality", "slotName":"forecast_locality"}]}

Étape 12: Dépannage

Supprimez l'assistant précédent s'il en existe un

$ sudo rm -rf /usr/share/snips/assistant/

Pour changer le répertoire de l'assistant

cd /var/lib/snips/skills/

Cloner le contenu du dépôt en local

clone git

Pour exécuter le script setup.sh

./setup.sh

Activer l'environnement virtuel

source venv/bin/activer

Exécutez le code d'action

./action-.py

Pour donner la permission au script Python

chmod +x action-.py

Étape 13: Enceinte

Enceinte
Enceinte
Enceinte
Enceinte
Enceinte
Enceinte
  • J'avais utilisé un boîtier IP pour ce projet
  • Tout d'abord, j'ai fait les trous nécessaires pour monter les circuits et les fentes pour le cordon d'alimentation et le câble HDMI.
  • Ensuite, j'ai placé tous les Raspberry Pi à l'intérieur du boîtier et les vis fermement.
  • J'ai fait une petite ouverture pour le haut-parleur et le microphone et je l'ai recouverte d'un petit morceau de feuille acrylique.
  • Connectez fermement le haut-parleur au chapeau ReSpeaker.
  • Enfin, toutes les vis sont solidement montées et le câble d'alimentation est inséré via une fente.
  • Voilà à quoi ressemble finalement l'IA:D

Étape 14: Fonctionnement de l'IA

Image
Image
Fonctionnement de l'IA
Fonctionnement de l'IA
Fonctionnement de l'IA
Fonctionnement de l'IA

Vous pouvez trouver les données surveillées à l'aide de Snips-watch

C'est maintenant l'heure du spectacle. J'ai commencé à faire avec Simple salutations AI. Jetez un oeil à son fonctionnement.

Le Trainer AI a été programmé pour des mots limités. Ceci est extensible avec de petites modifications. Cela aide les étudiants à mémoriser le sens plus rapidement que la méthode traditionnelle.

Attention aimable:Ce projet est formé pour 25 mots environ. Il peut être encore étendu en apportant des modifications mineures au code d'action.

Vous pouvez trouver les scripts d'action sur mon référentiel Github ci-joint.

Référentiel de projet pour Greetings AI -

Projet Repo pour Trainer AI -

Lien vers Mon application:

L'ensemble de l'installation coûte environ 115 $ qui peuvent être achetés auprès de SNIPS et cette solution est très bon marché et efficace par rapport aux méthodes traditionnelles. Environ plus de 100 000 tests ont été effectués en Inde et ce produit sera le meilleur complément pour les preneurs de GRE.

Donnez un coup de pouce si cela vous a vraiment aidé et suivez ma chaîne pour des projets intéressants.:) Partagez cette vidéo si vous aimez. Heureux de vous avoir abonné: https://console.snips.ai/store/en/skill_xBKlxnE5K… Merci d'avoir lu !

Conseillé: