Condividi tramite


Progetta una comprensione efficace del linguaggio

La comprensione del linguaggio naturale (NLU) è alla base del modo in cui gli agenti di Copilot Studio hanno senso delle query utente e forniscono risposte contestuali pertinenti. Un approccio ben definito al riconoscimento dell'intento, all'estrazione delle entità e alla gestione del fallback garantisce che gli agenti offrano conversazioni efficienti e naturali in linea con le esigenze aziendali.

Quando un utente inserisce qualcosa a un agente, si chiama enunciazione. L'agente deve suddividere quell'enunciato in intenti ed entità, rendendo la risposta dell'agente sia naturale che efficiente.

Cos'è la comprensione della lingua?

La comprensione del linguaggio (LU) è un sottocampo dell'Elaborazione del Linguaggio Naturale (NLP) focalizzato sull'aiutare le macchine a comprendere il significato, l'intento e il contesto dietro il linguaggio umano.

Diagramma che illustra l'elaborazione della comprensione linguistica.

Diagramma che mostra come il messaggio di un utente viene suddiviso in intento ed entità. Una persona digita: "Voglio prenotare un volo per Parigi la prossima settimana." Il messaggio è etichettato come un enunciato. L'espressione "Voglio prenotare un volo" è identificata come l'intento, mentre "Parigi" e "prossima settimana" sono identificati come entità. Il sistema poi chiede ulteriori dettagli come la città di partenza e la classe di viaggio. Il diagramma illustra come l'agente utilizza intento, entità e contesto per determinare la migliore risposta.

