Procedure consigliate per una knowledge base di QnA Maker
Il ciclo di vita di sviluppo della knowledge base fornisce informazioni sulla gestione della KB dall'inizio alla fine. Usare queste procedure consigliate per migliorare la knowledge base e fornire risultati migliori all'applicazione client o agli utenti finali del chatbot.
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 risposta alla domanda, vedere la guida alla migrazione.
Estrazione
Il servizio QnA Maker migliora continuamente gli algoritmi di estrazione di domande e risposte dal contenuto, espandendo l'elenco di file e formati di pagina HTML supportati. Seguire le linee guida per l'estrazione di dati in base al tipo di documento.
In generale, le pagine di domande frequenti devono essere autonome e non combinate con altre informazioni. I manuali di prodotti devono avere titoli chiari e preferibilmente una pagina di indice.
Configurazione di più turni
Creare la knowledge base con l'estrazione a più turni abilitata. Se la knowledge base supporta o deve supportare una gerarchia di domande, questa gerarchia può essere estratta dal documento o creata dopo l'estrazione del documento.
Creazione di domande e risposte di qualità
Domande di qualità
Le domande migliori sono quelle semplici. Considerare la parola chiave o la frase per ogni domanda e quindi creare una domanda semplice basata su tale parola chiave o frase.
È possibile aggiungere tutte le domande alternative che si ritiene necessario, mantenendole però semplici. L'aggiunta di parole o frasi che non fanno parte dell'obiettivo principale della domanda non aiuta QnA Maker a trovare una corrispondenza.
Aggiungere domande alternative pertinenti
L'utente può immettere domande con uno stile di testo conversazionale, How do I add a toner cartridge to my printer?
o una ricerca di parole chiave, ad esempio toner cartridge
. La knowledge base deve avere entrambi gli stili di domande per restituire correttamente la risposta migliore. In caso di dubbi sulle parole chiave immesse da un cliente, usare i dati di Application Insights per analizzare le query.
Risposte di qualità
Le risposte migliori sono semplici, ma non dovrebbero esserlo troppo. Non usare risposte come yes
e no
. Se la risposta deve collegarsi ad altre origini o offrire un'esperienza avanzata con elementi multimediali e collegamenti, usare i tag di metadati per distinguere le risposte, quini inviare la query con tag di metadati nella proprietà strictFilters
per ottenere la versione della risposta corretta.
Risposta | Richieste di completamento |
---|---|
Spegnere il portatile Surface con il pulsante di alimentazione sulla tastiera. | * Combinazioni di tasti per sospensione, arresto e riavvio. * Come eseguire l'avvio forzato di un portatile Surface * Come modificare il BIOS per un portatile Surface * Differenze tra sospensione, arresto e riavvio |
Il servizio clienti è disponibile tramite telefono, Skype e SMS 24 ore al giorno. | * Informazioni di contatto per le vendite. * Uffici e punti vendita e orari per una visita di persona. * Accessori per un portatile Surface. |
Chit Chat
Aggiungere una chit-chat al bot, per renderlo più colloquiale e accattivante con uno sforzo minimo. È possibile aggiungere facilmente un set di dati di chiacchiere per personalità predefinite quando si crea la knowledge base, con possibilità di apportare modifiche in qualsiasi momento. Come aggiungere chit-chat alla KB.
Le chiacchiere sono supportate in molte lingue.
Scelta della personalità
Le chiacchiere sono supportate per varie personalità predefinite:
Dipendente dalla | File del set di dati di QnA Maker |
---|---|
Professionale | qna_chitchat_professional.tsv |
Gentile | qna_chitchat_friendly.tsv |
Spiritoso | qna_chitchat_witty.tsv |
Premuroso | qna_chitchat_caring.tsv |
Entusiasta | qna_chitchat_enthusiastic.tsv |
Le risposte possono andare da quelle formali a quelle informali e irriverenti. Selezionare la personalità più allineata al tono desiderato per il bot. È possibile visualizzare i set di dati, sceglierne uno che serva come base per il bot e quindi personalizzare le risposte.
Modifica delle domande specifiche per i bot
Esistono alcune domande specifiche per i bot che fanno parte del set di dati chit-chat e a cui sono state associate risposte generiche. Modificare queste risposte per riflettere al meglio i dettagli del bot.
È consigliabile rendere le seguenti QnA di chit-chat più specifiche:
- informazioni sull'utente
- Cosa è possibile fare?
- Quanti anni hai?
- Chi ti ha creato?
- Buongiorno
Aggiunta di chiacchiere personalizzate con un tag di metadati
Se si aggiungono coppie di domande e risposte per le chiacchiere, assicurarsi di aggiungere metadati in modo che vengano restituite queste risposte. La coppia nome/valore dei metadati è editorial:chitchat
.
Ricerca di risposte
L'API GenerateAnswer usa sia le domande sia la risposta per cercare le risposte migliori alla query di un utente.
Ricerca di domande solo quando la risposta non è pertinente
Usare RankerType=QuestionOnly
se non si vogliono cercare le risposte.
Un esempio è quando la knowledge base è un catalogo di acronimi come domande con la loro forma completa come risposta. Il valore della risposta non sarà utile per cercare la risposta appropriata.
Classificazione e assegnazione dei punteggi
Assicurarsi di usare al meglio le funzionalità di classificazione supportate da QnA Maker. In questo modo sarà possibile migliorare la probabilità che una specifica query utente riceva una risposta appropriata.
Scelta della soglia
Il punteggio di attendibilità predefinito usato come soglia è 0, ma è possibile modificare la soglia per la knowledge base in base alle esigenze. Poiché ogni KB è diversa, occorre testare e scegliere la soglia più adatta alla propria KB.
Scelta del tipo di classificatore
Per impostazione predefinita, QnA Maker esegue la ricerca nelle domande e nelle risposte. Se si vuole cercare solo tra le domande, per generare una risposta, usare RankerType=QuestionOnly
nel corpo POST della richiesta GenerateAnswer.
Aggiungere domande alternative
Le domande alternative aumentano la probabilità di una corrispondenza con una query utente. Le domande alternative sono utili quando ci sono più modi per porre la stessa domanda. Ciò può includere modifiche alla struttura della frase e allo stile delle parole.
Query originale | Query alternative | Modifica |
---|---|---|
È disponibile il parcheggio? | Si dispone di parcheggio? | struttura della frase |
Ciao | Ehi Salve! |
stile delle parole o gergo |
Usare i tag di metadati per filtrare domande e risposte
I metadati consentono a un'applicazione client di sapere che non devono accettare tutte le risposte, ma di limitare i risultati di una query utente in base ai tag di metadati. La risposta della knowledge base può essere diversa in base al tag di metadati, anche se la query è la stessa. Ad esempio, la domanda "Dove si trova il parcheggio?" può avere una risposta diversa se la posizione del ramo relativo al ristorante è diverso, ovvero se i metadati sono Posizione: Seattle anziché Posizione: Redmond.
Usare i sinonimi
Sebbene, in parte, sia disponibile il supporto per i sinonimi in lingua inglese, usare variazioni delle parole con distinzione tra maiuscole e minuscole tramite l'API Alterations per aggiungere sinonimi alle parole chiave che accettano una forma diversa. I sinonimi vengono aggiunti a livello di servizio in QnA Maker e condivisi da tutte le knowledge base nel servizio.
Usare parole diverse per distinguere le domande
L'algoritmo di classificazione di QnA Maker, che mette in corrispondenza una query utente con una domanda nella knowledge base, funziona meglio se ogni domanda risponde a esigenze diverse. La ripetizione dello stesso set di parole tra domande riduce la probabilità di scelta della risposta corretta per una determinata query utente che usa tali parole.
Ad esempio, si potrebbero avere due QnA separate con le domande seguenti:
QnA |
---|
dove si trova il parcheggio |
dove si trova il bancomat |
Poiché queste due QnA sono formulate con parole molto simili, questa analogia potrebbe causare punteggi molto simili per molte query utente che hanno formula "dove si <x>
trova". Provare invece a differenziare chiaramente con query quali "dov'è il parcheggio" e "dov'è il bancomat", evitando parole come "trova" che potrebbe ricorrere in molte domande nella KB.
Collaborare
QnA Maker permette agli utenti di collaborare a una knowledge base. Per accedere alle knowledge base, gli utenti necessitano dell'accesso al gruppo di risorse di QnA Maker in Azure AI. Alcune organizzazioni potrebbero voler assegnare all'esterno le attività di modifica e manutenzione della knowledge base, mantenendo comunque la possibilità di proteggere l'accesso alle risorse di Azure. Questo modello di approvazione dell'editor di testo può essere ottenuto configurando due servizi QnA Maker identici in diverse sottoscrizioni e se si seleziona uno per il ciclo di test di modifica. Una volta completati i test, il contenuto della knowledge base può essere trasferito con un processo di importazione-esportazione al servizio QnA Maker del responsabile approvazione che infine pubblicherà la knowledge base e aggiornerà l'endpoint.
Apprendimento attivo
Apprendimento attivo garantisce migliori prestazioni nel suggerimento di domande alternative se è disponibile un'ampia gamma, in termini di qualità e quantità, di query basate sull'utente. È importante consentire alle query degli utenti delle applicazioni client di entrare nel ciclo di feedback relativo all'apprendimento attivo senza alcuna limitazione. Dopo aver suggerito domande nel portale di QnA Maker, è possibile filtrare in base ai suggerimenti, quindi esaminare e accettare o rifiutare tali suggerimenti.