Assistência de conhecimento generativa

O Assistente de conhecimento generativo responde às perguntas do seu agente com base nas informações dos documentos fornecidos. Você pode especificar o nome de domínio ou fazer upload de documentos para um agente de repositório de dados baseado em fluxo ou um agente de repositório de dados baseado em playbook. O Assistente de conhecimento generativo sintetiza essas informações com a conversa em andamento e os metadados do cliente disponíveis para dar uma resposta mais relevante e oportuna ao seu agente.

Antes de começar

A menos que você seja o proprietário do projeto, precisará destas funções para criar um agente de repositório de dados:

- Dialogflow API Admin
- Discovery Engine Admin

Criar um agente de repositório de dados baseado em fluxo

  1. Ative a API AI Applications no console da Vertex AI.

  2. Para criar o agente, siga as etapas em Agentes de repositório de dados baseados em fluxo.

Criar um agente de repositório de dados baseado em playbook

  1. Ative a API AI Applications no console da Vertex AI.

  2. Para criar o agente, siga as etapas em Agentes de repositório de dados baseados em playbook.

  3. Para conectar o agente a um repositório de dados, crie uma ferramenta de repositório de dados. Consulte Exemplos de ferramentas de repositório de dados do playbook para mais informações.

Responder a perguntas dos seus agentes humanos

O agente de repositório de dados baseado em fluxo ou playbook pode responder às perguntas dos seus agentes humanos com base nos documentos fornecidos.

Etapa 1: criar um perfil de conversa

Crie um perfil de conversa usando o console do Agent Assist ou a API.

Criar no console

  1. Você precisa ativar o tipo de sugestão do Assistente de conhecimento generativo e vinculá-lo ao agente do repositório de dados baseado em fluxo ou playbook da etapa anterior.
  2. Opcional: marque a caixa de seleção Desativar o registro de consultas de pesquisa do agente para indicar se você quer que o Google colete e armazene consultas de pesquisa editadas para uma possível melhoria da qualidade.
  3. Use a caixa de seleção Ativar consulta aumentada de conversas para indicar se você quer considerar o contexto da conversa entre o atendente humano e o usuário ao gerar a resposta para a consulta de pesquisa.

Criar com a API

As etapas a seguir mostram como criar 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.

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 playbook da etapa anterior
Confira um exemplo de JSON:
  {
    "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 você cria um perfil de conversa no console do Agent Assist, o recurso de assistente de conhecimento generativo é ativado automaticamente.

Etapa 2: usar um agente de repositório de dados

Se quiser, use a API SearchKnowledge para receber as respostas do agente de repositório de dados. Também é possível usar as seguintes configurações como parte da solicitação SearchKnowledge:

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
  • CONVERSATION_PROFILE_ID: o ID do perfil de conversa da etapa anterior
  • SESSION_ID: seu ID de sessão de pesquisa
  • O histórico de pesquisa da mesma sessão pode afetar o resultado da pesquisa. Você pode usar o seguinte ID de conversa para o ID de sessão.
  • CONVERSATION_ID: a conversa (entre o agente humano e o usuário final) em que a solicitação de pesquisa é acionada.
  • MESSAGE_ID: a mensagem mais recente da conversa quando a solicitação de pesquisa é acionada

Confira um exemplo de solicitação 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 quiser, forneça os nomes de recursos conversation e latest_message se a pesquisa do agente ocorrer durante uma conversa com um usuário. Esses dois campos são obrigatórios se você ativar a opção enable_conversation_augmented_query e preferir melhorar a experiência de resposta à consulta com o contexto da conversa entre o agente e o usuário.

Simulador

Teste seu agente de repositório de dados baseado em fluxo ou playbook no simulador do Agent Assist.

No exemplo anterior, o agente do repositório de dados baseado em fluxo responde à consulta do usuário What is the refund processing time? com as seguintes informações:

  • Resposta gerada por IA generativa: quando o pacote com sua devolução chegar à central de devoluções do vendedor, o processamento pode levar até sete dias úteis. Verifique o status do reembolso com o número de rastreamento da devolução na página de pedidos.
  • Título do documento de conhecimento relevante: Devoluções e reembolsos.

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",
        ]
      }
    }
  }
}

Metadados

Se você configurar metadados para um documento de conhecimento, a assistência de conhecimento generativo e a assistência de conhecimento generativo proativa vão retornar os metadados do documento junto com a resposta.

Por exemplo, é possível usar metadados para marcar se o documento de conhecimento é um artigo interno particular ou um artigo público externo. No simulador do Agent Assist e nos módulos da interface, a Assistência de conhecimento generativa e a Assistência de conhecimento generativa proativa mostram automaticamente um valor de metadados do documento para determinadas chaves.

  • gka_source_label: o valor é mostrado diretamente no card de sugestão.
  • gka_source_tooltip: quando o valor é do tipo struct, passar o cursor sobre o link da fonte expande e mostra o valor em uma dica.

Se você tiver os seguintes metadados para um documento de conhecimento, o card de sugestão vai listar a fonte como External Doc, e a dica de ferramenta vai adicionar doc_visibility: public doc.

Metadados: None { "title": "Public Sample Doc", "gka_source_label": "External Doc", "gka_source_tooltip": { "doc_visibility": "public doc" } }

Metadados do usuário final

Anexe metadados do usuário final para melhorar e personalizar a resposta gerada pelo agente do Datastore. Para o recurso de assistência de conhecimento generativo, é possível anexar metadados do usuário final ao campo end_user_metadata ou ingerir em uma conversa com a API IngestContextReferences. É possível usar os metadados ingeridos do usuário final para a assistência de conhecimento generativo e a assistência de conhecimento generativo proativa.

Exemplo 1: anexar metadados do usuário final

{
  "query": {
     "text": "test query"
  },
  "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID",
  "sessionId": "SESSION_ID",
  "conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID",
  "querySource": "AGENT_QUERY",
  "endUserMetadata": {
    "Name": "Jack",
    "Age": 33,
    "City": "Tokyo"
  }
}

Exemplo 2: ingerir metadados do usuário final

{
  "conversation": "projects/PROJECT_ID/locations/global/conversations/CONVERSATION_ID",
  "contextReferences": {
   "gka_end_user_metadata": {
      "contextContents": [{
"content": "{\"Name\":\"Jack\",\"Age\":33,\"city\":\"Tokyo\"}",
        "contentFormat": "JSON"
      }],
      "updateMode": "OVERWRITE",
      "languageCode": "en-US"
    }
  }
}

Para mais detalhes sobre metadados do usuário final no Datastore, consulte as informações sobre a personalização do Dialogflow.

Suporte ao idioma

Confira a lista completa de idiomas disponíveis.