L'assistenza della conoscenza generativa fornisce risposte alle domande dell'agente in base alle informazioni contenute nei documenti che fornisci. Puoi specificare il tuo nome di dominio o caricare i documenti per un agente del data store da indicizzare. L'assistenza della 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 generativa proattiva delle conoscenze 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 del datastore
A meno che tu non sia il proprietario del progetto, devi disporre di questi ruoli per creare un agente datastore:
- Dialogflow API Admin
- Discovery Engine Admin
Attiva l'API Vertex AI Agent Builder nella console Vertex AI.
Per creare l'agente, segui i passaggi descritti in Agenti di datastore.
Rispondere alle domande degli agenti umani
L'agente dell'datastore può rispondere alle domande dei tuoi agenti umani in base ai documenti che hai fornito.
Passaggio 1: crea un profilo di conversazione
Crea un profilo di conversazione utilizzando la console di Agent Assist o l'API.
Creare dalla console
- Devi attivare il tipo di suggerimento di assistenza 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 con conversazione aumentata per indicare se vuoi prendere in considerazione il contesto della conversazione tra l'agente umano e l'utente durante la generazione della risposta alla query di ricerca.
Creare dall'API
I passaggi riportati di seguito 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 della 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 posizione
- AGENT_ID: l'ID agente del tuo 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 di conversazione nella console di Agent Assist, Agent Assist attiva automaticamente sia l'assistenza basata sulla conoscenza generativa sia l'assistenza basata sulla conoscenza generativa proattiva. Per disattivare l'assistenza della conoscenza generativa proattiva, devi creare il tuo profilo di conversazione utilizzando l'API.
Passaggio 2: utilizza un agente datastore
Se vuoi, utilizza l'API
SearchKnowledge
per ricevere le risposte dall'agente dell'datastore. Puoi anche utilizzare le seguenti configurazioni nell'ambito della richiesta SearchKnowledge
:
querySource
: imposta questo campo per indicare se un agente ha digitato la query o se l'assistenza della conoscenza generativa proattiva l'ha suggerita automaticamente.exactSearch
: imposta questo campo per indicare se cercare la query di input esatta senza riscriverla.endUserMetadata
: imposta questo campo per includere informazioni aggiuntive sull'utente finale che migliorano la risposta generata. Per maggiori dettagli, consulta la pagina Personalizzazione del rendimento dell'agente Data Store.searchConfig
: imposta questo campo per un controllo aggiuntivo per migliorare e filtrare i documenti della conoscenza. Per maggiori dettagli, consulta la pagina di configurazione della ricerca del rendimento dell'agente del 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 posizione
- CONVERSATION_PROFILE_ID: l'ID profilo della conversazione del passaggio precedente
- SESSION_ID: il tuo ID sessione di ricerca La cronologia delle ricerche della stessa sessione può influire sul risultato di ricerca. Puoi utilizzare l'ID conversazione riportato di seguito per l'ID sessione.
- CONVERSATION_ID: la conversazione (tra agente umano e 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 un esempio di richiesta JSON:
{ "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" } }
Se vuoi, 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 della conversazione tra l'agente e l'utente.
Simulatore
Testa l'agente del tuo datastore nel simulatore di assistenza agente.
Nell'esempio precedente, l'agente dell'datastore risponde alla query dell'utente What is the refund
processing time?
con le seguenti informazioni:
- Risposta generata con l'IA generativa: Quando il pacco con il reso arriva al centro per i resi del venditore, l'elaborazione può richiedere fino a 7 giorni lavorativi aggiuntivi. Controlla lo stato del rimborso con il numero di riferimento del reso che trovi nella pagina dei tuoi ordini.
- Il titolo del documento della knowledge base pertinente: Resi e rimborsi.
Suggerire in modo proattivo domande e risposte per gli agenti
L'assistenza della conoscenza generativa proattiva segue una conversazione in corso e fornisce in modo proattivo suggerimenti e risposte per le query di ricerca.
Passaggio 1: crea un profilo di conversazione
Crea un profilo di conversazione utilizzando la console di Agent Assist o l'API. Ti consigliamo di creare un profilo di conversazione utilizzando la console di Agent Assist.
Creare dalla console
- Attiva il tipo di suggerimento Assistenza della conoscenza generativa e collegalo all'agente datastore del passaggio precedente. In questo modo, l'agente dello datastore può fornire in modo proattivo suggerimenti di query e risposte e rispondere alle query di ricerca manuale dei tuoi agenti umani.
- (Facoltativo) Utilizza la casella di controllo Mostra tutte le query suggerite per la conversazione per fare in modo che l'agente dell'datastore dati 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 le risposte proattive in modo asincrono per ricevere solo suggerimenti di query. Puoi inviare manualmente la query suggerita all'API SearchKnowledge e inviarla automaticamente nel simulatore della console di Agent Assist e nei moduli dell'interfaccia utente.
Creare dall'API
I passaggi che seguono 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 della 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 posizione
- AGENT_ID: l'ID agente del tuo 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 esecuzione
L'assistenza della conoscenza generativa proattiva elabora le conversazioni in fase di esecuzione per fornire in modo proattivo suggerimenti per le query di ricerca in base al contesto attuale della conversazione 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 posizione
- 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 di percorso dopo conversations
contiene il nuovo ID conversazione.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Creare un utente partecipante
Aggiungi partecipanti di 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 posizione
- 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 Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 posizione
- 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 del partecipante agente umano.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 dell'archivio dati basa i suoi suggerimenti sull'analisi dei messaggi degli agenti umani e degli utenti. Nel seguente esempio, l'agente umano avvia la conversazione chiedendo "Come posso aiutarti?"
Non sono ancora stati restituiti suggerimenti nella risposta.
REST
Per aggiungere e analizzare un messaggio di un 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 Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Aggiungere un messaggio dell'utente per i suggerimenti
In risposta all'agente, l'utente dice: "Quando posso ricevere il rimborso del reso?" Questa volta, la risposta dell'API contiene una query suggerita e la risposta dell'AI generativa basata sui documenti della conoscenza.
REST
Per aggiungere e analizzare un messaggio dell'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 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 Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare 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 Python Vertex AI Agent Builder.
Per autenticarti in Vertex AI Agent Builder, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Simulatore
Puoi testare l'agente del tuo datastore nel simulatore di Agent Assist.
Nell'esempio precedente, l'agente datastore fornisce i seguenti suggerimenti:
- Query suggerita: Tempo di elaborazione del rimborso.
- Risposta generata con l'IA generativa: Dopo che il reso è stato elaborato, riceverai il rimborso entro 7 giorni. L'importo del rimborso deve corrispondere all'intero valore degli articoli restituiti, ma non include le spese di spedizione e di servizio.
- Il titolo del documento della knowledge base pertinente: Resi e rimborsi - Guida.
Passaggio 3: notifiche di suggerimenti Pub/Sub
Puoi impostare il campo notificationConfig
quando crei un profilo di conversazione per ricevere notifiche relative ai suggerimenti. Questa opzione utilizza Pub/Sub per inviare notifiche di suggerimenti alla tua applicazione man mano che la conversazione procede e diventano disponibili nuovi suggerimenti.
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'assistenza della conoscenza generativa, e inviare i suggerimenti tramite Pub/Sub.
Puoi attivare questa configurazione anche dalla console di Agent Assist.
Accedere ai dati tramite Conversational Insights
In alternativa, le query e le risposte generate dall'assistenza generativa della conoscenza proattiva vengono compilate automaticamente in Approfondimenti conversazionali. Per accedere a questi dati, segui le istruzioni riportate in Attivare l'integrazione del runtime Dialogflow.
Invia feedback
Per la procedura di invio del feedback, vai a Inviare feedback ad Agent Assist.
Rispondi alle domande dell'agente
Di seguito è riportato un esempio di richiesta JSON per l'invio di feedback sulla risposta alle 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 proattivamente 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 metadata per un documento della conoscenza, sia l'assistenza della conoscenza generativa sia l'assistenza della conoscenza generativa proattiva restituiranno i metadati del documento insieme alla risposta.
Ad esempio, puoi utilizzare i metadati per indicare se il documento della conoscenza è un articolo privato interno o un articolo pubblico esterno. Sia nel simulatore di Agent Assist sia nei moduli dell'interfaccia utente, sia l'assistenza della conoscenza generativa che l'assistenza della conoscenza generativa proattiva mostrano automaticamente un valore dei metadati del documento per determinate chiavi.
gka_source_label
: il valore viene visualizzato direttamente nella scheda del suggerimento.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 conoscenza, la scheda del suggerimento elenca la fonte 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.