Freigeben über


Planen Ihrer LUIS-App

Wichtig

LUIS wird am 1. Oktober 2025 eingestellt, und ab dem 1. April 2023 können Sie keine neuen LUIS-Ressourcen erstellen. Wir empfehlen die Migration Ihrer LUIS-Anwendungen zu Conversational Language Understanding, um fortgesetzte Produktunterstützung und mehrsprachige Funktionen zu erhalten.

Ein LUIS-App-Schema (Language Understanding) enthält Absichten und Entitäten, die für Ihr Sachgebiet (Motivdomäne) relevant sind. Die Absichten klassifizieren Benutzeräußerungen, und die Entitäten extrahieren Daten aus den Benutzeräußerungen. Absichten und Entitäten, die für Ihr Sachgebiet (Motivdomäne) relevant sind. Die Absichten klassifizieren Benutzeräußerungen.

Eine LUIS-App lernt und arbeitet am effizientesten, wenn Sie sie iterativ entwickeln. Dies ist ein typischer Iterationszyklus:

  1. Erstellen einer neuen Version
  2. Bearbeiten des LUIS-App-Schemas Dies schließt Folgendes ein:
    • Absichten mit Beispieläußerungen
    • Entitäten
    • Features
  3. Training, Test und Veröffentlichung
  4. Testen auf aktives Lernen durch Überprüfen der an den Vorhersageendpunkt gesendeten Äußerungen
  5. Sammeln von Daten aus Endpunktabfragen

Screenshot mit dem Erstellungszyklus

Identifizieren Ihrer Domäne

Eine LUIS-App baut auf einer Motivdomäne auf. Beispielsweise könnten Sie eine Reise-App erstellen, die Buchungen von Tickets, Flügen, Hotels und Mietwagen ausführt. Eine andere App könnte Inhalte im Zusammenhang mit Sportaktivitäten, dem Nachverfolgen von Fitnessübungen und dem Festlegen von Zielen bereitstellen. Durch die Identifizierung der Domäne können Sie Wörter oder Ausdrücke finden, die für Ihre Domäne relevant sind.

Tipp

LUIS bietet vordefinierte Domänen für viele häufige Szenarien. Überprüfen Sie, ob Sie eine vordefinierte Domäne als Ausgangspunkt für Ihre App verwenden können.

Identifizieren Ihrer Absichten

Überlegen Sie sich, welche Absichten wichtig für die Aufgabe Ihrer Anwendung sind.

Beispiel: eine Reise-App mit Funktionen zum Buchen eines Flugs und Überprüfen des Wetters am Ziel des Benutzers. Sie können zwei Absichten für diese Aktionen definieren, „BookFlight“ (Flug buchen) und „GetWeather“ (Wetter abrufen).

In einer komplexeren App mit umfassenderen Funktionen hätten Sie wahrscheinlich mehr Absichten, und Sie sollten diese sorgfältig definieren, damit sie nicht zu spezifisch sind. Beispielsweise sind „BookFlight“ und „BookHotel“ möglicherweise separate Absichten, aber „BookInternationalFlight“ und „BookDomesticFlight“ könnten zu ähnlich sein.

Hinweis

Als bewährte Methode sollten Sie nur so viele Absichten verwenden, wie zum Ausführen der Funktionen Ihrer App erforderlich sind. Wenn Sie zu viele Absichten definieren, wird es für LUIS schwieriger, Äußerungen richtig zu klassifizieren. Wenn Sie zu wenige definieren, sind sie möglicherweise so allgemein gehalten, dass sie sich überschneiden.

Wenn Sie nicht die Gesamtabsicht identifizieren müssen, fügen Sie alle Beispielbenutzeräußerungen zur Absicht None hinzu. Wenn sich bei Ihrer App die Notwendigkeit weiterer Absichten herausstellt, können Sie diese später erstellen.

Erstellen von Beispieläußerungen für jede Absicht

