Inhaltsverzeichnis:
- Schritt 1: Geschichte
- Schritt 2: Hardware-Build
- Schritt 3: Erste Schritte mit SNIPS
- Schritt 4: Schnittstelle mit Snips AI (Basisprojekt)
- Schritt 5: Schnittstelle mit Snips AI (Projekt AI)
- Schritt 6: App und Absichten erstellen
- Schritt 7: Raspbian auf die SD-Karte brennen
- Schritt 8: Installieren Sie die Snips-Plattform
- Schritt 9: Konfigurieren der Hardware
- Schritt 10: Importieren des AI-Modells aus der Konsole
- Schritt 11: Handler & Aktionscode
- Schritt 12: Fehlerbehebung
- Schritt 13: Gehäuse
- Schritt 14: Arbeiten der AI
Video: Persönlicher Englischtrainer - KI-Sprachassistent - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Dieses Projekt wird den Schülern helfen, die sich auf eine Sprachprüfung vorbereiten, bei der sie durch die Interaktion mit Snips AI trainiert werden können.
Schritt 1: Geschichte
Warum haben wir das gebaut?
Aus meiner persönlichen Erfahrung habe ich viele Leute gesehen, die sich auf die verschiedenen Sprachtests wie GRE, TOEFL, IELTS vorbereitet haben. Sie brauchen eine Person, die ihnen beim Auswendiglernen und Verstehen der Wörter hilft. Wenn sich eine Person auf solche Prüfungen vorbereitet, brauchen sie im Allgemeinen eine Person, die überprüft und korrigiert, wenn sie einen Fehler macht. Mit dieser Lösung können wir durch den Einsatz eines Sprachassistenten Personal reduzieren.
Schritt 2: Hardware-Build
Zuallererst möchte ich SNIPS und SEEED für die Unterstützung dieses Projekts mit dem erstaunlichen Snips Voice Interaction Development Kit (Base Kit) danken.
Sie können das Snips Voice Interaction Base Kit für 115 US-Dollar und das Snips Voice Interaction Satellite Kit für 85 US-Dollar erwerben
Schritt 3: Erste Schritte mit SNIPS
Bevor Sie beginnen, lassen Sie uns überprüfen, was Sie benötigen.
- Raspberry Pi 3B/B+ (empfohlen) oder Pi 2 Model B (unterstützt).
- Micro-USB-Kabel & Micro-USB-Netzteil für Raspberry Pi.
- Micro-SD-Karte (mindestens 8 GB) - Zum Starten ist ein Betriebssystem erforderlich. Sie können Raspbian Stretch herunterladen und die Anleitungen für Mac OS, Linux und Windows auf der Raspberry Pi-Website verwenden.
- Eine USB-Tastatur und -Maus und ein externer HDMI-Monitor - wir empfehlen auch, eine USB-Tastatur und -Maus sowie einen HDMI-Monitor zur Hand zu haben.
- Internetverbindung (Ethernet oder WLAN)
Snips Voice Interaction Base Kit
Die Snips Voice Interaction Development Kits ermöglichen es Benutzern, ihre Entwicklung von Sprachschnittstellen zu beschleunigen und die Snips AI Voice Platform einfach in Hardware zu integrieren. Snips werden auf dem Gerät ausgeführt, d. h. alle Ihre Sprachbefehle und Daten werden lokal verarbeitet und nicht an die Cloud gesendet. Diese Verarbeitung auf dem Gerät führt zu einem absolut sicheren Offline-Sprachassistenten, der Ihre persönlichen Daten geheim hält, wie es sein sollte.
Mit dem Voice Interaction Base Kit können Sie die gesamte Snips AI Voice Platform ausführen. Angetrieben von einem Raspberry Pi 3 Model B+ und dem ReSpeaker 2-Mics Pi HAT, kann es als Ihr intelligenter Heimlautsprecher fungieren. Zusammen mit dem Kit kommt ein Lautsprecher, ein Grove - Temperatur- und Feuchtigkeitssensor (SHT31), ein Grove - Relais und ein Steckbrett zum Aufhängen an einer Wand oder zum Erstellen eines raffinierten Ständers.
Aber das ist nicht alles! Das Voice Interaction Satellite Kit erweitert Ihre Basisstation, um jeden Raum Ihres Hauses zu erreichen und ermöglicht es Ihnen, mit der Hardware zu interagieren, je nachdem, wo Sie Ihre Befehle ausgeben!
Dieses Kit enthält ein Raspberry Pi3 B+ Board, ReSpeaker 2-Mics Pi HAT, Grove – Relay, Grove – Temperature & Humidity Sensor (SHT31), Lautsprecher 6 Ohm 2W, MicroSD-Karte, Netzteil mit Micro-USB-Anschluss, Grove-Kabel x 2, Acrylbasis Tafel.
Montageschritte: (Inhalt von SNIPS) Das folgende Bild ist die Übersicht der Montageteile.
Hier werden die Montageteile auf der Grundplatte montiert.
Dann werden alle elektronischen Teile auf der Platine montiert.
Montieren Sie danach die Acrylschutzabdeckung oben auf dem Grove-Relais.
Diese 2 Teile werden verwendet, um das Kit zu einem Tischständer zu machen.
Endlich sind Sie bereit, mit Snips zu spielen.
Das Kit bietet zwei Möglichkeiten der Platzierung. Es kann entweder wie ein Ständer auf eine horizontale Fläche gestellt oder mit Drähten oder Fäden an einer Wand aufgehängt werden. Bitte seien Sie vorsichtig mit dem Relais, wenn das Kit eingeschaltet ist, da die Arbeitsspannung hoch ist.
HINWEIS: Wir haben auch ein Snips Voice Interaction Satellite Kit mit einem Raspberry Pi Zero anstelle von Raspberry Pi 3B+
Schritt 4: Schnittstelle mit Snips AI (Basisprojekt)
- Versorgen Sie das Kit über das im Kit enthaltene Standardnetzteil oder verwenden Sie einen 5V-2A DC-Adapter mit einem Micro-USB-Anschluss.
- Der nächste Schritt ist die Installation des Snips-Assistenten auf dem Raspberry Pi. Um Ihre Einrichtungszeit zu sparen, wurde die MicroSD-Karte im Kit mit dem voll funktionsfähigen Systemimage geflasht, was bedeutet, dass der Snips-Assistent für Ihre Triggerwörter bereit ist.
- Wir empfehlen Ihnen dringend, die Schritt-für-Schritt-Installationsanleitung zu studieren, indem Sie: https://docs.snips.ai/getting-started/quick-start… besuchen und das sam-Tool in der Befehlszeile lernen.
- Lösen Sie den Assistenten aus, indem Sie „Hey-snips“sagen, und folgen Sie dem Befehl:
Nachfolgend finden Sie das Video des im Snips Voice Interaction-Basiskit vorinstallierten Beispiels.
Schritt 5: Schnittstelle mit Snips AI (Projekt AI)
So funktioniert es also. Zuerst verwenden wir das Hotword, um die Snips-Erkennung zu initiieren. Es versteht den Satz mit Snips NLU und bestimmt die Absicht. Extrahieren Sie als nächstes die Slots mit dem Intent. Mit dem Aktionscode programmieren wir die KI-Antwort entsprechend den Slots.
Schritt 6: App und Absichten erstellen
- Erstellen Sie einen Assistenten. In meinem Fall hatte ich einen Assistenten mit dem Namen JARVIS und mit dem Hotword JARVIS erstellt.
- Erstellen Sie eine benutzerdefinierte Anwendung oder verwenden Sie für Anfänger die Anwendung aus der Bibliothek.
- Ich hatte eine Anwendung mit dem Namen Words erstellt
- Erstellen Sie eine Absicht und beginnen Sie mit dem Training der KI. Dies spielt eine wichtige Rolle, um Ihre KI robust zu machen. Trainieren Sie es mit allen möglichen Eingaben.
- Erstellen Sie einen Schlitz, um die Wörter zu identifizieren. Platzieren Sie den Schlitz an der erwarteten Phrase des Satzes. In meinem Beispiel ist Givenword der Slot-Name und wird blau hervorgehoben.
- Sobald dies erledigt ist, ist Ihre benutzerdefinierte ASR fertig. Versuchen Sie es mit den Eingaben. Die Antwort finden Sie rechts unter dem Assistenten. Dies gibt Ihnen die Extraktion des Rohwerts, des Intent-Namens und des Slots.
- Definieren Sie Slots mit weiteren Beispielen wie unten angegeben
- Stellen Sie schließlich Ihren Assistenten bereit, um Ihre personalisierte KI zu erleben.
Schritt 7: Raspbian auf die SD-Karte brennen
Raspbian ist die Linux-Distribution der Wahl, die auf dem Raspberry Pi läuft. In diesem Handbuch verwenden wir die Lite-Version, aber die Desktop-Version (die mit einer grafischen Umgebung geliefert wird) kann ebenfalls verwendet werden.
- Laden Sie Etcher herunter und installieren Sie es.
- Verbinden Sie einen SD-Kartenleser mit der darin befindlichen SD-Karte.
- Öffnen Sie Etcher und wählen Sie von Ihrer Festplatte die Raspberry Pi-.img- oder.zip-Datei aus, die Sie auf die SD-Karte schreiben möchten
- Wählen Sie die SD-Karte aus, auf die Sie Ihr Bild schreiben möchten.
- Überprüfen Sie Ihre Auswahl und klicken Sie auf „Flash!“. um mit dem Schreiben von Daten auf die SD-Karte zu beginnen
Verbinden Sie das Gerät mit Ihrem Netzwerk
- Aktivieren Sie den SSH-Zugriff, indem Sie eine leere Datei ssh hinzufügen, die sich wiederum im Stammverzeichnis des Boot-Volumes auf Ihrer SD-Karte befindet.
- Stecken Sie die SD-Karte in den Raspberry Pi. Es bootet in etwa 20 Sekunden. Sie sollten nun über SSH-Zugriff auf Ihren Raspberry Pi verfügen. Standardmäßig lautet der Hostname raspberrypi.local. Öffnen Sie auf Ihrem Computer ein Terminalfenster und geben Sie Folgendes ein:
Das Standardpasswort ist Himbeere
Schritt 8: Installieren Sie die Snips-Plattform
Falls noch nicht geschehen, installieren Sie das Sam Command Line Interface auf Ihrem Computer. Öffnen Sie ein Terminalfenster und geben Sie Folgendes ein:
sudo npm install -g snips-samor npm install -g snips-sam //Windows
Finden Sie Ihren Raspberry Pi im Netzwerk, indem Sie Folgendes ausführen:
Sam-Geräte
Stellen Sie als Nächstes eine Verbindung zum Gerät her. Sie werden aufgefordert, den Benutzernamen und das Passwort des Geräts einzugeben (die Standardeinstellung ist pi bzw. raspberry):
sam verbinden
Wir sind nun bereit, die Snips-Plattform auf dem Raspberry Pi zu installieren. Geben Sie den Befehl ein:
Sam init
Schritt 9: Konfigurieren der Hardware
Sam bietet einige Befehle zum einfachen Einrichten und Konfigurieren von Hardwarekomponenten. In diesem Abschnitt werden wir einen Lautsprecher und ein Mikrofon einrichten. Abhängig von Ihrer Einrichtung müssen einige benutzerdefinierte Konfigurationen vorgenommen werden.
Sam-Setup-Audio
Testen Sie den Lautsprecher
Um zu überprüfen, ob der Lautsprecher funktioniert, führen Sie
sam test lautsprecher
Wenn alles funktioniert, sollten Sie auf Ihrem Lautsprecher eine Stimme hören, die ein paar Worte sagt. Mikrofon konfigurieren Sie können überprüfen, ob Ihr Mikrofon funktioniert:
Sam Testmikrofon
Angenommen, Sie haben einen Lautsprecher, wenn Sie das Gesagte deutlich hören können, können Sie ohne weitere Mikrofonkonfiguration weitermachen.
Sobald Sie überzeugt sind, dass Ihr Hardware-Setup funktioniert, können Sie mit dem nächsten Schritt fortfahren, in dem Sie Ihren ersten Assistenten bereitstellen.
Schritt 10: Importieren des AI-Modells aus der Konsole
Nachdem Sie Ihren Assistenten aus den vorherigen Schritten erstellt haben, melden Sie sich über das Terminalfenster an der Konsole an, indem Sie Folgendes ausführen:
Sam-Login
Sie werden aufgefordert, Ihre Snips Console-Anmeldeinformationen einzugeben.
Als nächstes installieren Sie den Assistenten:
Sam Installationsassistent
Wenn Sie mehrere Assistenten in der Konsole erstellt haben, werden Sie aufgefordert, aus einer Liste auszuwählen, welcher Assistenten installiert werden soll.
Schritt 11: Handler & Aktionscode
Damit der Raspberry Pi reagieren kann, müssen wir einen Handler-Code schreiben. Dies ist ein Code, der ausgeführt wird, wenn ein bestimmtes Ereignis auf der Snips-Plattform eintritt, beispielsweise wenn eine Absicht erkannt wurde.
Je nach Funktionsweise stehen Ihnen verschiedene Methoden zur Verfügung, um Handler zu erstellen.
Erstellen Sie auf Ihrem Computer einen Ordner, in dem Sie Ihren Handler-Code speichern möchten. Wechseln Sie im Terminalfenster in dieses Verzeichnis und geben Sie Folgendes ein:
npm init
Dadurch wird eine Datei namens package.json erstellt, die die Beschreibung, Abhängigkeiten und mehr Ihres Projekts enthält. Fügen Sie als Nächstes die mqtt-Paketabhängigkeit hinzu:
npm install mqtt --save
Erstellen Sie nun eine Datei namens index.js und fügen Sie den folgenden Code ein, wobei Sie die Hostname-Variable durch den Hostnamen Ihres Raspberry Pi ersetzen (falls er sich vom Standard-Raspberrypi unterscheidet):
var mqtt = require('mqtt');
var hostname = "mqtt://raspberrypi.local"; var-Client = mqtt.connect(Hostname); client.on('connect', function () { console.log("[Snips Log] Verbunden mit MQTT-Broker " + 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\/.+\/detected/g) !== null) { onHotwordDetected() } else if (topic.match(/hermes\ /intent\/.+/g) !== null) { onIntentDetected(JSON.parse(message));} }); Funktion onIntentDetected(Intent) { console.log("[Snips Log] Intent erkannt: " + JSON.stringify(Intent)); } Funktion onHotwordDetected() { console.log("[Snips Log] Hotword erkannt"); aufrechtzuerhalten. }
Führen Sie diesen Code mit Node aus:
Knotenindex.js
Sie sollten eine Meldung über eine erfolgreiche Verbindung zum Snips MQTT-Broker sehen. Führen Sie wie zuvor eine Sprachinteraktion mit Ihrem Raspberry Pi durch:
Hey Snips, wie ist das Wetter in Chennai
Sie sollten sehen, dass die Protokolle aktualisiert werden:
[Snips Log] Verbunden mit dem MQTT-Broker mqtt://raspberrypi.local
[Snips-Protokoll] Hotword erkannt [Snips-Protokoll] Mithören beginnen [Snips-Protokoll] Hören aufhören [Snips-Protokoll] Absicht erkannt: {"sessionId":"c84b5aa5-3f14-4218-975e-8872b9217933", "customData":null, "siteId ": "default", "input":"wie ist das Wetter in 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"}]}
Schritt 12: Fehlerbehebung
Löschen Sie den vorherigen Assistenten, falls vorhanden
$ sudo rm -rf /usr/share/snips/assistant/
So ändern Sie das Verzeichnis zum Assistenten
cd /var/lib/snips/skills/
So klonen Sie den Inhalt des Repositorys auf local
Git-Klon
Zum Ausführen des setup.sh-Skripts
./setup.sh
Virtuelle Umgebung aktivieren
Quellvenv/bin/aktivieren
Führen Sie den Aktionscode aus
./action-.py
Um dem Python-Skript die Berechtigung zu erteilen
chmod +x Aktion-.py
Schritt 13: Gehäuse
- Ich hatte für dieses Projekt ein IP-bewertetes Gehäuse verwendet
- Zuerst machte ich die notwendigen Löcher, um die Schaltung und die Steckplätze für Netzkabel und HDMI-Kabel zu montieren.
- Dann habe ich alle Raspberry Pi in das Gehäuse gelegt und festgeschraubt.
- Ich machte eine kleine Öffnung für den Lautsprecher und das Mikrofon und bedeckte sie mit einem kleinen Stück Acrylplatte.
- Verbinden Sie den Lautsprecher fest mit dem ReSpeaker-Hut.
- Schließlich sind alle Schrauben fest montiert und das Stromkabel wird über einen Schlitz eingeführt.
- So sieht die KI endlich aus:D
Schritt 14: Arbeiten der AI
Sie können die Daten finden, die mit Snips-watch überwacht werden
Jetzt ist Showtime. Ich habe mit Simple Greetings AI angefangen. Sehen Sie sich die Funktionsweise an.
Die Trainer-KI wurde für begrenzte Wörter programmiert. Dieser ist mit kleinen Modifikationen erweiterbar. Dies hilft den Schülern, sich die Bedeutung schneller als bei der traditionellen Methode zu merken.
Freundliche Aufmerksamkeit: Dieses Projekt ist für ungefähr 25 Wörter trainiert. Es kann durch kleinere Anpassungen im Aktionscode weiter erweitert werden.
Sie finden die Aktionsskripte in meinem angehängten Github-Repository.
Project Repo für Greetings AI -
Project Repo für Trainer AI -
Link zu meiner Bewerbung:
Das gesamte Setup kostet etwa 115 US-Dollar, die bei SNIPS erworben werden können, und diese Lösung ist im Vergleich zu den herkömmlichen Methoden sehr billig und effektiv. Ungefähr mehr als 100.000 Tests wurden in Indien durchgeführt und Dieses Produkt wird die beste Ergänzung für GRE-Abnehmer sein.
Gebt einen Daumen hoch, wenn es euch wirklich geholfen hat und folgt meinem Kanal für interessante Projekte.:) Teile dieses Video, wenn du magst. Schön, dass du dich abonniert hast: https://console.snips.ai/store/en/skill_xBKlxnE5K… Danke fürs Lesen!
Empfohlen:
Arduino-basierter persönlicher Assistent. (BHAI): 4 Schritte
Arduino-basierter persönlicher Assistent. (BHAI): Einführung: Hergestellt in Zusammenarbeit mit Kundan Singh ThakurThis ist mein erstes instructable, also bitte mit allen Fehlern, die ich gemacht haben könnte. Hinterlassen Sie bei Zweifeln oder Problemen auch Kommentare. Der auf Arduino basierende persönliche Assistent ist wie Ihr Vir
Persönlicher Assistent: 9 Schritte (mit Bildern)
Persönlicher Assistent: In diesem anweisbaren zeige ich Ihnen, wie Sie die Leistung von ESP8266, Kreativität in Software-Design und Programmierung, nutzen können, um etwas Cooles und Pädagogisches zu machen. Ich nannte es Personal Assistant, weil es im Taschenformat ist, spricht mit Sie und können geben
So exportieren Sie Kindle Highlights (einschließlich persönlicher Dokumente): 6 Schritte
So exportieren Sie Kindle Highlights (einschließlich persönlicher Dokumente): Dies war ursprünglich ein Blog-Beitrag von mir. Mir wurde klar, dass ich viele DIY-Posts schrieb, die sich für die Erstellung von Lehrmaterialien eignen, also dachte ich, ich würde die Posts hier erneut veröffentlichen. Sie können die Originalbeiträge in meinem Blog hier lesen. Die instructable haben Biene