L'assistenza basata sull'AI generativa fornisce risposte alle domande dell'agente in base alle informazioni contenute nei documenti che fornisci. Puoi specificare il nome di dominio o caricare documenti da indicizzare per un agente datastore. L'assistenza basata sulla conoscenza generativa sintetizza queste informazioni con la conversazione in corso e i metadati dei clienti disponibili per fornire all'agente una risposta più pertinente e tempestiva.
L'assistenza proattiva basata sull'IA generativa segue la conversazione in corso tra l'agente e il cliente. Fornisce in modo proattivo suggerimenti per le query di ricerca in base al contesto della conversazione corrente e alla risposta.
Crea un agente datastore
A meno che tu non sia il proprietario del progetto, per creare un agente datastore devi disporre di questi ruoli:
- Dialogflow API Admin
- Discovery Engine Admin
Attiva l'API AI Applications nella console Vertex AI.
Per creare l'agente, segui i passaggi descritti in Agenti datastore.
Rispondere alle domande degli agenti umani
L'agente del datastore può rispondere alle domande degli agenti umani in base ai documenti che hai fornito.
Passaggio 1: crea un profilo di conversazione
Crea un profilo conversazione utilizzando la console Agent Assist o l'API.
Crea dalla console
- Devi attivare il tipo di suggerimento Assistente alla conoscenza generativa e collegarlo all'agente del datastore del passaggio precedente.
- (Facoltativo) Utilizza la casella di controllo Disattiva la registrazione delle query di ricerca dell'agente per indicare se vuoi che Google raccolga e memorizzi le query di ricerca oscurate per un potenziale miglioramento della qualità.
- Puoi utilizzare la casella di controllo Attiva query aumentata della conversazione per indicare se vuoi che il contesto della conversazione tra l'operatore umano e l'utente venga preso in considerazione durante la generazione della risposta alla query di ricerca.
Crea da API
I seguenti passaggi illustrano come creare un ConversationProfile con un oggetto HumanAgentAssistantConfig. Puoi eseguire queste azioni anche utilizzando la console Agent Assist.
Per creare un profilo di conversazione, chiama il metodo create sulla risorsa ConversationProfile.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:- PROJECT_ID: il tuo ID progetto
- LOCATION_ID: l'ID della tua località
- AGENT_ID: l'ID agente del datastore del passaggio precedente
{ "displayName": "my-conversation-profile-display-name", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [ { "suggestionFeature": { "type": "KNOWLEDGE_SEARCH" }, "queryConfig": { "dialogflowQuerySource": { "humanAgentSideConfig": { "agent": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID" } } }, "disableAgentQueryLogging": false, "enableConversationAugmentedQuery": false, } ] } } }
Quando crei un profilo conversazione nella console Agent Assist, Agent Assist attiva automaticamente sia l'assistenza basata sull'AI generativa sia l'assistenza proattiva basata sull'AI generativa. Per disattivare l'assistenza proattiva basata sull'IA generativa, devi creare il profilo di conversazione utilizzando l'API.
Passaggio 2: utilizza un agente del datastore
(Facoltativo) Utilizza l'API
SearchKnowledge
per ottenere le risposte dall'agente del datastore. Puoi anche utilizzare le seguenti configurazioni nell'ambito della tua richiesta SearchKnowledge
:
querySource
: imposta questo campo per indicare se la query è stata digitata da un agente o se è stata suggerita automaticamente dall'assistenza proattiva basata sull'AI generativa.exactSearch
: imposta questo campo per indicare se eseguire la ricerca della query di input esatta senza riscriverla.endUserMetadata
: imposta questo campo per includere ulteriori informazioni sull'utente finale che migliorano la risposta generata. Per maggiori dettagli, consulta la pagina di personalizzazione del rendimento dell'agente Data Store.searchConfig
: imposta questo campo per un controllo aggiuntivo per migliorare e filtrare i documenti della knowledge base. Per maggiori dettagli, consulta la pagina di configurazione della ricerca del rendimento dell'agente Data Store.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto
- LOCATION_ID: l'ID della tua località
- CONVERSATION_PROFILE_ID: l'ID del profilo conversazione del passaggio precedente
- SESSION_ID: l'ID della sessione di ricerca La cronologia delle ricerche della stessa sessione può influire sul risultato di ricerca. Puoi utilizzare il seguente ID conversazione per l'ID sessione.
- CONVERSATION_ID: la conversazione (tra l'agente umano e l'utente finale) in cui viene attivata la richiesta di ricerca
- MESSAGE_ID: l'ultimo messaggio della conversazione quando viene attivata la richiesta di ricerca
Ecco una richiesta JSON di esempio:
{ "parent": "projects/PROJECT_ID/locations/LOCATION_ID" "query": { "text": "What is the return policy?" } "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID" "sessionId": "SESSION_ID "conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID" "latestMessage": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID "querySource": AGENT_QUERY "exactSearch": false "searchConfig": { "filterSpecs": { "filter": "category: ANY(\"persona_B\")" } } "endUserMetadata": { "deviceOwned": "Google Pixel 7" } }
(Facoltativo) Fornisci i nomi delle risorse conversation
e latest_message
se
la ricerca dell'agente avviene durante una conversazione con un utente. Questi due campi
sono obbligatori se attivi l'opzione enable_conversation_augmented_query
e
preferisci migliorare l'esperienza di risposta alle query con il contesto conversazionale
tra l'agente e l'utente.
Simulatore
Testa l'agente del datastore nel simulatore di Assistente agente.
Nell'esempio precedente, l'agente del datastore risponde alla query dell'utente What is the refund
processing time?
con le seguenti informazioni:
- Risposta generata dall'AI generativa: quando il pacco con il reso arriva al centro resi del venditore, potrebbero essere necessari fino a 7 giorni lavorativi aggiuntivi per l'elaborazione. Controlla lo stato del rimborso con il numero di tracciamento del reso riportato nella pagina degli ordini.
- Titolo del documento di conoscenza pertinente: Resi e rimborsi.
Suggerire in modo proattivo domande e risposte per gli agenti
L'assistenza proattiva basata sull'IA generativa segue una conversazione in corso e fornisce in modo proattivo suggerimenti per le query di ricerca e risposte.
Passaggio 1: crea un profilo di conversazione
Crea un profilo conversazione utilizzando la console Agent Assist o l'API. Ti consigliamo di creare un profilo conversazione utilizzando la console Agent Assist.
Crea dalla console
- Attiva il tipo di suggerimento Assistenza basata sull'IA generativa e collegalo all'agente del datastore del passaggio precedente. In questo modo, l'agente del datastore può fornire in modo proattivo suggerimenti per query e risposte e rispondere alle query di ricerca manuale degli agenti umani.
- (Facoltativo) Utilizza la casella di controllo Mostra tutte le query suggerite per la conversazione per fare in modo che l'agente del datastore mostri tutte queste query, anche quando non viene trovata una risposta nei documenti della knowledge base. Questo è destinato a testare quali query possono essere estratte dalla conversazione in corso.
- (Facoltativo) Utilizza la casella di controllo Carica risposte proattive in modo asincrono per ricevere solo suggerimenti per le query. Puoi inviare manualmente la query suggerita all'API SearchKnowledge e inviarla automaticamente nei moduli dell'interfaccia utente e del simulatore della console Agent Assist.
Crea da API
I seguenti passaggi creano un ConversationProfile con un oggetto HumanAgentAssistantConfig. Puoi eseguire queste azioni anche utilizzando la console Agent Assist.
Per creare un profilo di conversazione, chiama il metodo create sulla risorsa ConversationProfile.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:- PROJECT_ID: il tuo ID progetto
- LOCATION_ID: l'ID della tua località
- AGENT_ID: l'ID agente del datastore del passaggio precedente
{ "displayName": "my-conversation-profile-display-name", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [ { "suggestionFeature": { "type": "KNOWLEDGE_ASSIST" }, "queryConfig": { "dialogflowQuerySource": { "agent": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID" } }, "enableQuerySuggestionWhenNoAnswer": false, } ] } } }
Passaggio 2: gestisci le conversazioni in fase di runtime
L'assistenza proattiva basata sull'AI generativa elabora le conversazioni in fase di runtime per fornire in modo proattivo suggerimenti per le query di ricerca in base al contesto della conversazione corrente e alla risposta.
Creare una conversazione
Innanzitutto, devi creare una conversazione:
REST
Per creare una conversazione,
chiama il metodo create
sulla
risorsa Conversation
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_PROFILE_ID: l'ID che hai ricevuto durante la creazione del profilo di conversazione
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
Corpo JSON della richiesta:
{ "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID", "lifecycleState": "IN_PROGRESS", "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z" }
Il segmento del percorso dopo conversations
contiene il nuovo ID conversazione.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Creare un utente partecipante
Aggiungi partecipanti utenti e agenti alla conversazione per visualizzare i suggerimenti. Innanzitutto, aggiungi l'utente partecipante alla conversazione:
REST
Per creare un utente partecipante, chiama il metodo create
sulla risorsa
Participant
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_ID: il tuo ID conversazione
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corpo JSON della richiesta:
{ "role": "END_USER", }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "END_USER" }
Il segmento di percorso dopo participants
contiene il nuovo ID utente-partecipante.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Crea un agente-partecipante
Aggiungi un agente partecipante alla conversazione:
REST
Per creare un agente-partecipante, chiama il metodo create
sulla risorsa
Participant
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_ID: il tuo ID conversazione
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corpo JSON della richiesta:
{ "role": "HUMAN_AGENT", }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "HUMAN_AGENT" }
Il segmento di percorso dopo participants
contiene il nuovo ID partecipante-agente umano.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Aggiungere e analizzare un messaggio dell'agente
Ogni volta che uno dei partecipanti digita un messaggio nella conversazione, devi inviarlo all'API per l'elaborazione. L'agente del datastore basa i suoi suggerimenti sull'analisi dei messaggi dell'utente e dell'agente umano. Nell'esempio seguente, l'operatore umano inizia la conversazione chiedendo "Come posso aiutarti?"
Nella risposta non sono ancora stati restituiti suggerimenti.
REST
Per aggiungere e analizzare un messaggio dell'agente umano nella conversazione,
chiama il metodo analyzeContent
nella
risorsa Participant
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto
- CONVERSATION_ID: il tuo ID conversazione
- PARTICIPANT_ID: il tuo ID partecipante agente umano
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corpo JSON della richiesta:
{ "textInput": { "text": "How may I help you?", "languageCode": "en-US" } }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "How may I help you?", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "HUMAN_AGENT", "createTime": "2020-02-13T00:01:30.683Z" } }
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Aggiungi un messaggio dell'utente per i suggerimenti
In risposta all'agente, l'utente chiede: "Quando riceverò il rimborso del reso?" Questa volta, la risposta dell'API contiene una query suggerita e la risposta dell'AI generativa basata sui documenti della knowledge base.
REST
Per aggiungere e analizzare un messaggio utente per la conversazione, chiama il metodo
analyzeContent
sulla risorsa
Participant
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto
- CONVERSATION_ID: il tuo ID conversazione
- PARTICIPANT_ID: il tuo ID partecipante utente finale
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corpo JSON della richiesta:
{ "textInput": { "text": "When can I get my return refund?", "languageCode": "en-US" } }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "When can I get my return refund?", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "END_USER", "createTime": "2020-02-13T00:07:35.925Z" }, "humanAgentSuggestionResults": [ { "suggestKnowledgeAssistResponse": { "knowledgeAssistAnswer": { "suggestedQuery": { "queryText": "Refund processing time" }, "suggestedQueryAnswer": { "answerText": "After your return is processed, you receive your refund in 7 days. The refund amount should be for the full value of the items returned, but doesn't include shipping & service fees.", "generativeSource": { "snippets": [ { "title": "Returns & refunds - Help", "uri": "https://example.com/", "text": "When the package with your return arrives at the seller's return center, it may take up to 7 additional business days to process. Check the status of your refund with the return tracking number found on your orders page." } ] }, }, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID" }, } } ] }
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Completare la conversazione
Al termine della conversazione, utilizza l'API per completarla.
REST
Per completare la conversazione,
chiama il metodo complete
sulla
risorsa conversations
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto Google Cloud
- CONVERSATION_ID: l'ID che hai ricevuto durante la creazione della conversazione
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID", "lifecycleState": "COMPLETED", "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z", "endTime": "2018-11-06T03:50:26.930Z" }
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API AI Applications Python.
Per autenticarti in AI Applications, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per un ambiente di sviluppo locale.
Simulatore
Puoi testare l'agente del datastore nel simulatore di Agent Assist.
Nell'esempio precedente, l'agente del datastore fornisce i seguenti suggerimenti:
- Query suggerita: Tempo di elaborazione del rimborso.
- Risposta generata dall'AI generativa: dopo l'elaborazione del reso, riceverai il rimborso entro 7 giorni. L'importo del rimborso deve corrispondere al valore totale degli articoli restituiti, ma non include le spese di spedizione e di servizio.
- Titolo del documento di conoscenza pertinente: Resi e rimborsi - Guida.
Passaggio 3: notifiche relative ai suggerimenti Pub/Sub
Puoi impostare il campo notificationConfig
quando crei un profilo di conversazione per ricevere notifiche per i suggerimenti. Questa opzione utilizza Pub/Sub per inviare notifiche di suggerimenti alla tua applicazione man mano che la conversazione procede e nuovi suggerimenti diventano disponibili.
Se esegui l'integrazione tramite l'API AnalyzeContent
, hai la possibilità di attivare la configurazione disable_high_latency_features_sync_delivery
in ConversationProfile
per assicurarti che l'API AnalyzeContent
risponda senza attendere i suggerimenti proattivi dell'assistente per la conoscenza generativa e li fornisca tramite Pub/Sub.
Puoi anche abilitare questa configurazione dalla console Agent Assist.
Accedere ai dati tramite gli insight conversazionali
In alternativa, le query e le risposte generate in modo proattivo da Generative Knowledge Assist vengono compilate automaticamente in Approfondimenti conversazionali. Per accedere a questi dati, segui le istruzioni riportate in Abilitazione dell'integrazione del runtime Dialogflow.
Invia feedback
Per la procedura di invio del feedback, vedi Inviare feedback ad Agent Assist.
Rispondere alle domande dell'agente
Di seguito è riportato un esempio di richiesta JSON per l'invio di feedback sulle domande dell'agente.
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/answerRecords/ANSWER_RECORD_ID", "answerFeedback": { "displayed": true "clicked": true "correctnessLevel": "FULLY_CORRECT" "agentAssistantDetailFeedback": { "knowledgeSearchFeedback": { "answerCopied": true "clickedUris": [ "url_1", "url_2", "url_3", ] } } } }
Suggerire in modo proattivo domande e risposte
Di seguito è riportato un esempio di richiesta JSON per l'invio di feedback sui suggerimenti proattivi.
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/answerRecords/ANSWER_RECORD_ID", "answerFeedback": { "displayed": true "clicked": true "correctnessLevel": "FULLY_CORRECT" "agentAssistantDetailFeedback": { "knowledgeAssistFeedback": { "answerCopied": true "clickedUris": [ "url_1", "url_2", "url_3", ] } } } }
Metadati
Se configuri i metadati per un documento della knowledge base, sia l'assistenza generativa della knowledge base sia l'assistenza generativa proattiva della knowledge base restituiranno i metadati del documento insieme alla risposta.
Ad esempio, puoi utilizzare i metadati per indicare se il documento della knowledge base è un articolo privato interno o un articolo pubblico esterno. Sia nel simulatore di Agent Assist che nei moduli UI, l'assistenza basata sull'AI generativa e l'assistenza basata sull'AI generativa proattiva mostrano automaticamente un valore dei metadati del documento per determinate chiavi.
gka_source_label
: Il valore viene visualizzato direttamente nella scheda dei suggerimenti.gka_source_tooltip
: quando il valore è di tipostruct
, se passi il cursore sopra il link di origine, il valore si espande e viene visualizzato in una descrizione comando.
Se hai i seguenti metadati per un documento della knowledge base, la scheda dei suggerimenti elenca l'origine come External Doc
e la descrizione comando aggiunge doc_visibility: public doc
.
Metadati:
None
{
"title": "Public Sample Doc",
"gka_source_label": "External Doc",
"gka_source_tooltip": {
"doc_visibility": "public doc"
}
}
Supporto dei linguaggi
Consulta l'elenco completo delle lingue supportate.