Rasa ist ein Open-Source-Framework zur Erstellung von Konversations-KI und Chatbots. Wenn Sie Ihr erstes Projekt in Rasa konfigurieren möchten, sind Sie bei uns genau richtig. In diesem Blog werde ich Schritt für Schritt ein Rasa-Projekt von Grund auf aufbauen.
Was ist Rasa?
Bevor wir uns darauf einlassen, klären wir zunächst, was Rasa ist. Rasa besteht aus zwei Hauptkomponenten:
Rasa Open Source: Ein Framework für den Aufbau von Natural Language Understanding (NLU) und Dialogmanagement.
Rasa X: Ein Tool zur Verbesserung und Verwaltung Ihres Assistenten im Laufe der Zeit.
Rasa ist in Python geschrieben und ermöglicht eine flexible Anpassung, was es zu einer beliebten Wahl unter Entwicklern macht.
Voraussetzungen
Um Rasa einzurichten, benötigen Sie:
Python 3.8 oder 3.9 (Rasa unterstützt derzeit 3.10 nicht)
pip (Python-Paketmanager)
Virtuelle Umgebung (optional, aber empfohlen)
Kenntnisse mit Python und der grundlegenden Verwendung der Befehlszeile sind hilfreich, aber nicht erforderlich.
Schritt 1: Python installieren und virtuelle Umgebung erstellen
- Python herunterladen:
- Gehen Sie zur Python-Website und laden Sie Python 3.8 oder 3.9 herunter.
-
Erstellen Sie eine virtuelle Umgebung: Durch die Verwendung einer virtuellen Umgebung bleiben Ihre Rasa-Projektabhängigkeiten von Ihrem globalen Python-Setup isoliert.
python -m venv venv
Quelle venv/bin/activate
Schritt 2: Rasa installieren
-
Rasa über pip installieren:
pip install rasa
- Überprüfen Sie die Installation:
rasa --version
Sie sollten die Rasa-Version und die Python-Version angezeigt sehen.
Schritt 3: Erstellen Sie Ihr erstes Rasa-Projekt
Jetzt erstellen wir Ihr Rasa-Projekt:
-
Führen Sie den folgenden Befehl aus:
rasa init
- Folgen Sie den Anweisungen:
-
Rasa richtet ein neues Projektverzeichnis mit folgender Struktur ein:
mein_Projekt/
├── Aktionen/
├── Daten/
├── Modelle/
├── Tests/
├── config.yml
├── credentials.yml
├── domain.yml
└── endpoints.yml Wir werden aufgefordert, ein Modell zu trainieren und Ihren Assistenten zu testen. Probieren Sie es aus!
Schritt 4: Verstehen Sie die Schlüsseldateien in Rasa
Hier ist eine Aufschlüsselung der Schlüsseldateien in Ihrem Projekt:
domain.yml: Definiert die Persönlichkeit, Absichten, Antworten und Entitäten Ihres Bots.
data/nlu.yml: Enthält Trainingsbeispiele für die Absichtserkennung.
data/stories.yml: Definiert Konversationsflüsse, um das Dialogmodell zu trainieren.
config.yml: Gibt die Machine-Learning-Pipeline für die Absichtsklassifizierung und Entitätserkennung an.
endpoints.yml: Konfiguriert, wo externe Dienste (z. B. Aktionsserver) zu finden sind.
credentials.yml: Konfiguriert Integrationen von Drittanbietern wie Slack oder Telegram.
Schritt 5: Trainieren Sie Ihr Rasa-Modell
-
Verwenden Sie den folgenden Befehl, um Ihren Assistenten zu schulen, falls er noch nicht geschult ist:
Rasa-Zug
- Dadurch wird eine Modelldatei im Verzeichnis models/ generiert, die Ihren Chatbot mit Strom versorgt!
Schritt 6: Testen Sie Ihren Assistenten
-
Testen Sie Ihren Assistenten vor Ort:
Rasa-Muschel
- Geben Sie einige Nachrichten ein, um zu sehen, wie der Assistent reagiert. Zum Beispiel:
> Hi Hello! <br> Hey! How are you?<br>
Schritt 7: Benutzerdefinierte Aktionen hinzufügen
Möchten Sie, dass Ihr Bot Aktionen wie das Abrufen von Daten von einer API ausführt? Fügen Sie benutzerdefinierte Aktionen hinzu!
Öffnen Sie das Verzeichnis „actions/“ und erstellen Sie eine Python-Datei (z. B. „actions.py“).
-
Schreiben Sie Ihre benutzerdefinierte Aktion:
aus rasa_sdk-Importaktion
aus rasa_sdk.executor import CollectingDispatcherKlasse ActionHelloWorld(Action):
def name(self):
gib „action_hello_world“ zurückdef run(self, dispatcher, tracker, domain): dispatcher.utter_message(text="Hello, world!") return []
- Aktualisieren Sie domain.yml, um Ihre Aktion einzuschließen:
Aktionen:
- action_hello_world
- Aktionsserver starten:
rasa run-Aktionen
Referenzen?
Offizielle Rasa-Dokumentation
Python-Download
Virtualenv-Dokumentation
Viel Spaß beim Codieren
Das obige ist der detaillierte Inhalt vonEinrichten Ihres ersten Rasa-Projekts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Durch die folgenden Schritte können mehrdimensionale Arrays mit Numpy erstellt werden: 1) Verwenden Sie die Funktion numpy.array (), um ein Array wie NP.Array ([1,2,3], [4,5,6]) zu erstellen, um ein 2D-Array zu erstellen; 2) Verwenden Sie np.zeros (), np.ones (), np.random.random () und andere Funktionen, um ein Array zu erstellen, das mit spezifischen Werten gefüllt ist; 3) Verstehen Sie die Form- und Größeneigenschaften des Arrays, um sicherzustellen, dass die Länge des Unterarrays konsistent ist und Fehler vermeiden. 4) Verwenden Sie die Funktion np.reshape (), um die Form des Arrays zu ändern. 5) Achten Sie auf die Speichernutzung, um sicherzustellen, dass der Code klar und effizient ist.