Vermeiden Sie zunächst, zu viele Äußerungen für jede Absicht zu erstellen. Nachdem Sie die für Ihre App benötigten Absichten bestimmt haben, können Sie pro Absicht jeweils 15 bis 30 Beispieläußerungen erstellen. Jede Äußerung sollte sich von den zuvor bereitgestellten Äußerungen unterscheiden. Variieren Sie hierbei die verwendete Anzahl der Wörter, die Wortwahl, die Verbformen sowie die Satzzeichen.

Weitere Informationen finden Sie unter Grundlegendes zu guten Äußerungen für LUIS-Apps.

Identifizieren Ihrer Entitäten

Identifizieren Sie in den Beispieläußerungen die Entitäten, die extrahiert werden sollen. Um einen Flug zu buchen, benötigen Sie Informationen wie Ziel, Datum, Fluggesellschaft, Ticketkategorie und Reiseklasse. Erstellen Sie Entitäten für diese Datentypen, und markieren Sie dann die Entitäten in den Beispieläußerungen. Entitäten sind wichtig, um eine Absicht umzusetzen.

Wenn Sie bestimmen, welche Entitäten in Ihrer App verwendet werden sollen, denken Sie daran, dass es verschiedene Typen von Entitäten zum Erfassen der Beziehungen zwischen Objekttypen gibt. Weitere Informationen zu den verschiedenen Typen finden Sie unter Entitäten in LUIS.

Tipp

LUIS bietet vordefinierte Entitäten für gängige, interaktive Benutzerszenarios. Verwenden Sie vorgefertigte Entitäten als Ausgangspunkt für die Anwendungsentwicklung.

Absichten im Vergleich mit Entitäten

Eine Absicht ist das gewünschte Ergebnis der gesamten Äußerung, während Entitäten Datenstücke darstellen, die aus der Äußerung extrahiert wurden. Absichten sind in der Regel mit Aktionen verbunden, die von der Clientanwendung ausgeführt werden sollen. Entitäten sind die Informationen, die für die Aktion erforderlich sind. Aus Programmiererperspektive würde eine Absicht einen Methodenaufruf auslösen, und die Entitäten würden als Parameter dieses Methodenaufrufs fungieren.

Diese Äußerung muss eine Absicht und kann Entitäten aufweisen:

Kaufe ein Flugticket von Seattle nach Kairo

Diese Äußerung verfolgt ein einzelnes Ziel:

  • den Kauf eines Flugtickets

Diese Äußerung kann verschiedene Entitäten aufweisen:

  • Die Orte Seattle (Startort) und Kairo (Zielort)
  • Die Menge eines einzelnen Tickets

Auflösung in Äußerungen mit mehr als einer Funktion oder Absicht

In vielen Fälle, insbesondere bei natürlicher Sprache, enthalten die Äußerungen der Benutzer mehr als eine Funktion oder Absicht. Um damit umzugehen, besteht eine allgemeine Strategie darin, zu verstehen, dass die Ausgabe sowohl durch Absichten als auch durch Entitäten dargestellt werden kann. Diese Darstellung sollte den Aktionen Ihrer Clientanwendung zuordenbar sein und muss nicht auf die Absichten beschränkt sein.

Int-ent-ties (Intentities, Absichtsentitäten) stellt das Konzept dar, dass Aktionen (in der Regel als Absichten aufgefasst) in der Ausgabe der App auch als Entitäten erfasst und bestimmten Aktionen zugeordnet werden können. Eine Negation basiert z. B. häufig auf Absicht und Entität für die vollständige Extraktion. Sehen Sie sich die folgenden beiden Äußerungen an, deren Wortwahl sich zwar ähnelt, die aber unterschiedliche Ergebnisse liefern:

  • Buche bitte meinen Flug von Kairo nach Seattle
  • Storniere bitte meinen Flug von Kairo nach Seattle

Anstelle von zwei separaten Absichten sollten Sie eine einzelne Absicht mit einer Machine Learning-Entität „FlightAction“ erstellen. Diese Machine Learning-Entität sollte die Einzelheiten der Aktion sowohl für Buchungs- als auch für Stornierungsanfragen sowie entweder einen Start- oder einen Zielort extrahieren.

Diese FlightAction-Entität würde mit den folgenden Machine Learning-Entitäten der obersten Ebene und folgenden untergeordneten Entitäten strukturiert:

  • FlightAction
    • Aktion
    • Origin
    • Destination

