Condividi tramite


Usa entità e compilazione slot negli agenti

Una gran parte delle conversazioni degli agenti in Copilot Studio è la comprensione del linguaggio naturale, che è la capacità dell'IA di comprendere l'intento di un utente. Se ad esempio l'utente potrebbe dire: "Ho provato a usare la mia gift card ma non ha funzionato" e l'agente sa indirizzarlo all'argomento relativo alle gift card 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 agente può riconoscere in modo intelligente le informazioni rilevanti da un input dell'utente e salvarle per un uso successivo.

Entità predefinite

Le entità negli agenti ti consentono di archiviare le informazioni in gruppi simili.

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

Con la conoscenza concessa dalle entità, un agente 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. Apri l'agente in Copilot Studio e seleziona Impostazioni nella parte superiore della pagina, quindi seleziona Entità dal menu.

    Viene visualizzata una lista dei entità predefinite disponibili.

    Riquadro Entità.

  2. Seleziona l'entità Denaro che per aprire 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 l'agente sa che "1.000 dollari" rappresenta l'informazione sul tipo di denaro. Quando l'agente estrae questa entità e la salva in una variabile, salva "1.000" come numero anche se le informazioni circostanti erano testo.

Entità personalizzate

Le entità predefinite coprono i tipi di informazioni comunemente utilizzati. In alcune occasioni, ad esempio quando si crea un agente che svolge uno scopo specifico, potrebbe essere necessario insegnare al modello di comprensione del linguaggio dell'agente conoscenze specifiche del dominio.

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

Per prima cosa, crea un'entità personalizzata. In questo caso, è possibile creare un'entità che fornisce all'agente la conoscenza di tutte le categorie di prodotti per esterni.

  1. Apri l'agente in Copilot Studio e seleziona Impostazioni nella parte superiore della pagina, quindi seleziona Entità dal menu.

  2. Seleziona Aggiungi un'entità>Nuova entità.

    Selezionare Nuova entità.

  3. Seleziona il tipo di entità desiderato: un' entitàelenco chiuso o un'entità espressione regolare (regex).

Entità Elenco chiuso

Le entità Elenco chiuso consentono di definire un elenco di elementi. Queste entità 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 e cambiarne il nome.
  • Selezionare l'icona cestino per eliminare l'elemento dall'elenco.
  • Selezionare + Sinonimi (oppure 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 dell'agente. Con questa opzione abilitata, l'agente interpreterà l'input dell'utente utilizzando la logica fuzzy, in base agli elementi elencati nell'entità.

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

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.

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 nell'agente.

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

Dopo aver selezionato questa opzione è 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 Copilot Studio utilizza la sintassi delle espressioni regolari .NET.

Per impostazione predefinita, la corrispondenza del modello fa distinzione tra lettere maiuscole e minuscole. Per disattivare questa funzionalità, usa l'opzione di espressione regolare (?i) nella stringa del modello. Nel riquadro delle entità regex sono inclusi alcuni esempi di base. Per maggiori informazioni sulla sintassi e per altri esempi, vedi 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.

Uso delle entità in una conversazione

Ora che hai completato l'attività di fornire all'agente 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 agente.

  1. Vai alla pagina Argomenti per l'agente che desideri modificare.

  2. Apri l'argomento per un'entità che desideri raccogliere.

  3. Seleziona l'icona Aggiungi nodo , quindi seleziona Fai una domanda.

  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 scegliere Seleziona opzioni per l'utente e quindi selezionali dall'elenco che contiene gli elementi aggiunti quando hai creato l'entità personalizzata.

    Screenshot che mostra una selezione di valori di entità da visualizzare come pulsanti in fase di esecuzione.

  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 Copilot Studio il riempimento slot implica l'inserimento del valore dell'entità estratta in una variabile.

Continuiamo a usare l'argomento delle attività di campeggio, che viene attivato digitando "Voglio fare qualcosa" nella chat di prova, come esempio.

L'argomento viene attivato correttamente e l'agente richiede il tipo di attività, 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 l'agente è 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.

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 VarCampType.

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à. L'agente è 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 scrive "Mi annoio, ma mi piace l'alpinismo". Questo messaggio include sia la frase che indica che l'utente desidera aiuto per le attività all'aperto, sia una seconda informazione: "alpinismo", che è un sinonimo definito dall'entità per l'escursionismo. In questo caso, l'agente inserisce entrambe le entità per la scelta di un'attività all'aperto e per il tipo di attività.

Slot filling multiplo e proattivo.

Nel rilevamento tra gli argomenti, puio vedere che l'agente accetta questo input dell'utente e salta in modo intelligente il nodo della domanda che richiede il tipo di attività.

L'agente 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 quando tempo hai a disposizione per l'attività (usando dell'entità Durata) e l'intervallo di prezzo (usando l'entità Denaro).

Questa volta, quando viene presentata la domanda sulla categoria di prodotto, invece di dire all'agente solo la categoria di prodotto, l'utente può dire "Voglio acquistare un paio di scarponi da trekking sotto i 100 USD". In questo esempio, l'agente non solo è in grado di indirizzare al percorso corretto della categoria di prodotto per l'escursionismo, ma anche di riempire attivamente gli slot in cui si richiede 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. Esegui i seguenti passaggi per disabilitare l'opzione Salta la domanda.

  1. Seleziona l'icona Altro () del nodo Domanda, quindi seleziona Proprietà. Viene visualizzato il riquadro Proprietà domanda.

    Apri il riquadro delle proprietà Domanda.

  2. Nel riquadro Proprietà della domanda, seleziona Comportamento delle domande.

  3. Nel riquadro Comportamento delle domande, in Salta la domanda, seleziona Chiedi ogni volta, quindi seleziona Salva in cima alla pagina.

    Ignora la domanda.