O Assistente de conhecimento generativo proativo acompanha uma conversa em andamento e oferece sugestões de consultas de pesquisa e respostas de forma proativa. Ele é compatível com contexto de pesquisa, várias consultas sugeridas e permite personalizar eventos de início.
Contexto da pesquisa
A assistência de conhecimento generativo proativa gera uma consulta de pesquisa e um contexto. Ela extrai informações da conversa como pares de chave-valor para melhorar o contexto da pesquisa e fornecer respostas melhores à consulta.
Também é possível desativar o contexto de pesquisa. Em alguns casos, é possível desativar o uso do contexto de pesquisa e usar apenas a consulta. Controle isso com o campo disable_query_search_context. Quando esse campo é definido como true, o Assistente de Conhecimento generativo proativo gera o contexto de pesquisa, mas não o adiciona à consulta de pesquisa, que é enviada à base de conhecimento.
Várias consultas sugeridas
O Assistente de Conhecimento generativo proativo pode gerar várias consultas relevantes para diferentes tópicos abordados em uma conversa. Ele usa a consulta principal para a pesquisa automática de conhecimento e fornece outras consultas na resposta para o agente usar, se necessário.
Personalizar o início do evento
Por padrão, um CUSTOMER_MESSAGE inicia sugestões do Assistente de Conhecimento generativo proativo. Para definir qual evento inicia uma nova sugestão proativa de assistência de conhecimento generativo, escolha uma das seguintes opções de valor para o campo suggestion_trigger_event.
CUSTOMER_MESSAGE: mantenha a mensagem padrão recebida do usuário final.AGENT_MESSAGE: uma mensagem é enviada pelo agente humano.END_OF_UTTERANCE: a assistência de conhecimento generativo proativa detecta o fim de uma declaração do usuário.
Implementar a assistência de conhecimento generativo proativa
Siga estas etapas para começar a usar o Assistente de Conhecimento generativo proativo.
Etapa 1: criar um perfil de conversa
Crie um perfil de conversa usando o console do Agent Assist ou a API. Recomendamos que você crie um perfil de conversa usando o console do Agent Assist.
Console
- Ative o tipo de sugestão Assistência de conhecimento generativo e vincule-o ao agente de repositório de dados baseado em fluxo ou em playbook da etapa anterior. Isso permite que o agente do repositório de dados baseado em fluxo ou playbook forneça proativamente sugestões de consultas e respostas e responda a consultas de pesquisa manual dos seus agentes humanos.
- Opcional: marque a caixa de seleção Mostrar todas as consultas sugeridas para a conversa para que o agente de repositório de dados baseado em fluxo ou playbook mostre todas essas consultas, mesmo quando não houver uma resposta encontrada nos seus documentos de conhecimento. Isso é destinado a testar quais consultas podem ser extraídas da conversa em andamento.
- Opcional: use a caixa de seleção Carregar respostas proativas de forma assíncrona para receber apenas sugestões de consulta. Você pode enviar manualmente a consulta sugerida para a API SearchKnowledge e automaticamente no simulador do console e nos módulos da UI do usuário do Assistente de agente.