Um die Extraktion zu erleichtern, fügten Sie den untergeordneten Entitäten Merkmale hinzu. Sie würden Eigenschaften anhand des zu erwartenden Vokabulars in Benutzeräußerungen und anhand der Werte auswählen, die in der Vorhersageantwort zurückgegeben werden sollen.

Bewährte Methoden

Planen Ihres Schemas

Machen Sie sich zunächst Gedanken dazu, wie und wo Sie die App verwenden möchten, bevor Sie mit der Erstellung Ihres App-Schemas beginnen. Je gründlicher und spezifischer Ihre Planung, desto besser Ihre App.

  • Untersuchen der Zielbenutzer
  • Definieren von End-to-End-Personas für Ihre App: Stimme, Avatar, Problembehandlung (proaktiv, reaktiv)
  • Identifizieren von Kanälen für Benutzerinteraktionen (z. B. Text oder Sprache), Übergabe an vorhandene Lösungen oder Erstellen einer neuen Lösung für die App
  • End-to-End-User Journey
    • Welche Funktionen erwarten Sie von dieser App, und welche nicht? Welche Priorität haben die gewünschten Funktionen der App?
    • Was sind die hauptsächlichen Anwendungsfälle?
  • Erfassen von Daten: Informationen zum Sammeln und Aufbereiten von Daten

Führen Sie nicht für jede einzelne hinzugefügte Beispieläußerung Training und Veröffentlichung durch

Fügen Sie vor dem Training und der Veröffentlichung 10–15 Äußerungen hinzu. Damit können Sie die Auswirkungen auf die Vorhersagegenauigkeit überprüfen. Das Hinzufügen einer einzelnen Äußerung hat möglicherweise keine sichtbaren Auswirkung auf das Ergebnis.

Verwenden Sie LUIS nicht als Trainingsplattform

LUIS ist für Sprachmodelle vorgesehen. Er ist nicht als allgemeine Trainingsplattform für natürliche Sprache gedacht.

Iteratives Aufbauen der App mit Versionen

Jeder Erstellungszyklus sollte innerhalb einer neuen Version erfolgen und aus einer vorhandenen Version geklont sein.

Überstürzen Sie die Veröffentlichung nicht.

Wenn Sie Ihre App zu schnell und ohne sorgfältige Planung veröffentlichen, kann dies zu diversen Problemen führen, beispielsweise:

  • Die Leistung Ihrer App lässt in der Praxis zu wünschen übrig.
  • Das Schema (Absichten und Entitäten) ist möglicherweise nicht angemessen, und falls Sie auf der Grundlage dieses Schemas Client-App-Logik entwickelt haben, müssen Sie diese möglicherweise neu schreiben. Dies würde zu unerwarteten Verzögerungen und zusätzlichen Kosten für das Projekt führen.
  • Äußerungen, die Sie dem Modell hinzufügen, führen möglicherweise zu einer unausgewogenen Bevorzugung von Beispieläußerungen, was schwer zu debuggen und zu identifizieren ist. Dies erschwert außerdem die Entfernung von Mehrdeutigkeiten, nachdem Sie sich auf ein bestimmtes Schema festgelegt haben.

Überwachen Sie die Leistung Ihrer App.

Überwachen Sie die Vorhersagegenauigkeit mithilfe eines Batchtestsatzes.

Reservieren Sie eine separate Menge von Äußerungen, die nicht als Beispieläußerungen oder Endpunktäußerungen verwendet werden. Optimieren Sie die App immer weiter mit Ihrem Testsatz. Passen Sie den Testsatz an die tatsächlichen Benutzeräußerungen an. Verwenden Sie diesen Testsatz, um die einzelnen Iterationen oder Versionen der App zu bewerten.

Erstellen Sie keine Ausdruckslisten mit allen möglichen Werten.

Geben Sie in den Ausdruckslisten einige Beispiele an, aber nicht jedes Wort bzw. jeden Ausdruck. LUIS generalisiert und berücksichtigt dabei den Kontext.

Nächste Schritte

Absichten