SendeminnumpyissamethodtoperformoperationsonarraysofdifferentShapesByAutomaticaligningTHem.itsimplifiesCode, Verbesserung der Verschiebbarkeit, und BoostSPerformance.her'Showitworks: 1) kleinereArraysArepaddedwithonestOMatchDimens.2) compatibledimens

Forpythondatastorage, ChooselistsforflexibilitätswithmixedDatatypes, Array.Arrayformemory-effizientesHomogenoususnumericalData und NumpyArraysForAdvancedNumericalComputing.ListsareversAntileffictionForLarGenicalDataSetsetaSets;

In Artikel wird die Unmöglichkeit des Tupelverständnisses in Python aufgrund von Syntax -Mehrdeutigkeiten erörtert. Alternativen wie die Verwendung von Tuple () mit Generatorausdrücken werden vorgeschlagen, um Tupel effizient zu erstellen (159 Zeichen)

Der Artikel erläutert Module und Pakete in Python, deren Unterschiede und Verwendung. Module sind einzelne Dateien, während Pakete Verzeichnisse mit einer __init__.py -Datei sind, die verwandte Module hierarchisch organisieren.

In Artikel werden Docstrings in Python, deren Nutzung und Vorteile erörtert. Hauptproblem: Bedeutung von DocStrings für die Code -Dokumentation und -zugriffsfunktion.

In Artikel werden Lambda -Funktionen, ihre Unterschiede zu regulären Funktionen und deren Nützlichkeit bei Programmierszenarien erläutert. Nicht alle Sprachen unterstützen sie.

In Artikel wird in Python Break, Fortsetzung und Pass erörtert, wobei ihre Rolle bei der Kontrolle der Ausführung und des Programmablaufs der Schleife erläutert wird.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.
