Usare i servizi di intelligenza artificiale di Azure con l'elaborazione del linguaggio naturale (NLP) per arricchire le conversazioni dei bot

Nota

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

I servizi di intelligenza artificiale di Azure offrono due servizi di elaborazione del linguaggio naturale, Language Understanding e QnA Maker, ognuno con uno scopo diverso. Comprendere quando usare ogni servizio e come si complimentano tra loro.

L'elaborazione del linguaggio naturale 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 intelligenza artificiale di Azure può comunque usare la frase dell'utente, restituendo informazioni necessarie al chatbot per aiutare l'utente.

Servizi di intelligenza artificiale di Azure 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 risolve problemi diversi. 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 intelligenza artificiale di Azure.

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

Servizio L'applicazione client determina
LUIS Determina l'intenzione dell'utente di testo: il servizio non restituisce la risposta alla domanda. Ad esempio, questo testo viene classificato come corrispondente alla FindLocation finalità.
QnA Maker Restituisce la risposta alla domanda da un knowledge base personalizzato. Ad esempio, questo testo viene determinato 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 passare i dettagli sull'espressione (estratta con le 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 alle intenzioni e alle entità (usando LUIS) e 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?, inviare il testo, come query, al servizio QnA Maker pubblicato e ricevere 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 il knowledge base è incompleto

Se si sta creando il knowledge base 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 nel knowledge base, ma usare LUIS anche per determinare l'intenzione di un utente. Una volta che l'applicazione client ha l'intenzione, può richiedere informazioni rilevanti 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?, si supponga che QnA Maker restituisca un punteggio di attendibilità basso. Usare la finalità restituita da LUIS FindLocation ed eventuali entità estratte, ad esempio Human Resources building e Seattle North campus, per inviare queste informazioni a un mapping o a un servizio 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 proprie conoscenze.

Usare entrambi i servizi quando il chatbot necessita di altre informazioni

Se il chatbot necessita di più informazioni rispetto a uno dei due servizi forniti, per continuare con un albero delle decisioni, usare entrambi i servizi ed elaborare entrambe le risposte nell'applicazione client.

Usare lo strumento dell'interfaccia della riga di comando dispatch di Bot Framework per creare un processo per l'uso con entrambi i servizi. Questo strumento crea un'app LUIS principale di finalità che invia tra LUIS e QnA Maker come app figlio. Altre informazioni sull'integrazione con LUIS, QnA Maker e Bot Framework.

Usare l'esempio bot builder, NLP con dispatch, in C# o Node.js, per implementare questo tipo di chat bot.

Procedure consigliate

Implementare le procedure consigliate per ogni servizio:

Vedi anche

Passaggi successivi