Abfragen der Wissensdatenbank nach Antworten

Eine Wissensdatenbank muss veröffentlicht werden. Nach der Veröffentlichung wird die Wissensdatenbank mithilfe der generateAnswer-API am Vorhersageendpunkt der Runtime abgefragt. Die Abfrage enthält den Fragetext und andere Einstellungen, mit denen QnA Maker die bestmögliche Entsprechung für eine Antwort auswählen kann.

Hinweis

Der QnA Maker-Dienst wird am 31. März 2025 außer Betrieb gesetzt. Eine neuere Version der Funktionalität „Fragen und Antworten“ ist jetzt als Teil von Azure KI Language verfügbar. Antworten auf Fragen innerhalb des Sprachdiensts finden Sie unter Fragen und Antworten. Ab dem 1. Oktober 2022 können Sie keine neuen QnA Maker-Ressourcen mehr erstellen. Informationen zum Migrieren vorhandener QnA Maker-Wissensdatenbanken für Fragen und Antworten finden Sie im Migrationsleitfaden.

Verarbeitung einer Benutzerabfrage mit QnA Maker, um die beste Antwort auszuwählen

Die trainierte und veröffentlichte QnA Maker-Wissensdatenbank empfängt eine Benutzerabfrage von einem Bot oder einer anderen Clientanwendung über die GenerateAnswer-API. Im folgenden Diagramm ist der Prozess nach dem Empfang der Benutzerabfrage dargestellt.

Einstufungsmodellprozess für eine Benutzerabfrage

Einstufungsprozess

Der Prozess wird in der folgenden Tabelle erläutert:

Schritt Zweck
1 Die Clientanwendung sendet die Benutzerabfrage an die GenerateAnswer-API.
2 QnA Maker führt die Vorverarbeitung der Benutzerabfrage mit Spracherkennung, Rechtschreibprüfung und Worttrennung durch.
3 Diese Vorverarbeitung hat das Ziel, die Benutzerabfrage so anzupassen, dass die besten Suchergebnisse erzielt werden.
4 Die geänderte Abfrage wird an einen Azure KI Search-Index gesendet, der die mit top festgelegte Anzahl von Ergebnissen empfängt. Falls diese Ergebnisse die richtige Antwort nicht enthalten, sollten Sie den Wert von top leicht erhöhen. Im Allgemeinen eignet sich der Wert „10“ für top bei 90 % aller Abfragen. Azure Search filtert Stoppwörter in diesem Schritt.
5 QnA Maker verwendet eine auf Syntax und Semantik basierende Featurebereitstellung, um die Ähnlichkeit zwischen der Benutzerabfrage und den abgerufenen QnA-Ergebnissen zu ermitteln.
6 Das maschinell erlernte Bewertermodell verwendet die verschiedenen Features aus Schritt 5, um die Zuverlässigkeitsbewertungen und die neue Rangfolge zu ermitteln.
7 Die neuen Ergebnisse werden in der Rangfolge an die Clientanwendung zurückgegeben.

Zu den verwendeten Funktionen gehören u. a. Semantik auf Wortebene, Wichtigkeit auf Begriffsebene in einem Korpus und Deep Learning-Semantikmodelle, um die Ähnlichkeit und Relevanz zwischen zwei Textzeichenfolgen zu ermitteln.

HTTP-Anforderung und -Antwort mit Endpunkt

Beim Veröffentlichen Ihrer Wissensdatenbank erstellt der Dienst einen REST-basierten HTTP-Endpunkt, den Sie in Ihre Anwendung integrieren können, etwa in Form eines Chatbots.

Benutzerabfrageanforderung zum Generieren einer Antwort

Eine Benutzerabfrage ist die Frage, die der Benutzer an die Wissensdatenbank richtet, z. B. How do I add a collaborator to my app?. Die Abfrage wird häufig in einem natürlichen Sprachformat oder in Form von Schlüsselwörtern formuliert, die die Frage darstellen, z. B. help with collaborators. Die Abfrage wird von einer HTTP-Anforderung in der Clientanwendung an Ihre Wissensdatenbank gesendet.

{
    "question": "How do I add a collaborator to my app?",
    "top": 6,
    "isTest": true,
    "scoreThreshold": 20,
    "strictFilters": [
    {
        "name": "QuestionType",
        "value": "Support"
    }],
    "userId": "sd53lsY="
}

Sie steuern die Antwort, indem Sie Eigenschaften wie scoreThreshold, top und strictFilters festlegen.

Verwenden Sie Unterhaltungskontext mit Mehrfachdurchlauffunktion, um die Konversation aufrechtzuerhalten und die Fragen und Antworten so zu verfeinern, dass die richtige und abschließende Antwort gefunden wird.

Reaktion auf einen Aufruf zum Generieren einer Antwort

Die HTTP-Antwort ist die Antwort, die aus der Wissensdatenbank basierend auf der besten Übereinstimmung für eine bestimmte Benutzerabfrage abgerufen wird. Darin enthalten ist die eigentliche Antwort und das Vorhersageergebnis. Wenn Sie mit der Eigenschaft top mehr als eine Top-Antwort angefordert haben, erhalten Sie mehrere Top-Antworten jeweils mit einer Bewertung.

{
    "answers": [
        {
            "questions": [
                "How do I add a collaborator to my app?",
                "What access control is provided for the app?",
                "How do I find user management and security?"
            ],
            "answer": "Use the Azure portal to add a collaborator using Access Control (IAM)",
            "score": 100,
            "id": 1,
            "source": "Editorial",
            "metadata": [
                {
                    "name": "QuestionType",
                    "value": "Support"
                },
                {
                    "name": "ToolDependency",
                    "value": "Azure Portal"
                }
            ]
        }
    ]
}

Nächste Schritte