Condividi tramite


Usa Servizi di Azure AI con l’elaborazione del linguaggio naturale (NLP) per arricchire le conversazioni dei bot

Nota

Il servizio QnA Maker sarà ritirato il 31 marzo 2025. Una versione più recente della funzionalità di domande e risposte è ora disponibile come parte di Lingua di Azure AI. Per le funzionalità di risposta alla domanda all'interno del servizio di linguaggio vedere Risposta alla domanda. A partire dal 1° ottobre 2022 non è più possibile creare nuove risorse di QnA Maker. Per informazioni sulla migrazione delle knowledge base di QnA Maker esistenti alla funzionalità di risposta alla domanda vedere la guida alla migrazione.

Servizi di Azure AI offre due servizi di elaborazione del linguaggio naturale, Language Understanding e QnA Maker, ciascuno con uno scopo diverso. Comprendere quando usare ciascun servizio e in che modo sono complementari.

L'elaborazione del linguaggio naturale (NLP) consente all'applicazione client, ad esempio un chatbot, di lavorare con gli utenti usando il linguaggio naturale. Un utente immette una frase. Il testo dell'utente può avere grammatica, ortografia e punteggiatura non corretta. Il Servizio di Azure AI può comunque usare la frase dell'utente, restituendo informazioni necessarie al chatbot per aiutare l'utente.

Servizi di Azure AI con NLP

Language Understanding (LUIS) e QnA Maker forniscono NLP. L'applicazione client invia testo in linguaggio naturale. Il servizio accetta il testo, lo elabora e restituisce un risultato.

Quando usare ogni servizio

Language Understanding (LUIS) e QnA Maker risolveranno diversi problemi. LUIS determina la finalità del testo di un utente (noto come espressione), mentre QnA Maker determina la risposta al testo di un utente (noto come query).

Per selezionare il servizio corretto, è necessario comprendere il testo dell'utente proveniente dall'applicazione client e quali informazioni devono essere ottenute dall'applicazione client dal servizio di Azure AI.

Se il chatbot riceve il testo How do I get to the Human Resources building on the Seattle North campus?, usa il grafico seguente per comprendere il funzionamento di ogni servizio con il testo.

Servizio L'applicazione client determina
LUIS Determina l'intenzione del testo dell'utente: il servizio non restituisce la risposta alla domanda. Ad esempio, questo testo è classificato corrispondente alla finalità FindLocation.
QnA Maker Restituisce la risposta alla domanda da una knowledge base personalizzata. Ad esempio, questo testo viene classificato come domanda con la risposta di testo statico di Get on the #9 bus and get off at Franklin street.

Infografica per determinare quando usare LUIS e quando usare QnA Maker

Quando si usa LUIS?

Usare LUIS quando è necessario conoscere l'intenzione dell'espressione come parte di un processo nel chatbot. Continuando con il testo di esempio, How do I get to the Human Resources building on the Seattle North campus?, una volta che si conosce l'intenzione dell'utente di trovare una posizione, è possibile comunicare i dettagli sull'espressione (estratta con entità) a un altro servizio, ad esempio un server di trasporto, per ottenere la risposta.

Non è necessario combinare LUIS e QnA Maker per determinare la finalità.

È possibile combinare i due servizi per questa espressione, se il chatbot deve elaborare il testo in base a intenzioni ed entità (usando LUIS), nonché trovare la risposta di testo statica specifica (usando QnA Maker).

Quando si usa QnA Maker?

Usare QnA Maker quando si dispone di una knowledge base di risposte statica. Questa knowledge base è personalizzata in base alle proprie esigenze create con documenti quali PDF e URL.

Continuando con l'espressione di esempio, How do I get to the Human Resources building on the Seattle North campus?, invia il testo come query al servizio QnA Maker pubblicato e riceverai la risposta migliore.

Non è necessario combinare LUIS e QnA Maker per determinare la risposta alla domanda.

È possibile combinare i due servizi per questa espressione, se il chatbot deve elaborare il testo in base a intenzioni ed entità (usando LUIS) e trovare la risposta (usando QnA Maker).

Usare entrambi i servizi quando la Knowledge Base è incompleta

Se si sta compilando la knowledge base di QnA Maker ma si sa che il dominio soggetto sta cambiando (ad esempio informazioni tempestive), è possibile combinare i servizi LUIS e QnA Maker. In questo modo è possibile usare le informazioni nella Knowledge Base, ma anche LUIS per determinare l'intenzione di un utente. Una volta che l'applicazione client ha l'intenzione, può richiedere informazioni pertinenti da un'altra origine.

L'applicazione client deve monitorare sia le risposte LUIS che QnA Maker per i punteggi. Se il punteggio di QnA Maker è inferiore a una soglia arbitraria, usare le informazioni sulla finalità e sull'entità restituite da LUIS per passare le informazioni a un servizio di terze parti.

Continuando con il testo di esempio, How do I get to the Human Resources building on the Seattle North campus?, supponiamo che QnA Maker restituisca un punteggio di attendibilità basso. Usa la finalità restituita da LUIS, FindLocation, e tutte le entità estratte, ad esempio Human Resources building e Seattle North campus, per inviare queste informazioni a un servizio di mapping o di ricerca per un'altra risposta.

È possibile presentare questa risposta di terze parti all'utente per la convalida. Dopo aver ottenuto l'approvazione dell'utente, è possibile tornare a QnA Maker per aggiungere le informazioni per aumentare le conoscenze.

Usare entrambi i servizi quando il chatbot necessita di altre informazioni

Se il chatbot necessita di più informazioni di quelle fornite dai due servizi, per continuare in un albero delle decisioni usare entrambi i servizi ed elaborare entrambe le risposte nell'applicazione client.

Usare lo strumento Dispatch CLI di Bot framework per aiutare a creare un processo da usare con entrambi i servizi. Questo strumento crea un'app principale LUIS di finalità che viene inviata tra LUIS e QnA Maker come app figlio. Altre informazioni sull'integrazione con LUIS, QnA Maker e Bot Framework.

Usa l'esempio di Bot Builder, NLP con dispatch, in C# o Node.js per implementare questo tipo di chatbot.

Procedure consigliate

Implementare le procedure consigliate per ogni servizio:

  • Procedure consigliate per LUIS
  • Procedure consigliate per QnA Maker

Vedi anche

Passaggi successivi