API
As etapas a seguir criam um ConversationProfile com um objeto HumanAgentAssistantConfig. Também é possível realizar essas ações usando o console do Agent Assist.
Para criar um perfil de conversa, chame o método "create" no recurso ConversationProfile e atualize o `baseline_model_version`.
Antes de usar os dados da solicitação, faça as substituições a seguir:- PROJECT_ID: ID do projeto;
- LOCATION_ID: o ID do local
- AGENT_ID: o ID do agente do repositório de dados baseado em fluxo ou em playbook da etapa anterior
{ "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", } ] } } }
Etapa 2: processar conversas durante a execução
A assistência de conhecimento generativo proativa processa conversas durante a execução para fornecer sugestões de consultas de pesquisa com base no contexto da conversa atual e na resposta.
Criar uma conversa
Primeiro, crie uma conversa:
REST
Para criar uma conversa, chame o método create no recurso Conversation.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto do Cloud
- LOCATION_ID: o ID do local
- CONVERSATION_PROFILE_ID: o ID que você recebeu ao criar o perfil de conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
Corpo JSON da solicitação:
{
"conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"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"
}
O segmento de caminho após conversations contém o novo ID da conversa.
Python
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Criar um usuário participante
Adicione participantes humanos e agentes à conversa para ver sugestões. Primeiro, adicione o participante humano:
REST
Para criar um participante do usuário, chame o método create no recurso
Participant.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto do Cloud
- LOCATION_ID: o ID do local
- CONVERSATION_ID: o ID da conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corpo JSON da solicitação:
{
"role": "END_USER",
}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
"role": "END_USER"
}
O segmento de caminho após participants contém seu novo ID de usuário-participante.
Python
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Criar um participante do agente
Adicione um participante-agente à conversa:
REST
Para criar um participante do agente, chame o método create no recurso Participant.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto do Cloud
- LOCATION_ID: o ID do local
- CONVERSATION_ID: o ID da conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Corpo JSON da solicitação:
{
"role": "HUMAN_AGENT",
}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID",
"role": "HUMAN_AGENT"
}
O segmento de caminho após participants contém o novo ID do participante-agente humano.
Python
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Adicionar e analisar uma mensagem do agente
Sempre que um dos participantes digita uma mensagem na conversa, é necessário enviar essa mensagem à API para processamento. O agente de repositório de dados baseia as sugestões dele na análise das mensagens do usuário e do agente humano. No exemplo a seguir, o atendente humano inicia a conversa perguntando: "Como posso ajudar?"
Nenhuma sugestão foi retornada na resposta.
REST
Para adicionar e analisar uma mensagem de um agente humano na conversa,
chame o método analyzeContent no recurso
Participant.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: ID do projeto;
- CONVERSATION_ID: o ID da conversa
- PARTICIPANT_ID: seu ID de participante do agente humano
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corpo JSON da solicitação:
{
"textInput": {
"text": "How may I help you?",
"languageCode": "en-US"
}
}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"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
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Adicionar uma mensagem do usuário para sugestões
Em resposta ao agente, o usuário pergunta: "Quando posso receber o reembolso da minha devolução?" Desta vez, a resposta da API contém uma consulta sugerida e a resposta da IA generativa com base nos documentos de conhecimento.
REST
Para adicionar e analisar uma mensagem do usuário na conversa, chame o método
analyzeContent no recurso
Participant.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: ID do projeto;
- CONVERSATION_ID: o ID da conversa
- PARTICIPANT_ID: seu ID de participante do usuário final
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corpo JSON da solicitação:
{
"textInput": {
"text": "When can I get my return refund?",
"languageCode": "en-US"
}
}
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"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
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Concluir a conversa
Quando a conversa terminar, use a API para concluir a conversa.
REST
Para concluir a conversa, chame o método complete no recurso conversations.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: ID do projeto do GCP
- CONVERSATION_ID: o ID que você recebeu ao criar a conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{
"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
Para mais informações, consulte a documentação de referência da API Python do Agent Search.
Para autenticar na Pesquisa do agente, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Simulador
Você pode testar seu agente de repositório de dados baseado em fluxo ou em playbook no simulador do Agent Assist.

No exemplo anterior, o agente de repositório de dados baseado em fluxo fornece as seguintes sugestões:
- Consulta sugerida: Tempo de processamento do reembolso.
- Resposta gerada com IA generativa: depois que a devolução for processada, você vai receber o reembolso em sete dias. O valor do reembolso deve ser o valor total dos itens devolvidos, mas não inclui taxas de frete e serviço.
- Título do documento de conhecimento relevante: Devoluções e reembolsos - Ajuda.
Etapa 3: notificações de sugestões do Pub/Sub
É possível definir o campo notificationConfig ao criar um perfil de conversa para receber notificações de sugestões. Essa opção usa o Pub/Sub para enviar notificações de sugestão ao seu aplicativo à medida que a conversa avança e novas sugestões ficam disponíveis.
Se você estiver fazendo a integração pela API AnalyzeContent, poderá ativar a configuração disable_high_latency_features_sync_delivery em ConversationProfile para garantir que a API AnalyzeContent responda sem esperar pelas sugestões de Assistente de Conhecimento generativo proativo e entregue as sugestões pelo Pub/Sub.
Também é possível ativar essa configuração no console do Agent Assist.

Acessar dados pelo Customer Experience Insights
Como alternativa, as consultas e respostas geradas pelo assistente de conhecimento generativo proativo são preenchidas automaticamente no Customer Experience Insights. Para acessar esses dados, siga as instruções em Ativar a integração do tempo de execução do Dialogflow.
Enviar feedback
Para saber como enviar feedback, acesse Enviar feedback para o Agent Assist.
Responder às perguntas do agente
Confira a seguir um exemplo de solicitação JSON para enviar feedback sobre as respostas do 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", ] } } } }
Sugerir perguntas e respostas de forma proativa
Confira a seguir um exemplo de solicitação JSON para enviar feedback sobre sugestões proativas.
{ "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", ] } } } }