Transkripte
1. Einführung: Hallo und willkommen zu dieser Klasse, in der wir zusammen
bauen und AI Voice Assistant
Abdu aus Python-Code. Ich mache seit
drei Jahren Tutorials auf
Python-code.com
, einer kostenlosen
Python-Bildungswebsite mit vielen Tutorials zu verschiedenen Themen
wie maschinellem Lernen, Verarbeitung
natürlicher Sprache, Computervision und viele mehr. In dieser Klasse
erfahren Sie, wie Sie
mit Python
einen KI-Sprachassistenten erstellen können . Dieses Projekt ist
in drei Hauptaufgaben unterteilt. Zunächst erstellen wir mit der Erstellung
eines Spracherkenners. Dies würde es uns ermöglichen, unsere Rede in digitale Texte umzuwandeln. Zweitens machen wir
andersherum ,
Text in Sprache umzuwandeln. Wenn der Chatbot
in einer Form von Texten reagiert, müssen
wir eine
Sprachsynthese durchführen, um sie wieder in eine
menschenähnliche Rede
umzuwandeln. Drittens verwenden wir ein vortrainiertes
Deep-Learning-Modell namens Yellow GPT, um
KI-Konversationsantworten zu generieren ohne
das
Transformatormodell von Grund auf neu trainieren zu müssen . In Ordnung, das war's
für die Einführung. Wir sehen uns in den nächsten Videos.
2. Konvertieren von Sprache in Text: Hallo und willkommen. In diesem Video werden
wir in Python eine schnelle
Spracherkennung erstellen. also zuallererst Was ist also zuallererst die Spracherkennung? Kurz gesagt, Spracherkennung
ist die Fähigkeit Wörter und Phrasen zu identifizieren, gesprochene Sprache zu identifizieren und in menschlich lesbaren Text
umzuwandeln. In diesem Video erstellen wir
eine Funktion, in der Sie
mit Hilfe der
Spracherkennungsbibliothek Sprache in Python einfach in Text konvertieren können . Diese Bibliothek bietet uns praktische Wrapper für verschiedene bekannte
Public Speech APIs wie Google Cloud Speech
API und IBM Speech to Text. Daher
müssen wir kein
maschinelles Lernmodell von Grund auf neu erstellen und manuell trainieren. Stattdessen werden wir einfach
unsere Sprach- und Spaltenmethode aufzeichnen und auf das Ergebnis warten. Um loszulegen. Zuerst müssen Sie
sicherstellen, Python 3
auf Ihrem Computer installiert ist. Zweitens müssen Sie die
Pi-Audiobibliothek für
das Aufnahmekunstwerk installieren . Leider
ist Audio nicht einfach zu installieren. Ich habe jedoch
eine Datei angehängt, um
Pi-Audio für diese V-Umgebungen
in Linux und Mac OS zu installieren Pi-Audio für diese V-Umgebungen . So können Sie den Leitfaden
für Ihre spezifische Umgebung folgen . Als Nächstes müssen wir die
Spracherkennungsbibliothek installieren. Dafür benutzen wir einfach BIM. Erstellen Sie also eine neue Datei
requirements.txt und
geben Sie den Paketnamen dort ein. Wir führen dann pip install dash R, requirements.txt aus, um das Paket
aus dem Internet zu
holen und auf unserem Computer zu
installieren. Es wird in ein paar Sekunden enden. Wie Sie sehen können, verwende ich
VS Code für diese Produkte. Vergewissern Sie sich, dass Sie auch Ihren
Lieblingseditor verwenden. Legen Sie nun die angehängte Vicodin nicht BY-Datei in den neuen
Ordner erstellt. Diese Datei
ist dafür verantwortlich,
unsere Sprache
vom Mikrofon aufzunehmen und als normale Audiodatei zu speichern
. Als Nächstes erstellen wir
die Python-Datei wird Sprache in Text konvertiert. Wir importieren zunächst
die Bibliothek, die wir gerade installiert haben, eine wichtige
aufgezeichnete Gewalt. Nun, dann initialisieren wir die Spracherkennungsinstanz. Danach machen wir
eine Funktion, die unser Mikrofon bis zum Ende
der Rede
aufzeichnet. Was bedeutet, bis es
eine Stille im Audio gibt. Dies erfolgt automatisch mit der Recode-Funktion. Zweitens erstellen wir eine
Audiodatei-Instanz. Und drittens laden wir
die Audiodatei mit
der Aufnahmemethode in
den Speicher. Und dann haben wir
die Audiodaten mit einer der
Erkennungsmethoden in
Text konvertiert . Wir bleiben vorerst bei der
Google-Nachricht erkennen , da sie die Google Speech API verwendet und
sie funktioniert sofort, sodass wir
keinen API-Schlüssel manuell erstellen müssen. Schließlich geben wir den
Text zurück, und das war's. Wir sind mit dem
Spracherkennungsteil
dieses Projekts fertig . Sie können dies testen, indem Sie einfach dieses gerade
erstellte Skript
ausführen.
3. Text in Sprache übersetzen: Hallo und willkommen
zu diesem Tutorial. In diesem Video
werden wir
eine Python-Funktion erstellen , um die Sprachsynthese
entweder online oder offline
durchzuführen . Wenn Sie nicht wissen, was
Sprachsynthese ist, wird
sie oft als Text-to-Speech bezeichnet
. Es konvertiert im Grunde Text in menschenähnliche
Sprache, Audio. Um loszulegen, müssen
wir die notwendigen
Bibliotheken für diese Aufgabe installieren. Erstens die TTS-Bibliothek, die für
Google Text-to-Speech steht. Es ist eine Python-Bibliothek
zur Schnittstelle mit Glukose übersetzt
Text in Sprach-API und erfordert eine
Internetverbindung. Auf der anderen Seite ist
PYT als X3 eine
Text-zu-Sprachkonvertierungs-Bibliothekarin, die nach in Ihrem
Betriebssystem
vorinstallierten TTS-Engines
sucht und diese verwendet. Es verwendet Microsoft Speech API für jene ns-Sprachsynthesizer für Mac OS und E
sprechen für einen Menschen einigen anderen
Linux-Distributionen. Schließlich verwenden wir
die
Play-Sound-Library einfach zum
Abspielen von Audio-Vials. Lasst uns sie installieren. Lassen Sie uns jetzt in den Code eintauchen. Wie üblich
importieren wir zunächst die Bibliotheken. Dann initialisieren wir die
Text-zu-Speech-Engine. Danach machen wir
unsere Funktion, die den Modus
akzeptiert, der auch Wert
annimmt. Und der boolesche
Remote-Audiowert, der angibt, ob
die resultierende Audiodatei von
der Festplatte entfernt werden soll, um die
Standardparameter nach Belieben zu ändern. Der Modus ist also online, dann verwenden Sie die
Text-zu-Sprachbibliothek, um die API-Anfrage zu stellen
und die Sprache
der resultierenden
Audiodatei auf die Festplatte zu empfangen . Wir spielen dann den Ton mit
dem Ort unserer Funktion ab. Und schließlich entfernen wir
die Audiodatei. Wenn „Audio entfernen boolean“ auf „true“ ist. Wenn der Modus jedoch offline ist, verwenden
wir einfach unsere
Offline-Engine und übergeben den Text an dieselbe Methode und
führen
die Run- und
Wartemethode aus, um das Audio abzuspielen. Und wir sind fertig. Testen wir das mal. Python ist eine großartige
Programmiersprache. Lassen Sie uns nun den Online-Modus verwenden. Lass es uns laufen lassen. Python ist eine
großartige Programmiersprache.
4. Generiere AI: Hallo und willkommen zu diesem Video. In diesem Tutorial
lernen Sie, wie Sie
Konversationsantworten generieren können.
Im Deep Learning. Wir werden den
Hugging Face Transformator
is Library verwenden , um das vortrainierte gelbe
GPT-Modell zu verwenden, um KI-Chatbots zu erstellen. Also zuerst, was ist der LGBT? Nun, das LGBT ist ein
groß abstimmbares, einjähriges
Modell zur Generierung von
Konversationsantworten , das für
147 Millionen
Gespräche trainiert wurde , die
von den Reddit-Websites extrahiert wurden . Es hat fast die
gleiche Architektur wie das berühmte
GPT-2-Transformatormodell mit sehr wenigen Änderungen. In Ordnung, um loszulegen, installieren
wir die Bibliotheken
für dieses Tutorial. Lassen Sie uns zuerst Vital installieren. Es ist ein
Deep-Learning-Framework in Python und es ist ohnehin erforderlich, um Transformatoren
auszuführen. Zweitens installieren wir die neueste Version der
Transformers-Library. Es bietet uns eine praktische
API, die uns
viele vortrainierte Modelle zur Verfügung stellt, um verschiedene
Deep-Learning-Aufgaben
wie Texterzeugung,
Zusammenfassung,
Übersetzung und vieles mehr
auszuführen wie Texterzeugung, . Wir werden es zum Laden
des gelben GPT-Modells verwenden und Inferenz-Festkörper
ausführen. Lasst uns sie installieren. Da ich es bereits installiert habe, wird
es in meinem Fall nicht
lange dauern. kann es jedoch einige
Sekunden bis mehrere Minuten dauern Abhängig von der Geschwindigkeit Ihrer
Internetverbindung kann es jedoch einige
Sekunden bis mehrere Minuten dauern. Jetzt fangen wir an, unseren Chat-Bot
zu erstellen. Erstellen wir zuerst
die Python-Datei und importieren die soeben installierten Bibliotheken
. Dann geben Sie den
genauen Modellnamen an, der geladen werden soll. Es gibt drei verschiedene
Größen des gelben GPT-Modells. Ich gehe auf die große
Version des Modells. Fühlen Sie sich frei, einen von ihnen zu benutzen
. Bitte beachten Sie, dass
je kleiner das Modell ist, die schlechtesten
Reaktionsgenerationen sein werden. Das Modell wird
in den Speicher geladen. Wenn er also
nicht dein Gedächtnis hat, kannst
du eine kleinere Version verwenden. Laden wir nun das
Modell und den Tokenizer. Als Nächstes werden wir
einen Punkt ansprechen, der für die Generierung
der Chatbot-Antworten
verantwortlich ist . Diese Funktion benötigt
drei Argumente. Erstens der Eingabetext oder die Frage, die wir
schreiben oder produzieren. Zweitens, dieser Chat-Verlauf in Form einer
Liste von Token-IDs. Und schließlich der
Schritt des Chats. Wenn es 0 ist, dann ist es das erste
Mal, dass wir mit der Box schießen. Wir verwenden die Encode-Methode
im Tokenizer wandeln den Text in
eine Liste der Token-ID um. So
kann das neuronale Netzwerk verstehen. Wir hängen den Text auch mit
dem Token zum Satzende an. Wir übergeben PT, um Tensoren zurückzugeben, um die Tensoren
als PyTorch-Tensor zurückzugeben. Danach verketten wir die Eingabe-IDs mit dem
Chat-Verlauf, falls vorhanden. Und dann generieren wir
die Chat-Antwort unter Umgehung der Eingabe-IDs für
die Methode zur Modellgenerierung. maximale Längenparameter ist die maximale Länge
der Rückantwort. Wir verwenden ein
Unterstrich-Beispiel, um aus einer Distribution zu proben. Anstatt die gierige Suche zu verwenden, übergeben
wir 102 top k. Daher wird
die generierte Methode aus
den 100 besten
Kandidaten-Token, aus denen ausgewählt werden soll. Wir haben gesagt, dass
Temperatur 2,7. Aber du kannst nach Belieben optimieren. Senkung der
Temperatur verringert die Wahrscheinlichkeit, Wörter
mit geringer Wahrscheinlichkeit auszuwählen, und erhöht daher
die Wahrscheinlichkeit Wörter mit hoher Wahrscheinlichkeit ausgewählt werden. Wenn Sie es auf 0 setzen,
wählen Sie in jedem Schritt immer das höchstwahrscheinliche
Wort aus. Übrigens sollten Sie
vorsichtig sein, wenn Sie
die Temperatur optimieren. Wenn Sie es an
einen höheren Wert senden, sehen
Sie eine völlig
zufällige Generierung. Wie auch immer, es gibt viele
Parameter,
die bei der generierten Methode eingestellt werden müssen. Ich schlage Ihnen dringend vor,
diesen Blogbeitrag aus dem Hugging Face Blog zu lesen, um
mehr über die Parameter zu erfahren. Sie können
die offizielle Dokumentation auch ablehnen , um einige andere
Parameter
anzuzeigen, die Sie verwenden können. Kehre in die Funktion zurück. Wir haben endlich den
Code, der
Teile des Jobverlaufs generiert Teile des Jobverlaufs und ihn auch mit dem
Chat-Verlauf zurückgeben. Lassen Sie uns als Nächstes diese Funktion verwenden
, um mit unseren Bugs zu schließen. N Schritte sind die
Häufigkeit , mit denen wir
mit unseren Welten beurteilen wollen. Wir durchlaufen die
Anzahl der Schritte. Dann fordern wir den
Benutzer einfach zur Eingabe des Eingabetexts auf. Schließlich nutzen wir unsere
Funktion, um
das Endhirn zu erzeugen das Endhirn , das es ausführt. Lassen Sie uns etwas Zeit geben, um
das Modell zu laden . Und da gehst du. Jetzt können wir anfangen,
mit einer Tafel zu sprechen. Das erste Mal. Es
wird einige Zeit dauern. Und das ist von den Knospen. Wie Sie sehen können, leistet das einen großartigen Job,
um auf meine Fragen antworten und mit
guten und relevanten Antworten zu antworten.
5. Alles kombinieren und den Assistenten aufbauen: Willkommen zu diesem Tutorial. In diesem Video werden wir alles, was wir in den vorherigen Videos
erstellt haben,
zu einer
einzigen Python-Datei kombinieren . Wie wir in der Einleitung gesehen haben, besteht
der Gesamtprozess darin, dass wir
zunächst den Text
des Benutzers durch
Spracherkennung erhalten . Zweitens passen wir den Text an das Tafelmodell an, um eine Antwort zu
erzeugen. Schließlich konvertieren wir die
Antwort von Texten, Sprache und Sprachsynthese. Lassen Sie uns den Hauptstapel erstellen und die Funktionen importieren wir in den
vorherigen Tutorials erstellt haben. Wir geben an oft wir unseren Chat-Bot
schließen möchten. Um aufzuhören zu sprechen. Wir benachrichtigen den Benutzer, damit wir
wissen, wann wir aufhören müssen zu sprechen. Wir wandeln unsere Rede
in Text um und drucken sie aus. Als nächstes generieren wir die
Antwort von der Chatstimme
und führen eine Sprachsynthese und führen eine Sprachsynthese , um eine menschenähnliche Rede zu erzeugen. Lass es uns laufen lassen. Sprechen Sie bitte. Hallo, was ist dein
Lieblingsbuch? Es ist schwer zu wählen.
Also schätze ich, ich müsste das Buch
des Lebens von Marina sagen. Sprechen Sie bitte. Oh cool. Siehst du dir Filme an? Sieh dir heutzutage seine Filme an. Sprechen Sie bitte. Oh, du magst keine
Actionfilme. Was ist mit dir? Kein Fan von Actionfilmen, aber ich bin ein begeisterter Gamer.
6. Outro und weitere Arbeiten: Herzlichen Glückwunsch. Sie haben
erfolgreich die Erstellung eines Sprachchatbots oder eines
persönlichen Assistenten oder Sprachassistenten oder
wie auch immer Sie es nennen möchten, abgeschlossen. Ich möchte mich bei
Ihnen bedanken, dass Sie sich
den gesamten Kurs angesehen haben und
bei diesem Produkt bei mir waren. Bevor wir uns verabschieden, möchte
ich einige
der weiteren Arbeiten skizzieren, die Sie
leisten können , um
die Leistung
des gesamten Produkts weiter zu verbessern . Zuerst rufen Sie
Insert-Interpunktion in der
erkannten Sprache auf. Es gibt ein
Python-Paket von Drittanbietern namens Airport, das
Ihnen dabei hilft, dies einfach zu tun. Es verwendet ein vortrainiertes Modell für
maschinelles Lernen unter der Haube. Die gute Nachricht ist jedoch, dass
Sie
den Text nur an ihn weitergeben müssen und die unterbrochenen Texte
erhalten. Zweitens verwenden
wir, wie Sie vielleicht bereits
im
Spracherkennungsteil dieses Projekts wissen , eine inoffizielle API. Ich lade Sie ein,
das vortrainierte Modell Wave do vec to
0
für diesen Zweck zu verwenden . Und es ist ziemlich genau. Dieses Tutorial sollte dir helfen. Sie werden es
an dieses Video angehängt finden. Schließlich schlage ich vor, dass Sie
erneut mit
den Parametern in der
Modellpunkt-Methode herumspielen , die wir im
Chatbot-Tutorial gesehen haben. Ich bin sicher, dass Sie es
verbessern und
sicherstellen können , dass Sie die
Parameter mit uns teilen. Alles klar, wir haben das Ende
erreicht. Ich hoffe, dieses Projekt
war Ihnen hilfreich, bewerben Sie sich in Python auf echte Projekte und sehen
Sie in
einer anderen Welt.