Erstellen eines Voice AI Chatbot in Python | Abdou Rockikz | Skillshare
Suchen

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Erstellen eines Voice AI Chatbot in Python

teacher avatar Abdou Rockikz, Machine Learning, Python & Data

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      Einführung

      1:16

    • 2.

      Sprache in Text konvertieren

      4:34

    • 3.

      Text in die Sprache konvertieren

      4:44

    • 4.

      AI Antworten erstellen

      9:01

    • 5.

      Alles kombinieren und den Assistenten bauen

      3:09

    • 6.

      Outro & weitere Arbeiten

      1:48

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

289

Teilnehmer:innen

--

Projekte

Über diesen Kurs

In diesem Kurs erfahren Sie, wie du einen AI in Python mit mehreren Bibliotheken wie Transformatoren, PyTorch, SpeechRecognition und mehr machen kannst.

Anforderungen

Ein grundlegendes Level an Python Programmiersprache ist erforderlich. Du solltest auch mit der Installation von Python mit Pips vertraut sein.

Das wirst du lernen

Du wirst Folgendes erfahren:

  • Verwendung der SpeechRecognition zum Umwandeln von Sprache in Text in Python
  • Durchführung der Sprachsynthese (Text in Sprache konvertieren) in Python mit zwei Methoden: gTTS (online) und pyttsx3 (offline) Bibliotheken.
  • Loading Modelle in der transformers laden und Einleitung auf sie durchführen. Insbesondere laden wir das DialoGPT ein, um AI Conversational Responses zu generieren, ohne dass das Training von Grund auf neu oder feinjustiert werden muss.

Links erwähnt/in der Klasse gezeigt

Triff deine:n Kursleiter:in

Teacher Profile Image

Abdou Rockikz

Machine Learning, Python & Data

Kursleiter:in

I'm a self-taught Python programmer, passionate about Machine Learning, Deep Learning, and anything else that involves Data.

I've been programming for more than 5 years, I learned Python and I guess I'm stuck there forever. I have a Python programming educational website (thepythoncode.com) where I share my text-based tutorials, check them out!

I strongly believe that the best way to learn is to teach. As a result, I'm here to share with you my progress in learning and anything that I find interesting to share. 

Vollständiges Profil ansehen

Level: Intermediate

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

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.