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: