Usa entità e compilazione slot nei copiloti di Microsoft Copilot Studio

Importante

Le capacità e funzionalità di Power Virtual Agents ora fanno parte di Microsoft Copilot Studio a seguito di investimenti significativi nell'intelligenza artificiale generativa e integrazioni migliorate in Microsoft Copilot.

Alcuni articoli e schermate potrebbero fare riferimento a Power Virtual Agents durante l'aggiornamento della documentazione e dei contenuti per il training.

Una gran parte delle conversazioni dei copiloti in Microsoft Copilot Studio è la comprensione del linguaggio naturale, che è la capacità dell'IA di comprendere l'intento di un utente. Ad esempio, la comprensione del linguaggio naturale è coinvolta quando un utente potrebbe dire "Ho provato a utilizzare la mia carta regalo, ma non funziona" e il copilota è in grado di indirizzare l'utente all'argomento relativo alle carte regalo che non funzionano, anche se quella frase esatta non è elencata come frase trigger.

Un aspetto chiave della comprensione del linguaggio naturale consiste nell'identificare le entità usate in un'interazione con l'utente. Guarda il video per iniziare a usare le entità.

Un'entità può essere pensata come un'unità di informazioni che rappresenta un certo tipo di argomento del mondo reale, come un numero di telefono, un codice postale, una città o persino il nome di una persona. Con la conoscenza concessa dalle entità, un copilota può riconoscere in modo intelligente le informazioni rilevanti da un input dell'utente e salvarle per un uso successivo.

Entità predefinite

Le entità nei copiloti ti consentono di archiviare le informazioni in gruppi simili.

Pronto all'uso, Microsoft Copilot Studio viene fornito con una serie di entità predefinite, che rappresentano le informazioni stereotipate più comunemente utilizzate nei dialoghi del mondo reale, come età, colori, numeri e nomi.

Con la conoscenza concessa dalle entità, un copilota può riconoscere in modo intelligente le informazioni rilevanti da un input dell'utente e salvarle per un uso successivo.

Per aiutare a capire questa nozione, l'entità Denaro può essere utilizzata come esempio.

  1. In Microsoft Copilot Studio, seleziona Entità nel menu di spostamento.

    Vai alla scheda Accedere alla scheda Entità.

    Verrà visualizzato un elenco delle entità predefinite disponibili.

    Riquadro Entità.

  2. Seleziona l'entità Denaro che aprirà il riquadro dei dettagli per l'entità.

    Descrizione entità Denaro.

Qui puoi vedere una spiegazione di questa entità e i modi in cui può essere utilizzata per cercare informazioni relative a denaro o valuta dall'input di un utente.

Ad esempio, quando un utente inserisce "Costa 1.000 dollari", usando questa entità monetaria il copilota sa che "1.000 dollari" rappresenta l'informazione sul tipo di denaro. Quando il copilota estrae questa entità e la salva in una variabile, salverà "1.000" come numero anche se le informazioni circostanti erano testo.

Entità personalizzate

Le entità predefinite coprono tipi di informazioni di uso comune, ma in alcune occasioni, ad esempio quando si crea un copilota con uno scopo specifico, è necessario insegnare al modello di comprensione del linguaggio del copilota alcune conoscenze specifiche del dominio.

Ad esempio, supponiamo che si desideri costruire un copilota per un negozio all'aperto. In questo caso, dovrai insegnare al copilota a riconoscere la categoria "prodotto per ingranaggi esterni" in una finestra di dialogo.

Per effettuare questa operazione, devi creare un'entità personalizzata. In questo caso, è possibile creare un'entità che fornisce al copilota la conoscenza di tutte le categorie di prodotti per esterni.

  1. In Microsoft Copilot Studio, seleziona Entità nel menu di spostamento.

    Accedere alla scheda Entità per creare una nuova entità.

  2. Seleziona Nuova entità nel menu principale.

    Selezionare Nuova entità.

  3. Si apre un riquadro in cui è possibile scegliere il tipo di entità: entità Elenco chiuso o entità Espressione regolare (regex).

Entità Elenco chiuso

Le entità Elenco chiuso consentono di definire un elenco di elementi. Sono più appropriate per elenchi di piccole dimensioni facili da gestire e con etichette di elementi semplici.

Screenshot della finestra di creazione di entità, con l'opzione Elenco chiuso evidenziata.

Selezionando questa opzione durante la creazione di un'entità verrà visualizzato un riquadro in cui è possibile specificare il nome dell'entità, una descrizione facoltativa e inserire gli elementi che vuoi includere nell'entità.

Screenshot del riquadro dell'elenco delle entità.

Quando inserisci gli elementi puoi:

  • Selezionare ogni elemento per cambiarne il nome.
  • Selezionare l'icona cestino per eliminare l'elemento dall'elenco.
  • Selezionare + Sinonimi (o selezionare i sinonimi elencati se sono già stati aggiunti) per aprire il riquadro Modifica sinonimi.

Puoi aggiungere sinonimi per espandere manualmente la logica di corrispondenza per ogni elemento nell'elenco dell'entità. Ad esempio, nell'elemento "escursionismo", puoi aggiungere "trekking" e "alpinismo" come sinonimi.

Screenshot del riquadro Modifica sinonimi QOrder.

Per ogni entità puoi anche abilitare Corrispondenza intelligente.

La corrispondenza intelligente fa parte dell'intelligence supportata dal modello di comprensione del linguaggio del copilota. Con questa opzione abilitata, il copilota interpreterà l'input dell'utente utilizzando la logica fuzzy, in base agli elementi elencati nell'entità.

In particolare, il copilota correggerà automaticamente gli errori di ortografia ed espanderà semanticamente la relativa logica di corrispondenza. Ad esempio, il copilota può abbinare automaticamente "softball" a "baseball".

Screenshot dell'opzione Corrispondenza intelligente.

Quando hai finito di creare o modificare l'entità, seleziona Salva per salvare e tornare all'elenco delle entità. Seleziona Chiudi per annullare le modifiche (verrà visualizzata un'opzione che ti consente di tornare a modificare l'entità nel caso in cui tu abbia selezionato accidentalmente l'opzione sbagliata).

Entità Espressione regolare (regex)

Le entità Espressione regolare (regex) consentono di definire modelli logici che puoi utilizzare per abbinare ed estrarre informazioni da un input. Le entità Regex sono ideali per la corrispondenza di modelli complessi in base all'input di un utente o se devi consentire variazioni specifiche nel modo in cui un utente potrebbe formattare o immettere il proprio input in una conversazione.

È possibile usare un'entità regex, ad esempio, per identificare elementi come un ID di traccia, un numero di licenza, un numero di carta di credito o un indirizzo IP in una stringa che l'utente inserisce nel copilota.

Screenshot della finestra di creazione di entità, con l'opzione Regex evidenziata.

Selezionando questa opzione durante la creazione di un'entità verrà visualizzato un riquadro in cui è possibile specificare il nome dell'entità, una descrizione facoltativa e inserire il modello regex che deve essere utilizzato per abbinare ed estrarre elementi dell'entità dall'input.

Screenshot del riquadro dell'entità regex.

Un'entità regex di Microsoft Copilot Studio utilizza la sintassi delle espressioni regolari .NET.

Per impostazione predefinita, la corrispondenza del modello fa distinzione tra maiuscole e minuscole; per disattivare questa funzionalità, usa l'opzione di espressione regolare (?i) nella stringa del modello. Alcuni esempi di base sono inclusi nel riquadro dell'entità regex e ulteriori informazioni sulla sintassi e altri esempi possono essere trovati nell'argomento Linguaggio delle espressioni regolari - Riferimento rapido.

Se devi adattare l'espressione regolare a più modelli, puoi utilizzare l'operatore di alternanza | per concatenare espressioni regolari. Ad esempio, puoi combinare due modelli regex per cercare il vecchio formato e quello nuovo di un codice ID prodotto.

Quando hai finito di creare o modificare l'entità, seleziona Salva per salvare e tornare all'elenco delle entità. Seleziona Chiudi per annullare le modifiche (verrà visualizzata un'opzione che ti consente di tornare a modificare l'entità nel caso in cui tu abbia selezionato accidentalmente l'opzione sbagliata).

Uso delle entità in una conversazione

Ora che hai completato l'attività di fornire al copilota la conoscenza degli attrezzi da esterno creando quell'entità di categoria di prodotti e alcune altre entità personalizzate, puoi iniziare a usarle quando costruisci una conversazione del copilota.

  1. Vai alla Pagina Argomenti per il copilota che desideri modificare.

  2. Apri l'area del contenuto per l'argomento a cui desideri aggiungere un'entità.

  3. Seleziona Aggiungi nodo (+), quindi seleziona Poni una domanda.

    Screenshot dell'aggiunta di un nodo.

  4. In Identifica, seleziona l'entità che hai creato in Entità personalizzate.

    Nodo domanda con selezione entità.

  5. Puoi anche facoltativamente selezionare elementi da mostrare come pulsanti. Ad esempio, se desideri mostrare alcune categorie come pulsanti per consentire agli utenti di sceglierli comodamente come input, puoi semplicemente scegliere Seleziona opzioni utente e quindi selezionali dall'elenco che contiene gli elementi aggiunti quando hai creato l'entità personalizzata.

    Aggiunta di nodi condizione.

    Più nodi condizione.

  6. Denomina la variabile per l'output della risposta dell'utente, se necessario.

Riempimento slot

Il riempimento slot è un concetto di comprensione del linguaggio naturale che indica il salvataggio di un'entità estratta su un oggetto. In Microsoft Copilot Studio il riempimento slot implica l'inserimento del valore dell'entità estratta in una variabile.

Continueremo a usare l'argomento degli ingranaggi esterni come esempio, che viene attivato digitando "Voglio comprare qualcosa" nella chat di prova.

L'argomento viene attivato correttamente e il copilota richiede la categoria di prodotto, mostrando anche le opzioni di pulsanti specificate durante la creazione del nodo Poni una domanda. Nella struttura della finestra di dialogo, il rilevamento tra gli argomenti mostra anche che il copilota è in esecuzione sul nodo della domanda appena modificato.

rilevamento tra argomenti.

Un utente può utilizzare le scelte predefinite selezionando uno dei pulsanti. In alternativa, puoi anche digitare "trekking" e vedere se esegue il mapping su "escursionismo", perché quelle parole sono state definite come sinonimi.

Rilevamento aggiuntivo tra argomenti.

Nel rilevamento tra gli argomenti, mostra che la finestra di dialogo è correttamente indirizzata al percorso in cui il valore della categoria di prodotti è "Escursionismo". Puoi controllare il valore della variabile dalla finestra di controllo della variabile nella parte inferiore dell'area del contenuto. Nella finestra di controllo, mostra che il valore della variabile è "Escursionismo".

In sostanza, il riempimento dello slot è avvenuto inserendo l'entità estratta "Escursionismo" nella variabile VarProductCategory.

Finestra di controllo della variabile.

Puoi inoltre utilizzare ciò che è noto come "riempimento di slot proattivo" in cui l'utente può specificare più informazioni da mappare su più entità. Il copilota è in grado di comprendere automaticamente quali informazioni appartengono a quale entità. In caso di dubbi sulla mappatura prevista, verrà richiesto di essere più specifici fornendo le opzioni.

In questo esempio, l'utente ha scritto "Voglio comprare alcuni attrezzi da trekking". Ciò include sia la frase trigger che indica che l'utente desidera acquistare attrezzi e fornisce anche una seconda informazione: il tipo di attrezzo corrente. In questo caso, il copilota inserisce entrambe le entità per l'acquisto di attrezzi e per il tipo di attrezzi.

Slot filling multiplo e proattivo.

Nel rilevamento tra gli argomenti, puio vedere che il copilota accetta questo input dell'utente e salta in modo intelligente il nodo della domanda che richiede la categoria di prodotto.

Il copilota ascolta sempre attivamente l'input dell'utente, ricordando in anticipo le informazioni in modo da poter saltare passaggi non necessari a seconda dei casi.

Riavviamo nuovamente il test e proviamo un altro caso. Questa volta, puoi aggiungere un paio di nodi di domande che chiedono il tipo di attrezzatura da trekking e la fascia di prezzo (usando l'entità Denaro).

Questa volta, quando viene presentata la domanda sulla categoria di prodotto, invece di indicare al copilota solo la categoria di prodotto, l'utente può indicare "Voglio comprare un paio di scarpe da trekking sotto i 100 $". In questo esempio, il copilota non è solo in grado di instradarsi sul percorso corretto della categoria di prodotti escursionistici, ma riescea riempire attivamente anche gli slot chiedendo il tipo di attrezzatura da trekking e le informazioni sulla fascia di prezzo target.

rilevamento tra argomenti per categorie di prodotti e prezzi.

Il riempimento proattivo degli slot può essere controllato manualmente a livello di nodo. Se desideri sempre richiedere la domanda all'interno di un nodo specifico, indipendentemente dal fatto che lo slot sia stato riempito dalle risposte degli utenti precedenti, puoi disabilitare l'opzione Salta domanda per quel nodo domanda.

Ignora la domanda.

Guarda una dimostrazione video dettagliata