Migrieren von Language Understanding (LUIS) zu Conversational Language Understanding (CLU)
Conversational Language Understanding (CLU) ist ein cloudbasiertes KI-Angebot in Azure KI Language. Es ist die neueste Generation von Language Understanding (LUIS) und bietet Abwärtskompatibilität mit zuvor erstellten LUIS-Anwendungen. CLU verwendet modernste maschinelle Lernintelligenz, damit Benutzer ein benutzerdefiniertes Modell für das Verstehen von natürlicher Sprache erstellen können, um Absichten und Entitäten in unterhaltungsbezogenen Äußerungen vorherzusagen.
CLU bietet die folgenden Vorteile gegenüber LUIS:
- Verbesserte Genauigkeit mit modernsten Machine Learning-Modellen für bessere Absichtsklassifizierung und Entitätserkennung. LUIS erforderte mehr Beispiele, um bestimmte Konzepte in Absichten und Entitäten zu generalisieren, während das höher entwickelte maschinelle Lernen von CLU die Belastung für Kunden verringert, da deutlich weniger Daten erforderlich sind.
- Unterstützung für mehrere Sprachen für das Lernen und Trainieren von Modellen. Trainieren Sie Projekte in einer Sprache, und sagen Sie sofort Absichten und Entitäten in 96 Sprachen vorher.
- Einfache Integration mit unterschiedlichen Projekten für CLU und benutzerdefinierte Fragen und Antworten mithilfe von Orchestrierungsworkflows.
- Die Möglichkeit, Testdaten innerhalb der Oberfläche mithilfe von Language Studio und APIs für die Bewertung der Modellleistung vor der Bereitstellung hinzuzufügen.
Für den Einstieg können Sie ein neues Projekt erstellen oder Ihre LUIS-Anwendung migrieren.
Vergleich zwischen LUIS und CLU
Die folgende Tabelle stellt eine Gegenüberstellung als Vergleich zwischen den Features von LUIS und CLU dar. Sie hebt außerdem die Änderungen an Ihrer LUIS-Anwendung nach der Migration zu CLU hervor. Wählen Sie über die Links das entsprechende Konzept aus, um mehr über die Änderungen zu erfahren.
LUIS-Features | CLU-Features | Nach der Migration |
---|---|---|
Maschinell gelernte und strukturierte ML-Entitäten | Gelernte Entitätskomponenten | Maschinell gelernte Entitäten ohne Untereinheiten werden als CLU-Entitäten übertragen. Strukturierte ML-Entitäten übertragen nur Blattknoten (Untereinheiten der untersten Ebene, die keine eigenen Untereinheiten haben) als Entitäten in CLU. Der Name der Entität in CLU ist der Name der Untereinheit, verkettet mit dem übergeordneten Element. Beispiel: Bestellung.Grösse |
Listen, reguläre Ausdrücke und vordefinierte Entitäten | Listen, reguläre Ausdrücke und vordefinierte Entitätskomponenten | Listen, reguläre Ausdrücke und vordefinierte Entitäten werden in CLU als Entitäten übertragen, mit einer aufgefüllten Entitätskomponente, die auf dem Entitätstyp basiert. |
Pattern.Any -Entitäten |
Derzeit nicht verfügbar | Pattern.Any -Entitäten werden entfernt. |
Einzelne Kultur für jede Anwendung | Mehrsprachige Modelle ermöglichen mehrere Sprachen für jedes Projekt. | Die primäre Sprache Ihres Projekts wird als Ihre LUIS-Anwendungskultur festgelegt. Ihr Projekt kann trainiert werden, um es auf verschiedene Sprachen zu erweitern. |
Entitätsrollen | Rollen sind nicht mehr erforderlich. | Entitätsrollen werden als Entitäten übertragen. |
Einstellungen für: Normalisieren von Interpunktion, Normalisieren von diakritischen Zeichen, Normalisieren von Wortformen, Verwenden aller Trainingsdaten | Einstellungen sind nicht mehr erforderlich. | Es werden keine Einstellungen übertragen. |
Features für Muster und Ausdruckslisten | Features für Muster und Ausdruckslisten sind nicht mehr erforderlich. | Features für Muster und Ausdruckslisten werden nicht übertragen. |
Entitätsfeatures | Entitätskomponenten | Listen oder vordefinierte Entitäten, die einer Entität als Features hinzugefügt wurden, werden als hinzugefügte Komponenten zu dieser Entität übertragen. Entitätsfeatures werden für Absichten nicht übertragen. |
Absichten und Äußerungen | Absichten und Äußerungen | Alle Absichten und Äußerungen werden übertragen. Äußerungen werden mit ihren übertragenen Entitäten gekennzeichnet. |
Anwendungs-GUIDs | Projektnamen | Für jede zu migrierende Anwendung wird ein Projekt mit dem Namen der Anwendung erstellt. Alle Sonderzeichen in Anwendungsnamen werden in CLU entfernt. |
Versionsverwaltung | Für jeden Trainingsdurchgang wird ein Modell erstellt und fungiert als Version Ihres Projekts. | Für die ausgewählte Anwendungsversion wird ein Projekt erstellt. |
Auswertung mithilfe von Batchtests | Auswertung mithilfe von Testsets | Das Hinzufügen Ihres Testdatensatzes ist erforderlich. |
Rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) für LUIS-Ressourcen | Rollenbasierte Zugriffssteuerung (RBAC) ist für Sprachressourcen verfügbar | Die RBAC einer Sprachressource muss nach der Migration manuell hinzugefügt werden. |
Einzeltrainingsmodus | Standard- und erweiterte Trainingsmodi | Nach der Anwendungsmigration ist Training erforderlich. |
Zwei Veröffentlichungsplätze und Versionsveröffentlichung | Zehn Bereitstellungsplätze mit benutzerdefinierter Benennung | Nach der Migration und dem Training der Anwendung ist Bereitstellung erforderlich. |
LUIS-Erstellungs-APIs und SDK-Unterstützung in .NET, Python, Java und Node.js | CLU-Erstellungs-REST-APIs. | Weitere Informationen zu den CLU-Erstellungs-APIs finden Sie im Schnellstartartikel. Refactoring ist erforderlich, um die CLU-Erstellungs-APIs zu verwenden. |
LUIS-Runtime-APIs und SDK-Unterstützung in .NET, Python, Java und Node.js | CLU-Runtime-APIs. CLU-Runtime SDK-Unterstützung für .NET und Python. | Weitere Informationen finden Sie unter Aufrufen der API. Refactoring ist erforderlich, um die Antwort der CLU-Runtime-API zu verwenden. |
Migrieren Ihrer LUIS-Anwendungen
Verwenden Sie die folgenden Schritte, um Ihre LUIS-Anwendung entweder mithilfe des LUIS-Portals oder der REST-API zu migrieren.
Migrieren Ihrer LUIS-Anwendungen mithilfe des LUIS-Portals
Führen Sie diese Schritte aus, um mit der Migration mithilfe des LUIS-Portals zu beginnen:
Nachdem Sie sich beim LUIS-Portal angemeldet haben, klicken Sie oben auf dem Bildschirm auf die Schaltfläche, um den Migrations-Assistenten zu starten. Die Migration kopiert lediglich Ihre ausgewählten LUIS-Anwendungen in CLU.
Auf der Registerkarte „Migrationsübersicht“ finden Sie eine kurze Erläuterung von Conversational Language Understanding und seiner Vorteile. Drücken Sie „Weiter“, um fortzufahren.
Bestimmen Sie die Sprachressource, zu der Sie Ihre LUIS-Anwendung migrieren möchten. Wenn Sie Ihre Language-Ressource bereits erstellt haben, wählen Sie Ihr Azure-Abonnement, Ihre Sprachressource und dann Weiter aus. Wenn Sie nicht über eine Sprachressource verfügen, klicken Sie auf den Link, um eine neue Sprachressource zu erstellen. Wählen Sie danach die Ressource und erneut Weiter aus.
Wählen Sie alle Luis-Anwendungen aus, die Sie migrieren möchten, und geben Sie jede ihrer Versionen an. Wählen Sie Weiter aus. Nachdem Sie Ihre Anwendung und Version ausgewählt haben, wird Ihnen eine Meldung angezeigt, die Sie über alle Features informiert, die nicht aus Ihrer LUIS-Anwendung übertragen werden.
Überprüfen Sie die Auswahl ihrer Sprachressource und LUIS-Anwendungen. Wählen Sie Fertig stellen aus, um Ihre Anwendungen zu migrieren.
In einem Popupfenster können Sie den Migrationsstatus Ihrer Anwendungen nachverfolgen. Anwendungen, deren Migration noch nicht begonnen wurde, haben den Status Nicht gestartet. Anwendungen, deren Migration begonnen hat, weisen den Status In Bearbeitung auf, und sobald ihre Migration abgeschlossen ist, lautet der Status Erfolgreich. Für eine Anwendung mit dem Status Fehler müssen Sie den Migrationsvorgang wiederholen. Nachdem die Migration für alle Anwendungen abgeschlossen wurde, wählen Sie Fertig aus.
Nachdem Ihre Anwendungen migriert wurden, können Sie die folgenden Schritte ausführen:
Häufig gestellte Fragen
Welche LUIS JSON-Version wird von CLU unterstützt?
CLU unterstützt für die Modellierung die JSON-Version 7.0.0. Wenn das JSON-Format älter ist, muss es zuerst in LUIS importiert werden und dann mit der neuesten Version aus LUIS exportiert werden.
Wie unterscheiden sich Entitäten in CLU?
In CLU kann eine einzelne Entität mehrere Entitätskomponenten aufweisen, die verschiedene Methoden für die Extraktion darstellen. Diese Komponenten werden dann mithilfe von Regeln kombiniert, die Sie definieren können. Dies sind die verfügbaren Komponenten:
- Erlernt: Bezeichnungen werden äquivalent zu ML-Entitäten in LUIS zum Trainieren eines Machine Learning-Modells verwendet, um eine Entität auf der Grundlage von Inhalt und Kontext der angegebenen Bezeichnungen vorherzusagen.
- Liste: Genau wie Listenentitäten in LUIS stimmen Listenkomponenten genau mit einer Reihe von Synonymen überein und ordnen sie einem normalisierten Wert namens Listenschlüssel zu.
- Vordefiniert: Mithilfe von vordefinierten Komponenten können Sie eine Entität mit den vordefinierten Extraktoren für allgemeine Typen definieren, die sowohl in LUIS als auch in CLU verfügbar sind.
- RegEx: RegEx-Komponenten verwenden reguläre Ausdrücke, um benutzerdefinierte definierte Muster zu erfassen, genau wie RegEx-Entitäten in LUIS.
Entitäten in LUIS werden als Entitäten desselben Namens in CLU übertragen, wobei auch die gleichbedeutenden Komponenten übertragen werden.
Nach der Migration werden Ihre strukturierten Machine Learning-Blattknoten und untersten Unterentitäten auf das neue CLU-Modell übertragen, während alle übergeordneten Entitäten und Entitäten auf höherer Ebene ignoriert werden. Der Name der Entität ist der Name der Entität auf der untersten Ebene, der mit seiner übergeordneten Entität verkettet ist.
Beispiel:
LUIS-Entität:
- Pizzabestellung
- Belag
- Size
Migrierte LUIS-Entität in CLU:
- Pizzabestellung.Belag
- Pizzabestellung.Grösse
Ebenso wenig können zwei verschiedene Entitäten in CLU mit der gleichen Zeichenspanne bezeichnet werden. Erlernte Komponenten in CLU schließen sich gegenseitig aus und bieten keine überlappenden Vorhersagen nur für erlernte Komponenten. Beim Migrieren Ihrer LUIS-Anwendung wird für sich überschneidende Entitätsbezeichnungen die längste Bezeichnung beibehalten, und alle anderen werden ignoriert.
Weitere Informationen zu Entitätskomponenten finden Sie unter Entitätskomponenten.
Wie werden Entitätsrollen in CLU übertragen?
Ihre Rollen werden zusammen mit ihren bezeichneten Ausdrücken als einzelne Entitäten übertragen. Der Entitätstyp jeder Rolle bestimmt, welche Entitätskomponente aufgefüllt wird. Beispielsweise wird eine Listenentitätsrolle als Entität mit demselben Namen wie die Rolle und einer aufgefüllten Listenkomponente übertragen.
Wie werden Entitätsfeatures in CLU übertragen?
Entitäten, die als Features für Absichten verwendet werden, werden nicht übertragen. Entitäten, die als Features für andere Entitäten verwendet werden, bewirken die Auffüllung der relevanten Komponente der Entität. Wenn beispielsweise eine Listenentität mit dem Namen SizeList als Feature für eine Machine Learning-Entität Size verwendet wurde, wird die Size-Entität in CLU übertragen, und die Listenwerte von SizeList werden ihrer Listenkomponente hinzugefügt. Dasselbe gilt für vordefinierte und RegEx-Entitäten.
Wie unterscheiden sich Konfidenzbewertungen von Entitäten in CLU?
Jede extrahierte Entität weist eine Konfidenzbewertung von 100 % auf; daher sollten Konfidenzbewertungen von Entitäten nicht verwendet werden, um Entscheidungen unter Entitäten zu treffen.
Inwiefern unterstützt Conversational Language Understanding mehrere Sprachen?
Conversational Language Understanding projiziert zustimmende Äußerungen in verschiedene Sprachen. Darüber hinaus können Sie Ihr Modell in einer Sprache trainieren und es dann erweitern, um Vorhersagen in anderen Sprachen zu treffen.
Beispiel:
Trainingsäußerung (Englisch): How are you?
Beschriftete Absicht: Begrüßung
Laufzeitäußerung (Französisch): Comment ça va?
Vorhergesagte Absicht: Begrüßung
Inwiefern ist die Genauigkeit von CLU höher als die von LUIS?
CLU verwendet modernste Modelle, um die Leistung des maschinellen Lernens verschiedener Modelle der Absichtsklassifizierung und Entitätsextraktion zu verbessern.
Diese Modelle sind gegenüber kleineren Abweichungen unempfindlich, wodurch die Notwendigkeit für die folgenden Einstellungen entfällt: Normalize punctuation (Interpunktion normalisieren), normalize diacritics (Diakritische Zeichen normalisieren), normalize word form (Wortformen normalisieren) und use all training data (Alle Trainingsdaten verwenden).
Darüber hinaus unterstützen die neuen Modelle keine Ausdruckslistenfeatures, da sie keine zusätzlichen Informationen mehr vom Benutzer benötigen, um für eine bessere Genauigkeit semantisch ähnliche Wörter bereitzustellen. Muster wurden außerdem verwendet, um eine verbesserte Absichtsklassifizierung mithilfe regelbasierter Abgleichstechniken zu bieten, die im neuen Modellparadigma nicht erforderlich sind. Unter der nachstehenden Frage ist dies ausführlicher erläutert.
Wie gehe ich vor, wenn die von mir in LUIS verwendeten Features nicht mehr vorhanden sind?
Es gibt eine Reihe von Features, die in LUIS vorhanden waren und in CLU nicht mehr verfügbar sind. Dazu zählt die Möglichkeit, Feature-Engineering zu betreiben, Muster- und pattern.any-Entitäten sowie strukturierte Entitäten zu verwenden. Wenn Sie in LUIS Abhängigkeiten zu diesen Features hatten, verwenden Sie die folgende Anleitung:
Muster: Muster wurden in LUIS hinzugefügt, um die Absichtsklassifizierung durch das Definieren von Vorlagenäußerungen für reguläre Ausdrücke zu unterstützen. Dies schloss die Möglichkeit ein, Absichten nur mit Mustern zu definieren (ohne Beispieläußerungen). CLU ist in der Lage, unter Nutzung der modernsten Modelle zu generalisieren. Sie können ein paar Ausdrücke angeben, die mit einem bestimmten Muster für die Absicht in CLU übereinstimmen, und es ist wahrscheinlich imstande, die verschiedenen Muster als oberste Absicht zu klassifizieren, ohne dass eine Mustervorlagen-Äußerung erforderlich ist. Dadurch wird die Anforderung zum Formulieren dieser Muster vereinfacht, die in LUIS eingeschränkt war, und bietet eine bessere Absichtsklassifizierungserfahrung.
Ausdruckslistenfeatures: Die Fähigkeit zum Zuordnen von Merkmalen diente vor allem dazu, die Klassifizierung von Absichten zu unterstützen, indem die wichtigsten zu verwendenden Elemente/Merkmale hervorgehoben wurden. Dies ist nicht mehr erforderlich, da die tiefen Modelle, die in CLU verwendet werden, bereits die Möglichkeit besitzen, die in der Sprache inhärenten Elemente zu erkennen. Das Entfernen dieser Features wirkt sich wiederum nicht auf die Klassifizierungsfähigkeit des Modells aus.
Strukturierte Entitäten: Die Möglichkeit, strukturierte Entitäten zu definieren, hatte hauptsächlich den Zweck, eine mehrstufige Analyse von Ausdrücken zu ermöglichen. Mit den unterschiedlichen Möglichkeiten der Unterentitäten wurden in LUIS alle verschiedenen Kombinationen von Entitäten benötigt, damit sie als Beispiele definiert und dem Modell präsentiert werden konnten. In CLU werden diese strukturierten Entitäten nicht mehr unterstützt, da sich überschneidende erlernte Komponenten nicht unterstützt werden. Es gibt einige mögliche Ansätze zur Behandlung dieser strukturierten Extraktionen:
- Nicht mehrdeutige Extraktionen: In den meisten Fällen reicht die Erkennung der Blattentitäten aus, um die erforderlichen Elemente innerhalb einer vollständigen Spanne zu verstehen. Beispielsweise können strukturierte Entitäten wie Trip (Reise), die eine Quelle und ein Ziel (von London nach New York oder von Zuhause zum Büro) vollständig abdecken, mit den einzelnen Spannen erkannt werden, die für Quelle und Ziel vorhergesagt werden. Ihr Vorhandensein als einzelne Vorhersagen setzt Sie über die Entität Trip (Reise) in Kenntnis.
- Mehrdeutige Extraktionen: Wenn die Grenzen verschiedener Unterentitäten nicht sehr klar sind. Zur Veranschaulichung kann das Beispiel dienen „Ich möchte eine Pepperoni-Pizza und eine extra Käse vegetarische Pizza bestellen“. Während die verschiedenen Pizzatypen sowie die Belagänderungen extrahiert werden können, hätte die Extraktion ohne Kontext einen gewissen Grad an Mehrdeutigkeit, wo der zusätzliche Käse hinzugefügt werden soll. In diesem Fall ist der Umfang der Spanne kontextbasiert und würde die Bestimmung durch ML erfordern. Für mehrdeutige Extraktionen können Sie einen der folgenden Ansätze verwenden:
- Kombinieren Sie Unterentitäten zu verschiedenen Entitätskomponenten innerhalb derselben Entität.
Beispiel:
LUIS-Implementierung:
- Pizzabestellung (Entität)
- Größe (Unterentität)
- Menge (Unterentität)
CLU-Implementierung:
- Pizzabestellung (Entität)
- Größe (Listenentitätskomponente: klein, mittel, groß)
- Menge (vordefinierte Entitätskomponente: Zahl)
In CLU würden Sie die gesamte Spanne für Pizzabestellung einschließlich Größe und Menge mit einer Bezeichnung versehen, wodurch die Pizzabestellung mit einem Listenschlüssel für Größe und einem Zahlenwert für Menge im gleichen Entitätsobjekt zurückgegeben würde.
- Für komplexere Probleme, bei denen Entitäten mehrere Tiefenebenen enthalten, können Sie für jede Tiefenebene ein Projekt in der Entitätsstruktur erstellen. Dies gibt Ihnen die folgenden Optionen:
- Übergeben der Äußerung an jedes Projekt.
- Kombinieren der Analysen der einzelnen Projekte in der Phase, die CLU vorausgeht.
Ein ausführliches Beispiel zu diesem Konzept finden Sie unter den Pizzabeispielprojekten, die auf GitHub verfügbar sind.
Wie erfolgt die Versionsverwaltung in CLU?
CLU speichert die Datenressourcen, die zum Trainieren Ihres Modells verwendet werden. Sie können die Ressourcen eines Modells jederzeit exportieren oder sie wieder in das Projekt laden. Modelle fungieren also als verschiedene Versionen Ihres Projekts.
Sie können Ihre CLU-Projekte mithilfe von Language Studio oder programmgesteuert exportieren und verschiedene Versionen der Ressourcen lokal speichern.
Warum unterscheidet sich die CLU-Klassifizierung von LUIS? Wie funktioniert die „None“-Klassifizierung?
CLU verwendet einen anderen Ansatz zum Trainieren von Modellen, bei dem Mehrfachklassifizierung anstelle von binärer Klassifizierung zum Einsatz kommt. Daher unterscheidet sich die Interpretation von Bewertungen, auch zwischen verschiedenen Trainingsoptionen. Während Sie wahrscheinlich bessere Ergebnisse erzielen, müssen Sie den Unterschied in den Bewertungen berücksichtigen und einen neuen Schwellenwert für das Akzeptieren von Absichtsvorhersagen bestimmen. Einen Schwellenwert für die „None“-Absicht können Sie Ihren Projekteinstellungen auf einfache Weise hinzufügen. Dadurch wird None als oberste Absicht zurückgegeben, wenn die oberste Absicht den angegebenen Schwellenwert für die Konfidenzbewertung nicht überschritten hat.
Benötige ich für CLU-Modelle mehr Daten als für LUIS?
Die neuen CLU-Modelle haben ein besseres semantisches Verständnis von Sprache als in LUIS und unterstützen dadurch wiederum die Generalisierung von Modellen bei einer erheblichen Reduzierung der Daten. Sie sollten zwar nicht darauf abzielen, die Menge ihrer verfügbaren Daten zu reduzieren, jedoch können Sie im Vergleich zu LUIS in CLU eine bessere Leistung und Resilienz für Variationen und Synonyme erwarten.
Wenn ich meine LUIS-Apps nicht migriert habe, werden sie gelöscht?
Ihre vorhandenen LUIS-Anwendungen sind bis zum 1. Oktober 2025 verfügbar. Nach diesem Zeitpunkt können Sie diese Anwendungen nicht mehr verwenden, die Dienstendpunkte funktionieren nicht mehr, und die Anwendungen werden endgültig gelöscht.
Werden LU-Dateien in CLU unterstützt?
CLU unterstützt lediglich das JSON-Format. Sie können Ihre LU-Dateien in LUIS importieren und sie im JSON-Format exportieren, oder Sie können die oben genannten Migrationsschritte für Ihre Anwendung ausführen.
Welche Dienstgrenzwerte gelten für CLU?
Weitere Informationen finden Sie im Artikel zu den Diensteinschränkungen.
Muss ich für die Migration von LUIS zu CLU meinen Code umgestalten?
Die API-Objekte von CLU-Anwendungen unterscheiden sich von LUIS, und daher ist die Codeumgestaltung erforderlich.
Wenn Sie die programmgesteuerten LUIS- und Laufzeit-APIs verwenden, können Sie sie durch die entsprechenden APIs ersetzen.
CLU-Erstellungs-APIs: Anstelle der LUIS-spezifischen CRUD-APIs für einzelne Aktionen wie etwa Äußerung hinzufügen, Entität löschen und Absicht umbenennen bietet CLU eine Import-API, die den gesamten Inhalt eines Projekts mit dem gleichen Namen ersetzt. Wenn Ihr Dienst programmgesteuerte LUIS-APIs verwendet hat, um eine Plattform für andere Kunden bereitzustellen, müssen Sie dieses neue Designparadigma berücksichtigen. Alle anderen APIs wie Auflisten von Projekten, Training, Bereitstellen und Löschen sind verfügbar. APIs für Aktionen wie Importieren und Bereitstellen sind asynchrone Vorgänge anstelle von synchronen wie in LUIS.
CLU-Runtime-APIs: Die neue API-Anforderung und -Antwort enthält viele der gleichen Parameter, wie etwa Abfrage, Vorhersage, Top-Absicht, Absichten, Entitäten und deren Werte. Das CLU-Antwortobjekt bietet einen geradlinigeren Ansatz. Entitätsvorhersagen werden so angegeben, wie sie sich im Text der Äußerung finden, und alle zusätzlichen Informationen wie Auflösung oder Listenschlüssel werden in zusätzlichen Parametern mit der Bezeichnung extraInformation
und resolution
bereitgestellt.
Sie können das .NET- oder Python-CLU-Runtime-SDK verwenden, um das LUIS-Runtime-SDK zu ersetzen. Derzeit ist kein Erstellungs-SDK für CLU verfügbar.
Wie unterscheiden sich die Trainingszeiten in CLU? Wie unterscheidet sich Standardtraining vom erweiterten Training?
CLU bietet Standardtraining, das auf Englisch trainiert und lernt und mit den Trainingszeiten von LUIS vergleichbar ist. Es bietet darüber hinaus erweitertes Training, das eine erheblich längere Dauer in Anspruch nimmt, da es das Training auf alle anderen unterstützten Sprachen erweitert. Die Trainings-API ist weiterhin ein asynchroner Prozess, und Sie müssen die Änderung im DevOps-Prozess beurteilen, den Sie für Ihre Lösung verwenden.
Wie hat sich die Erfahrung in CLU im Vergleich zu LUIS verändert? Wie unterscheidet sich der Entwicklungslebenszyklus?
Der Lebenszyklus in LUIS besteht aus Erstellen-Trainieren-Testen-Veröffentlichen, während er in CLU aus Erstellen-Trainieren-Beurteilen-Bereitstellen-Testen besteht.
- Erstellen: In CLU können Sie Ihre Absichten, Entitäten und Ausdrücke definieren, bevor Sie trainieren. CLU bietet Ihnen darüber hinaus die Möglichkeit, Testdaten anzugeben, während Sie Ihre Anwendung erstellen, die für die Modellauswertung verwendet werden soll. Bei der Auswertung wird beurteilt, welche Leistung Ihr Modell mit den Testdaten erreicht, und Sie erhalten Metriken für Genauigkeit, Rückruf und F1.
- Trainieren: Sie erstellen bei jedem Training ein Modell mit einem Namen. Ein bereits trainiertes Modell kann überschrieben werden. Sie können entweder Standard- oder erweitertes Training angeben und bestimmen, ob Sie für die Beurteilung Ihre Testdaten oder einen prozentualen Anteil Ihrer Trainingsdaten verwenden möchten, die dann vom Training ausgeschlossen und als Testdaten verwendet werden. Nach dem Abschluss des Trainings können Sie beurteilen, wie gut Ihr Modell sich von außen macht.
- Bereitstellen: Nachdem das Training abgeschlossen wurde und Sie über ein Modell mit einem Namen verfügen, kann es für Vorhersagen bereitgestellt werden. Eine Bereitstellung wird ebenfalls benannt und weist ein zugewiesenes Modell auf. Sie können für dasselbe Modell mehrere Bereitstellungen nutzen. Eine Bereitstellung kann mit einem anderen Modell überschrieben werden, oder Sie können Modelle mit anderen Bereitstellungen im Projekt tauschen.
- Testen: Nachdem die Bereitstellung abgeschlossen ist, können Sie sie über den Bereitstellungsendpunkt für Vorhersagen verwenden. Darüber hinaus können Sie sie im Studio auf der Seite „Testbereitstellung“ testen.
Dieser Prozess steht im Gegensatz zu LUIS, wo die Anwendungs-ID an alles angefügt wurde, und Sie eine Version der Anwendung entweder in den Staging- oder den Produktionsplätzen bereitstellten.
Dies hat Auswirkungen auf die von Ihnen verwendeten DevOps-Prozesse.
Bietet CLU Containerunterstützung?
Nein, CLU kann nicht in Container exportiert werden.
Wie werden meine LUIS-Anwendungen nach der Migration in CLU benannt?
Alle Sonderzeichen in den LUIS-Anwendungsnamen werden entfernt. Wenn die Länge des bereinigten Namens 50 Zeichen überschreitet, werden die zusätzlichen Zeichen entfernt. Wenn der Name nach dem Entfernen von Sonderzeichen leer ist (z. B. wenn der Name der LUIS-Anwendung @@
war), lautet der neue Name unbenannt. Wenn bereits ein Conversational Language Understanding-Projekt mit demselben Namen vorhanden ist, wird die migrierte LUIS-Anwendung mit angefügten _1
für das erste Duplikat benannt und für jedes weitere Duplikat um 1 erhöht. Falls die Länge des neuen Namens 50 Zeichen beträgt und umbenannt werden muss, werden die letzten 1 oder 2 Zeichen entfernt, damit die Zahl verkettet und der Grenzwert von 50 Zeichen gewahrt werden kann.
Migration von LUIS Q&A
Wenn Sie Fragen haben, die in diesem Artikel nicht beantwortet wurden, geben Sie Ihre Fragen in unseren Microsoft Q&A-Thread ein.