A assistência de conhecimentos generativa fornece respostas às perguntas do seu agente com base nas informações dos documentos que fornece. Pode especificar o nome do domínio ou carregar documentos para um agente de armazenamento de dados indexar. A assistência de conhecimentos generativos sintetiza essas informações com a conversa em curso e os metadados dos clientes disponíveis para dar uma resposta mais relevante e oportuna ao seu agente.
A assistência de conhecimentos generativa proativa segue a conversa em curso entre o agente e o cliente. Fornece proativamente sugestões de consultas de pesquisa com base no contexto da conversa atual e na resposta.
Crie um agente de armazenamento de dados
A menos que seja o proprietário do projeto, precisa destas funções para criar um agente de arquivo de dados:
- Dialogflow API Admin
- Administrador do Discovery Engine
Ative a API AI Applications na consola do Vertex AI.
Para criar o agente, siga os passos em Agentes de armazenamento de dados.
Responda a perguntas dos seus agentes humanos
O agente de armazenamento de dados pode responder às perguntas dos seus agentes humanos com base nos documentos que forneceu.
Passo 1: crie um perfil de conversa
Crie um perfil de conversa através da consola do Agent Assist ou da API.
Crie a partir da consola
- Tem de ativar o tipo de sugestão de assistência de conhecimento generativo e associá-lo ao agente de armazenamento de dados do passo anterior.
- Opcional: use a caixa de verificação Desativar registo de consultas de pesquisa do agente para indicar se quer que a Google recolha e armazene consultas de pesquisa ocultadas para uma potencial melhoria da qualidade.
- Pode usar a caixa de verificação Ativar consulta aumentada de conversa para indicar se quer ter em consideração o contexto da conversa entre o agente humano e o utilizador ao gerar a resposta para a consulta de pesquisa.
Crie a partir da API
Os passos seguintes ilustram como criar um ConversationProfile com um objeto HumanAgentAssistantConfig. Também pode realizar estas ações através da consola do Agent Assist.
Para criar um perfil de conversa, chame o método create no recurso ConversationProfile.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:- PROJECT_ID: o ID do seu projeto
- LOCATION_ID: o ID da sua localização
- AGENT_ID: o ID do agente da loja de dados do passo anterior
{ "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 cria um perfil de conversa na consola do Agent Assist, o Agent Assist ativa automaticamente a ajuda de conhecimentos generativa e a ajuda de conhecimentos generativa proativa. Para desativar a assistência de conhecimentos generativa proativa, tem de criar o seu perfil de conversa através da API.
Passo 2: use um agente de armazenamento de dados
Opcionalmente, use a API
SearchKnowledge
para obter as respostas do agente de armazenamento de dados. Também pode usar as seguintes configurações como parte do seu pedido SearchKnowledge
:
querySource
: defina este campo para indicar se um agente escreveu a consulta ou se a assistência de conhecimentos generativos proativa a sugeriu automaticamente.exactSearch
: defina este campo para indicar se deve pesquisar a consulta de entrada exata sem reescrever a consulta.endUserMetadata
: defina este campo para incluir informações adicionais sobre o utilizador final que melhoram a resposta gerada. Para mais detalhes, consulte a página de personalização do desempenho do agente da loja de dados.searchConfig
: defina este campo para ter um controlo adicional para aumentar e filtrar documentos de conhecimentos. Para mais detalhes, consulte a página de configuração de pesquisa de desempenho do agente de armazenamento de dados.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto
- LOCATION_ID: o ID da sua localização
- CONVERSATION_PROFILE_ID: o ID do perfil de conversa do passo anterior
- SESSION_ID: o ID da sua sessão de pesquisa O histórico de pesquisas da mesma sessão pode afetar o resultado da pesquisa. Pode usar o seguinte ID da conversa para o ID da sessão.
- CONVERSATION_ID: a conversa (entre o agente humano e o utilizador final) em que o pedido de pesquisa é acionado
- MESSAGE_ID: a mensagem de conversa mais recente quando o pedido de pesquisa é acionado
Segue-se um exemplo de um pedido 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" } }
Opcionalmente, indique os nomes dos recursos conversation
e latest_message
se a pesquisa do agente ocorrer durante uma conversa com um utilizador. Estes dois campos são obrigatórios se ativar a opção enable_conversation_augmented_query
e preferir melhorar a experiência de resposta a consultas com o contexto conversacional entre o seu agente e o utilizador.
Simulator
Teste o seu agente de armazenamento de dados no simulador do Agent Assist.
No exemplo anterior, o agente de armazenamento de dados responde à consulta do utilizador What is the refund
processing time?
com as seguintes informações:
- Resposta gerada pela IA generativa: quando o pacote com a sua devolução chega ao centro de devolução do vendedor, o processamento pode demorar até 7 dias úteis adicionais. Verifique o estado do reembolso com o número de acompanhamento da devolução que encontra na página de encomendas.
- Título do documento de conhecimentos relevante: Devoluções e reembolsos.
Sugira proativamente perguntas e respostas aos seus agentes
A assistência de conhecimentos generativos proativa acompanha uma conversa em curso e fornece proativamente sugestões de consultas de pesquisa e respostas.
Passo 1: crie um perfil de conversa
Crie um perfil de conversa através da consola do Agent Assist ou da API. Recomendamos que crie um perfil de conversa através da consola do Agent Assist.
Crie a partir da consola
- Ative o tipo de sugestão Assistente de conhecimento generativo e associe-o ao agente de armazenamento de dados do passo anterior. Isto permite que o agente de armazenamento de dados forneça proativamente sugestões de consultas e respostas, e responda a consultas de pesquisa manuais dos seus agentes humanos.
- Opcional: use a caixa de verificação Mostrar todas as consultas sugeridas para a conversa para que o agente de armazenamento de dados mostre todas estas consultas, mesmo quando não for encontrada uma resposta nos seus documentos de conhecimentos. Isto destina-se a testar que consultas podem ser extraídas da conversa em curso.
- Opcional: use a caixa de verificação Load proactive answers asynchronously (Carregar respostas proativas de forma assíncrona) para receber apenas sugestões de consultas. Pode enviar manualmente a consulta sugerida para a API SearchKnowledge e enviá-la automaticamente no simulador da consola do Agent Assist e nos módulos da IU.
Crie a partir da API
Os passos seguintes criam um ConversationProfile com um objeto HumanAgentAssistantConfig. Também pode realizar estas ações através da consola do Agent Assist.
Para criar um perfil de conversa, chame o método create no recurso ConversationProfile.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:- PROJECT_ID: o ID do seu projeto
- LOCATION_ID: o ID da sua localização
- AGENT_ID: o ID do agente da loja de dados do passo anterior
{ "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, } ] } } }
Passo 2: processe conversas no tempo de execução
A assistência de conhecimentos generativa proativa processa as conversas em tempo de execução para fornecer proativamente sugestões de consultas de pesquisa com base no contexto da conversa atual e na resposta.
Crie uma conversa
Primeiro, tem de criar uma conversa:
REST
Para criar uma conversa, chame o método create
no recurso Conversation
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto do Google Cloud
- LOCATION_ID: o ID da sua localização
- CONVERSATION_PROFILE_ID: o ID que recebeu quando criou o perfil de conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
Corpo JSON do pedido:
{ "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "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 do 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 de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Crie um utilizador participante
Adicione participantes (utilizadores e agentes) à conversa para ver sugestões. Primeiro, adicione o participante do utilizador à conversa:
REST
Para criar um utilizador participante, chame o método create
no recurso Participant
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto do Google Cloud
- LOCATION_ID: o ID da sua localização
- 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 do pedido:
{ "role": "END_USER", }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "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 o novo ID do participante-utilizador.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Crie um participante do tipo agente
Adicione um agente-participante à conversa:
REST
Para criar um participante do tipo agente, chame o método create
no recurso Participant
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto do Google Cloud
- LOCATION_ID: o ID da sua localização
- 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 do pedido:
{ "role": "HUMAN_AGENT", }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "HUMAN_AGENT" }
O segmento do caminho após participants
contém o seu novo ID de participante-agente humano.
Python
Para mais informações, consulte a documentação de referência da API Python de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Adicione e analise uma mensagem do agente
Sempre que um dos participantes escrever uma mensagem na conversa, tem de enviar essa mensagem para a API para processamento. O agente de armazenamento de dados baseia as suas sugestões na análise das mensagens dos agentes humanos e dos utilizadores. No exemplo seguinte, o agente humano inicia a conversa perguntando "Em que posso ajudar?"
Ainda não foram devolvidas sugestões 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 qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto
- CONVERSATION_ID: o ID da conversa
- PARTICIPANT_ID: o ID do 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 do pedido:
{ "textInput": { "text": "How may I help you?", "languageCode": "en-US" } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "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 de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Adicione uma mensagem do utilizador para sugestões
Em resposta ao agente, o utilizador diz "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 conhecimentos.
REST
Para adicionar e analisar uma mensagem do utilizador para a conversa, chame o método analyzeContent
no recurso Participant
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto
- CONVERSATION_ID: o ID da conversa
- PARTICIPANT_ID: o ID do participante utilizador final
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Corpo JSON do pedido:
{ "textInput": { "text": "When can I get my return refund?", "languageCode": "en-US" } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "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 de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Conclua a conversa
Quando a conversa terminar, use a API para a concluir.
REST
Para concluir a conversa, chame o método complete
no recurso conversations
.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu projeto da GCP
- CONVERSATION_ID: o ID que recebeu quando criou a conversa
Método HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "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 de aplicações de IA.
Para se autenticar em aplicações de IA, configure as Credenciais padrão da aplicação. Para mais informações, consulte o artigo Configure a autenticação para um ambiente de desenvolvimento local.
Simulator
Pode testar o agente de armazenamento de dados no simulador do Agent Assist.
No exemplo anterior, o agente de armazenamento de dados fornece as seguintes sugestões:
- Consulta sugerida: Tempo de processamento do reembolso.
- Resposta gerada pela IA generativa: depois de a devolução ser processada, recebe o reembolso no prazo de 7 dias. O valor do reembolso deve corresponder ao valor total dos artigos devolvidos, mas não inclui taxas de envio nem de serviço.
- Título do documento de conhecimentos relevante: Devoluções e reembolsos – Ajuda.
Passo 3: notificações de sugestões do Pub/Sub
Pode definir o campo notificationConfig
quando cria um perfil de conversa para receber notificações de sugestões. Esta opção usa o Pub/Sub para enviar notificações de sugestões para a sua aplicação à medida que a conversa avança e novas sugestões ficam disponíveis.
Se estiver a fazer a integração através da API AnalyzeContent
, tem a opção de ativar a configuração disable_high_latency_features_sync_delivery
em ConversationProfile
para garantir que a API AnalyzeContent
responde sem esperar pelas sugestões proativas de assistência de conhecimentos generativos e envia as sugestões através do Pub/Sub.
Também pode ativar esta configuração a partir da consola do Agent Assist.
Aceda aos dados através das estatísticas de conversação
Em alternativa, as suas consultas e respostas geradas pela assistência de conhecimentos generativa proativa são preenchidas automaticamente nas Estatísticas de conversas. Para aceder a estes dados, siga as instruções em Ative a integração do tempo de execução do Dialogflow.
Enviar feedback
Para ver os passos para enviar feedback, aceda a Envie feedback para o Agent Assist.
Responda às perguntas do agente
Segue-se um exemplo de um pedido JSON para enviar feedback sobre as respostas a perguntas 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", ] } } } }
Sugira proativamente perguntas e respostas
Segue-se um exemplo de um pedido 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", ] } } } }
Metadados
Se configurar metadados para um documento de conhecimento, a assistência de conhecimento generativa e a assistência de conhecimento generativa proativa devolvem os metadados do documento juntamente com a resposta.
Por exemplo, pode usar metadados para marcar se o documento de conhecimentos é um artigo privado interno ou um artigo público externo. No simulador do Agent Assist e nos módulos da IU, a assistência de conhecimentos generativa e a assistência de conhecimentos generativa proativa apresentam automaticamente um valor de metadados do documento para determinadas chaves.
gka_source_label
: o valor é apresentado diretamente no cartão de sugestão.gka_source_tooltip
: quando o valor é do tipostruct
, se passar o cursor do rato sobre o link da origem, este expande-se e apresenta o valor numa sugestão.
Se tiver os seguintes metadados para um documento de conhecimentos, o cartão de sugestão apresenta a origem como External Doc
e a sugestão apresenta doc_visibility: public doc
.
Metadados:
None
{
"title": "Public Sample Doc",
"gka_source_label": "External Doc",
"gka_source_tooltip": {
"doc_visibility": "public doc"
}
}
Suporte de idiomas
Consulte a lista completa de idiomas suportados.