Enviar feedback para o Agent Assist

Este guia descreve como enviar feedback ao Assistente pessoal sobre a qualidade de uma resposta sugerida específica. Essas informações são usadas para melhorar a qualidade das respostas sugeridas no futuro.

Tipos de feedback

O feedback se enquadra em uma de duas categorias. As informações sobre os dois tipos de feedback são transmitidas por campos em um objeto answerFeedback:

  1. Feedback implícito:indica se um agente clicou ou não em uma resposta sugerida. Essas informações estão contidas no campo booleano clicked.
  2. Feedback explícito:o nível de correção da resposta ou outras informações detalhadas sobre a resposta, fornecidas pelo agente. O nível de correção é transmitido pelo campo correctnessLevel. Opcionalmente, é possível adicionar mais detalhes ao campo agentAssistDetailFeedback como um objeto AgentAssistantFeedback.

Enviar feedback para o Agent Assist

Há um campo Answers em cada resposta do Agent Assist (por exemplo, faqAnswers, articleAnswers e smartReplyAnswers). Para enviar feedback sobre uma resposta, encontre o nome do recurso do registro de resposta. O nome do recurso tem o formato "projects/project-id/answerRecords/answer-record-id". Use o registro de resposta para chamar o método UpdateAnswerRecord e enviar AnswerFeedback sobre a resposta.

Assistência de Knowledge Assist generativa

A assistente de conhecimento generativa pode responder a perguntas do agente ou sugerir pares de perguntas e respostas de forma proativa. Esses dois recursos exigem solicitações JSON diferentes para enviar feedback.

Use o registro de resposta para chamar o método UpdateAnswerRecord para enviar AnswerFeedback e indicar possíveis eventos de feedback:

  • displayed: se a sugestão é mostrada ao agente humano.
  • clicked: se a sugestão foi clicada pelo agente humano.
  • correctness_level: se a sugestão está correta ou não. Um caso de uso típico é oferecer botões de "Gostei" e "Não gostei" para que o agente humano dê feedback.
  • answer_copied: se a resposta é copiada pelo agente humano.
  • clicked_uris: os URIs clicados pelo agente humano.

Resposta inteligente

Use o registro de resposta para chamar o método UpdateAnswerRecord para enviar AnswerFeedback para indicar dois eventos de feedback:

  1. Exibida: uma sugestão (identificada por answer-record-id retornada nas sugestões da Resposta inteligente) foi exibida na UI do agente.
  2. clicado: o agente clicou em uma sugestão (identificada por answer-record-id retornada nas sugestões de Resposta inteligente).

A sugestão foi mostrada ao agente.

curl -X PATCH 
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)"
-H "x-goog-user-project: quota-project-id"
-H "Content-Type: application/json" -d
'{ "name": "projects/project-id/answerRecords/answer-record-id", "answerFeedback": { "displayed": true } }' https://dialogflow.googleapis.com/v2/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback

A sugestão foi clicada pelo agente.

curl -X PATCH 
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)"
-H "x-goog-user-project: quota-project-id"
-H "Content-Type: application/json" -d
'{ "name": "projects/project-id/answerRecords/answer-record-id", "answerFeedback": { "clicked": true } }' https://dialogflow.googleapis.com/v2/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback

Sugestão de artigos e assistência para perguntas frequentes

O exemplo a seguir demonstra como enviar feedback direto de um agente em resposta a uma pergunta sobre a correção da sugestão. O campo correctnessLevel pode ser FULLY_CORRECT, PARTIALLY_CORRECT, NOT_CORRECT ou CORRECTNESS_LEVEL_UNSPECIFIED.

curl -X PATCH \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "x-goog-user-project: quota-project-id" \
     -H "Content-Type: application/json" -d \
'{
  "name": "projects/project-id/answerRecords/answer-record-id",
  "answerFeedback": {
    "correctnessLevel": "FULLY_CORRECT",
    "agentAssistantDetailFeedback": {},
    "clicked": true
  }
}' https://dialogflow.googleapis.com/v2/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback

O exemplo a seguir demonstra como enviar feedback indireto somente de cliques:

curl -X PATCH \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "x-goog-user-project: quota-project-id" \
     -H "Content-Type: application/json" -d \
'{
  "name": "projects/project-id/answerRecords/answer-record-id",
  "answerFeedback": {
    "clicked": true
  }
}' https://dialogflow.googleapis.com/v2/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback

Resumo

A síntese usa o feedback para calcular a duração gasta na revisão ou edição de um resumo e a taxa de edição.

curl -X PATCH \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "x-goog-user-project: quota-project-id" \
     -H "Content-Type: application/json" -d \
'{
  "name": "projects/project-id/answerRecords/answer-record-id",
  "answerFeedback": {
    "agentAssistantDetailFeedback": {
      "summarizationFeedback": {
        "startTimestamp": "2022-10-15T02:10:11.414Z",
        "submitTimestamp": "2022-10-15T02:12:41.000012345Z",
        "summaryText": "submitted summary"
      }
    }
  }
}' \
https://dialogflow.googleapis.com/v2beta1/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback.agent_assistant_detail_feedback.summarization_feedback

O feedback de resumo também oferece suporte à atualização de resumos em cada seção. Observação: apenas um campo pode ser atualizado por vez, summarizationFeedback.summaryText ou summarizationFeedback.textSections.

curl -X PATCH \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "x-goog-user-project: quota-project-id" \
     -H "Content-Type: application/json" -d \
'{
  "name": "projects/project-id/answerRecords/answer-record-id",
  "answerFeedback": {
    "agentAssistantDetailFeedback": {
      "summarizationFeedback": {
        "startTimestamp": "2022-10-15T02:10:11.414Z",
        "submitTimestamp": "2022-10-15T02:12:41.000012345Z",
        "textSections": {
          "section a": "section a summary",
          "section b": "section b summary"
        }
      }
    }
  }
}' \
https://dialogflow.googleapis.com/v2beta1/projects/project-id/answerRecords/answer-record-id?updateMask=answer_feedback.agent_assistant_detail_feedback.summarization_feedback