La comprensione linguistica comporta:

  • Riconoscimento dell'intento: Identificare ciò che l'utente vuole ottenere (ad esempio, "Prenota un volo per Parigi la prossima settimana" corrisponde all'intento di prenotare un volo).
  • Estrazione di entità: estrazione di dettagli chiave come date, luoghi o nomi (ad esempio, "Paris" come destinazione, "prossima settimana" come data di viaggio).
  • Consapevolezza del contesto: mantenere la continuità e risolvere ambiguità nella conversazione (ad esempio, comprendere pronomi o riferimenti).
  • Gestione delle ambiguità: Utilizzare il contesto per risolvere parole con significati multipli (ad esempio, "banca" come istituzione finanziaria o riva di fiume).

Comprensione del linguaggio in Copilot Studio

Copilot Studio ha un modello flessibile per la comprensione del linguaggio, con più opzioni di configurazione.

Orchestrazione generativa

L'orchestrazione generativa utilizza modelli linguistici per collegare in modo intelligente argomenti, azioni e conoscenze. Questa funzionalità consente il riconoscimento di intenti multipli, l'estrazione avanzata di entità e la generazione dinamica di piani per richieste complesse.

Questo metodo è il valore predefinito per Copilot Studio. Questo approccio riconosce molteplici intenti o argomenti in un unico enunciato, concatena automaticamente azioni e fonti di conoscenza e genera risposte unificate. È particolarmente utile per gestire conversazioni complesse che si estendono su più aree di business. L'orchestrazione generativa ha dei limiti, come cinque messaggi per argomento o catena d'azione, e 128 argomenti o azioni per ogni orchestrazione, ma offre un modo potente per scalare la larghezza della conversazione.

Scopri di più in Applica le capacità di orchestrazione generativa.

Orchestrazione classica

L'orchestrazione classica utilizza frasi trigger e il routing degli argomenti deterministici. Se l'enunciato di un utente corrisponde a una frase trigger, viene eseguito l'argomento corrispondente. Se non c'è corrispondenza, i meccanismi di fallback cercheranno nelle fonti di conoscenza o chiederanno all'utente un chiarimento.

NLU integrato (Comprensione del Linguaggio Naturale)

Questo approccio era il predefinito, ma ora è quello di riserva. Copilot Studio offre un modello NLU predefinito che supporta frasi di attivazione, entità predefinite ed entità personalizzate. Questo modello consente agli agenti di identificare l'intento dell'utente ed estrarre dettagli chiave come date, destinazioni o quantità direttamente da una query.

NLU+

Per un'alta precisione, usa l'opzione NLU+. L'opzione NLU+ è ideale per applicazioni di grandi dimensioni di livello aziendale. Questi tipi di applicazioni sono in genere costituiti da un numero elevato di argomenti ed entità e usano un numero elevato di esempi di training. Inoltre, se si dispone di un agente abilitato per la voce, i dati di training NLU+ vengono usati anche per ottimizzare le funzionalità di riconoscimento vocale.

integrazione di Azure CLU

Per scenari più avanzati in cui non è possibile usare l'orchestrazione generativa predefinita, è possibile integrare Azure Conversational Language Understanding (CLU). CLU offre una maggiore personalizzazione, supporto multilingue e un'estrazione complessa di entità (ad esempio, più entità "di origine"). È necessario eseguire il mapping delle finalità CLU agli argomenti di Copilot Studio per mantenerli sincronizzati. Questa opzione è particolarmente utile per vocabolari specifici del settore, lingue non inglesi o scenari che richiedono un'accuratezza maggiore.

Caratteristiche principali e limitazioni

Questa tabella confronta i tre approcci di comprensione del linguaggio in Copilot Studio. Mette in evidenza le loro caratteristiche chiave e i limiti per aiutarti a scegliere il modello giusto per le esigenze di complessità, scala e accuratezza del tuo agente.

Funzionalità e limitazioni Orchestrazione generativa Modello NLU integrato Modello CLU di Azure personalizzato
Funzionalità principali
  • Utilizza un modello linguistico di grandi dimensioni
  • Gestisce enunciazioni complesse con molteplici intenzioni, argomenti/azioni e conoscenze
  • Genera automaticamente domande per input mancanti
  • Permette correzioni durante l'esecuzione
  • Produce una risposta unificata basata sugli output di argomenti, azioni e conoscenze
  • Modello pre-addestrato predefinito con tipi di entità predefiniti
  • Configurato usando frasi trigger ed entità personalizzate (liste chiuse o regex)
  • Supporta più linguaggi con modelli nativi
  • Modello personalizzabile di innescare l'intento in base all'accuratezza o alle esigenze specifiche del settore
  • Estrazione avanzata di entità (ad esempio, stesso tipo, estrazione silenziosa)
  • L'estrazione di entità può usare l'NLU standard di Copilot Studio
Limiti
  • Cinque messaggi per ogni argomento/catena di azioni
  • Limite di 128 argomenti e azioni per l'attivazione
  • Riconoscimento di un singolo intento per query
  • Non si può prolungare
  • Riempire slot con più entità dello stesso tipo richiede disambiguazione
  • Riconoscimento di un singolo intento per query
  • configurazione basata su Azure e costi aggiuntivi
  • Ha limiti del servizio Azure
  • Le finalità CLU di Azure e gi argomenti di Copilot Studio devono essere mantenuti accuratamente sincronizzati.

Scopri di più sulla panoramica della comprensione del linguaggio naturale (NLU).

Struttura degli argomenti e fallback

Gli argomenti si sono allontanati da un percorso rigido basato sull'intento verso un approccio più flessibile, centrato sull'orchestrazione. Invece di affidarsi esclusivamente a trigger e percorsi predefiniti, gli argomenti ora agiscono come istruzioni modulari a cui l'agente può ricorrere durante l'orchestrazione di una conversazione. L'orchestrazione generativa gestisce la maggior parte del routing interpretando dinamicamente l'input degli utenti e gli argomenti forniscono un rimpiego strutturato quando occorre precisione.

Il design strutturato più tradizionale dei temi rende le conversazioni naturali ed efficienti. Gli argomenti possono essere punti di ingresso attivati da enunciazioni dell'utente o sottoargomenti riutilizzabili chiamati da redirect o eventi di sistema. Gli argomenti di disambiguazione aiutano a evitare confusione quando potrebbero essere attivati più argomenti, mentre i temi di riserva e quelli che favoriscono la conversazione forniscono reti di sicurezza quando l'agente non riesce a corrispondere con sicurezza all'intento. Puoi anche aggiungere risposte generative da attingere a fonti di conoscenza esterne, assicurando che gli utenti raramente restino senza risposta.

Scopri di più in Applicare le migliori pratiche agli argomenti di scrittura.

Localizzazione e lingue

Il linguaggio usato da un agente di Copilot Studio è determinato dal valore della variabile di sistema: System.User.Language.

Questa variabile agisce come punto di controllo centrale per tutti i comportamenti legati al linguaggio nell'agente. Puoi impostarne il valore manualmente, in modo programmativo o rilevarlo automaticamente.

Come funziona?

  • Search knowledge in the user's language: Copilot Studio usa il valore di System.User.Language per cercare le fonti di conoscenza nella lingua specificata. Questo approccio implica che anche se un utente pone una domanda in una lingua, l'agente traduce la query di ricerca nella lingua impostata in System.User.Language (auto-traduzione per query di ricerca).

  • Rispondi nella lingua dell'utente: L'agente genera risposte nella lingua specificata da System.User.Language, indipendentemente dalla lingua usata nella domanda o dai documenti originali (traduzione automatica per la generazione delle risposte).

  • Sovrascritto manuale: Puoi impostare manualmente il valore di System.User.Language per forzare l'agente a operare in un linguaggio specifico. Questa funzione è utile per test o per scenari in cui devi controllare esplicitamente la lingua. Per altre informazioni, vedere Configurare e creare agenti multilingue.

Rilevamento automatico della lingua parlata

È possibile configurare Copilot Studio per rilevare automaticamente la lingua parlata o scritta dell'utente e impostare di conseguenza la variabile System.User.Language. Questa funzione consente esperienze multilingue senza soluzione di continuità senza richiedere agli utenti di specificare la propria preferenza linguistica.

Come funziona l'auto-rilevamento

  • Rilevamento basato su trigger: Quando il bot riceve un messaggio, un trigger avvia un flusso di rilevamento della lingua.
  • Imposta variabile di sistema: Il bot assegna il linguaggio rilevato a System.User.Language.
  • Risposta dinamica: L'agente continua la conversazione nella lingua rilevata, sia cercando conoscenza sia generando risposte di conseguenza.

Vantaggi

  • Esperienza personalizzata: gli utenti interagiscono nella lingua preferita senza configurazione manuale.
  • Esperienza coerente: Tutte le risposte e i recuperi di conoscenza sono allineati con il linguaggio rilevato o definito.
  • Soluzione scalabile: Supporta implementazioni globali con configurazioni minime.

Suggerimento

Esaminare la soluzione di esempio che illustra come abilitare gli agenti di Copilot Studio per rilevare automaticamente la lingua parlata di un utente e passare a una delle lingue approvate dall'autore per l'agente in Rilevamento automatico lingua per le risposte generative.

Migliori pratiche per la localizzazione

  • Configura i linguaggi supportati: Definisci i linguaggi primari e secondari per il tuo agente. Usa file di localizzazione (JSON o ResX) per fornire traduzioni di prompt, messaggi e argomenti.
  • Testa scenari multilingue: Simula le interazioni degli utenti in diverse lingue per garantire transizioni fluide e risposte accurate.
  • Usare la traduzione automatica: basarsi sulla traduzione predefinita di Copilot Studio per la ricerca e la generazione di risposte delle conoscenze, ma fornire traduzioni personalizzate per contenuti critici o sfumati.
  • Monitorare e perfezionare: Utilizzare l'analisi per monitorare l'uso della lingua e migliorare la copertura della localizzazione nel tempo.

approcci al linguaggio dell'agente di Copilot Studio:

  • Agenti separati per lingua.
  • Agenti multilingue singoli con traduzioni pre-scritte.
  • Agenti multilingue in tempo reale, utilizzando servizi di traduzione tra utente e agente.

L'approccio corretto dipende dall'uso, dalle preoccupazioni di separazione, dalla scala, dalla cadenza degli aggiornamenti e dalle risorse disponibili.

Sfide tecniche identificate

Le problematiche tipiche includono garantire che gli argomenti di Azure CLU e Copilot Studio rimangano sincronizzati, gestire espressioni ambigue e scalare le implementazioni multilingue. L'identificazione precoce di questi ostacoli ti permette di pianificare strategie di mitigazione, come configurazioni di fallback, test massici di frasi di attivazione o servizi di traduzione basati su relay.

L'obiettivo della comprensione linguistica è garantire che ogni agente possa interpretare accuratamente le richieste degli utenti, adattarsi a linguaggi e scenari diversi e gestire con grazia l'imprevisto. Questo obiettivo crea una solida base per creare conversazioni affidabili, coinvolgenti ed efficienti Copilot Studio.