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. L'assistenza knowledge base generativa proattiva supporta il contesto di ricerca, più query suggerite e puoi personalizzare gli eventi di avvio.
Contesto di ricerca
L'assistenza knowledge base generativa proattiva genera una query di ricerca e un contesto. Estrae le informazioni dalla conversazione come coppie chiave-valore per migliorare il contesto di ricerca e fornire risposte migliori alla query di ricerca.
Puoi anche disattivare il contesto di ricerca. In alcuni scenari, puoi disattivare l'utilizzo del contesto di ricerca e utilizzare solo la query. Controlla questa impostazione con il campo disable_query_search_context. Quando questo campo è impostato su true, l'assistenza knowledge base generativa proattiva genera il contesto di ricerca, ma non lo aggiunge alla query di ricerca, che viene inviata alla knowledge base.
Più query suggerite
L'assistenza proattiva basata sull'AI generativa può generare più query pertinenti per diversi argomenti discussi in una conversazione. Utilizza la query principale per la ricerca automatica di conoscenze e fornisce query aggiuntive nella risposta che l'agente può utilizzare, se necessario.
Personalizzare l'avvio dell'evento
Per impostazione predefinita, un CUSTOMER_MESSAGE avvia i suggerimenti dell'assistenza knowledge base generativa proattiva. Per definire quale evento avvia un nuovo suggerimento dell'assistenza generativa proattiva, scegli una delle seguenti opzioni di valore per il campo suggestion_trigger_event.
CUSTOMER_MESSAGE: mantieni il messaggio predefinito ricevuto dall'utente finale.AGENT_MESSAGE: un messaggio viene inviato dall'agente umano.END_OF_UTTERANCE: l'assistenza knowledge base proattiva basata sull'AI generativa rileva la fine dell'enunciato di un utente.
Implementare l'assistenza proattiva basata sull'AI generativa
Segui questi passaggi per iniziare a utilizzare l'assistenza proattiva basata sull'AI generativa.
Passaggio 1: crea un profilo di conversazione
Crea un profilo di conversazione utilizzando la console Agent Assist o l'API. Ti consigliamo di creare un profilo conversazionale utilizzando la console Agent Assist.
Console
- Attiva il tipo di suggerimento Generative Knowledge Assist e collegalo all'agente di datastore basato sul flusso o all'agente di datastore basato sul playbook del passaggio precedente. In questo modo, l'agente di datastore basato sul flusso o l'agente di datastore basato sul playbook 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 basato sul flusso o sul playbook 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 UI e nel simulatore della console Agent Assist.

API
I seguenti passaggi creano un ConversationProfile con un oggetto HumanAgentAssistantConfig. Puoi eseguire queste azioni anche utilizzando la console di Agent Assist.
Per creare un profilo di conversazione, chiama il metodo create sulla risorsa ConversationProfile e aggiorna `baseline_model_version`.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:- PROJECT_ID: il tuo ID progetto
- LOCATION_ID: l'ID della tua località
- AGENT_ID: l'ID dell'agente di datastore basato sul flusso o sul playbook del passaggio precedente
{ "name": "projects/PROJECT_ID/locations/LOCATION/conversationProfiles/PROFILE_ID", "human_agent_assistant_config": { "human_agent_suggestion_config": { "feature_configs": [ { "suggestion_feature": { "type": "KNOWLEDGE_ASSIST" }, "query_config": { "dialogflow_query_source": { "agent": "projects/PROJECT_ID/locations/LOCATION/agents/AGENT_ID" } }, "conversation_model_config": { "baseline_model_version": "2.0" } "disable_query_search_context": false, "enableQuerySuggestionWhenNoAnswer": false, "suggestion_trigger_event": "END_OF_UTTERANCE", } ] } } }
Passaggio 2: gestisci le conversazioni in fase di runtime
L'assistenza knowledge base 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 sostituzioni seguenti:
- PROJECT_ID: l'ID del tuo progetto cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_PROFILE_ID: l'ID che hai ricevuto durante la creazione del profilo 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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta 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 il partecipante utente alla conversazione:
REST
Per creare un utente partecipante, chiama il metodo create sulla risorsa Participant.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID del tuo progetto cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_ID: l'ID della 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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Crea un agente-partecipante
Aggiungi un agente partecipante alla conversazione:
REST
Per creare un partecipante agente, chiama il metodo create sulla risorsa
Participant.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID del tuo progetto cloud
- LOCATION_ID: il tuo ID località
- CONVERSATION_ID: l'ID della 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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta 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'operatore umano e dell'utente. 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 sulla risorsa
Participant.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: il tuo ID progetto
- CONVERSATION_ID: l'ID della 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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Aggiungere 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 sostituzioni seguenti:
- PROJECT_ID: il tuo ID progetto
- CONVERSATION_ID: l'ID della conversazione
- PARTICIPANT_ID: l'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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta 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 sostituzioni seguenti:
- PROJECT_ID: il tuo ID progetto GCP
- CONVERSATION_ID: l'ID 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 saperne di più, consulta la documentazione di riferimento dell'API Agent Search Python.
Per eseguire l'autenticazione in Agent Search, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Simulatore
Puoi testare l'agente datastore basato sul flusso o sul playbook nel simulatore di Assistente agente.

Nell'esempio precedente, l'agente del datastore basato sul flusso fornisce i seguenti suggerimenti:
- Query suggerita: Tempo di elaborazione del rimborso.
- Risposta generata dall'IA 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 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 dell'assistenza knowledge base generativa proattiva e li fornisca tramite Pub/Sub.
Puoi anche attivare questa configurazione dalla console Agent Assist.

Accedere ai dati tramite gli insight sulla customer experience
In alternativa, le query e le risposte generate dall'assistenza proattiva basata sull'AI generativa vengono compilate automaticamente in Customer Experience Insights. 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 risposte 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 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", ] } } } }