Skip to content

Microsoft LUIS

Was ist Microsoft LUIS?

Microsoft LUIS ist ein auf maschinellem Lernen basierender Service zum Erstellen natürlicher Sprache in Apps, Bots und IoT-Geräten. Mit LUIS können Sie unternehmensbereite, benutzerdefinierte Modelle erstellen und trainieren. Mit LUIS bietet Microsoft ein kommerzielles Werkzeug für die Interpretation von textuellen Benutzereingaben an, ohne dass Programmierkenntnisse erforderlich sind.

LUIS unterstützt bis zu 500 Absichten (Aktionen, die in einem Satz identifiziert werden) und 100 Entitäten (Informationen, die extrahiert werden, um die mit der Absicht verbundene Aufgabe zu erfüllen). Gegenwärtig werden 12 verschiedene Sprachen unterstützt, darunter Englisch, Französisch, Deutsch, Italienisch und Spanisch.

Als Einstiegspunkt können Sie den folgenden Artikel verwenden: https://docs.microsoft.com/en-us/azure/cognitive-services/luis/luis-quickstart-intents-only

Verwenden der LUIS Bibliothek

Die LUIS Bibliothek kann im Chatbot verwendet werden, um die Benutzereingabe mit Hilfe des Service von Microsoft LUIS zu interpretieren.

Die Benutzereingabe wird dazu an LUIS übermittelt, um Informationen zu identifizieren. LUIS versucht dann die Benutzerziele (Absichten) zu interpretieren und Informationen aus Sätzen (Entitäten) zu extrahieren. Das zurückgegebene Ergebnis kann dann vom Chatbot weiter verarbeitet werden. Die Erstellung und Administration des Sprachmodells erfolgt auf der Benutzeroberfläche von LUIS.

Die Bibliothek dient hierbei nur für den Zugriff auf dem Service. Um Aufrufe an den LUIS-Service zu senden, benötigen Sie einen Cognitive Services-API-Schlüssel. Ein kostenloses Konto können Sie auf der Microsoft Webseite (https://azure.microsoft.com/en-us/free/) erstellen.

Wie es funktioniert

Zunächst müssen Sie die Bibliothek de.citunius.businessbot.api.ai.luis-1.x.x.jar in das lib-Verzeichnis des Chatbots kopieren. Um den LUIS-Service nutzen zu können, benötigt die Bibliothek folgende Parameter:

Parameter Value Description
Luis.AppId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx Applikations-ID (8x4x4x4x12 Zeichen)
Luis.SubscriptionId xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx API Key (32 Zeichen)
Luis.Region Z.B. westeurope, westus, australiaeast, eastasia
Luis.Verbose true Verbose, either true or false
Luis.TimezoneOffset 0 Zeitzonen-Offset

Die Parameter finden Sie auf der Microsoft LUIS-Webseite unter Publish app wie im folgenden Screenshot:

Um eine Anfrage an LUIS zu senden, wird ein Client instanziiert und die Funktion queryLUIS(query) mit der Benutzereingabe aufgerufen. Als Ergebnis wird das Objekt LuisResult mit den von LUIS interpretierten Ergebnissen zurückgegeben.

1
2
3
4
5
6
7
8
9
LuisClient client = new LuisClient(luisAppId, luisSubscriptionId, luisRegion, luisVerbose, luisTimezoneOffset);
LuisResult result;
try {
    result = client.queryLUIS(query);
    System.out.println("Luis result > intent: ["+result.getIntents()[0].getIntent()+"]");
    return result.getIntents()[0].getIntent();
} catch (Exception e) {
    System.err.println("Exception: ", e);
}

Zum Testen können Sie auch LUIS direkt im Browser über folgende URL-Adresse abfragen: https://westeurope.api.cognitive.microsoft.com/luis/v2.0/apps/###APP_ID###?subscription-key=###SUBSCRIPTION_KEY###&verbose=true&timezoneOffset=0&q=wer%20hat%20die%20telefonnummer%20123456?

Als Ergebnis erhalten Sie im Web-Browser folgendes JSON-Ergebnis: