REST Resource: projects.locations.apps.evaluations

Recurso: Evaluation

Uma avaliação representa todas as informações necessárias para simular e avaliar um agente.

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "tags": [
    string
  ],
  "evaluationDatasets": [
    string
  ],
  "createTime": string,
  "createdBy": string,
  "updateTime": string,
  "lastUpdatedBy": string,
  "evaluationRuns": [
    string
  ],
  "etag": string,
  "aggregatedMetrics": {
    object (AggregatedMetrics)
  },
  "lastCompletedResult": {
    object (EvaluationResult)
  },
  "invalid": boolean,
  "lastTenResults": [
    {
      object (EvaluationResult)
    }
  ],
  "evaluationMetricsThresholdOverride": {
    object (EvaluationMetricsThresholds)
  },
  "evaluationMetricsConfigOverride": {
    object (EvaluationMetricsConfig)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "golden": {
    object (Evaluation.Golden)
  },
  "scenario": {
    object (Evaluation.Scenario)
  }
  // End of mutually exclusive fields.
}
Campos
name

string

Identificador. O identificador exclusivo desta avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}

displayName

string

Obrigatório. Nome de exibição da avaliação definido pelo usuário. Exclusivo em um app.

description

string

Opcional. Descrição da avaliação definida pelo usuário.

tags[]

string

Opcional. Tags definidas pelo usuário para categorizar a avaliação.

evaluationDatasets[]

string

Apenas saída. Lista de conjuntos de dados de avaliação a que a avaliação pertence. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a avaliação foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

createdBy

string

Apenas saída. O usuário que criou a avaliação.

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora de quando a avaliação foi atualizada pela última vez.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

lastUpdatedBy

string

Apenas saída. O usuário que atualizou a avaliação pela última vez.

evaluationRuns[]

string

Apenas saída. As EvaluationRuns associadas a esta avaliação.

etag

string

Apenas saída. Etag usada para garantir que o objeto não tenha sido alterado durante uma operação de leitura-modificação-gravação. Se a etag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

aggregatedMetrics

object (AggregatedMetrics)

Apenas saída. As métricas agregadas para essa avaliação em todas as execuções.

lastCompletedResult

object (EvaluationResult)

Apenas saída. O resultado mais recente desta avaliação.

invalid

boolean

Apenas saída. Se a avaliação é inválida. Isso pode acontecer se uma avaliação estiver referenciando uma ferramenta, um conjunto de ferramentas ou um agente que foi excluído.

lastTenResults[]

object (EvaluationResult)

Apenas saída. Os últimos 10 resultados desta avaliação. Isso só será preenchido se include_last_ten_results estiver definido como verdadeiro em ListEvaluationsRequest ou GetEvaluationRequest.

evaluationMetricsThresholdOverride

object (EvaluationMetricsThresholds)

Opcional. Substitui os limites de métricas para essa avaliação específica.

evaluationMetricsConfigOverride

object (EvaluationMetricsConfig)

Opcional. Substitui a configuração de métricas para essa avaliação específica.

As entradas para a avaliação. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
golden

object (Evaluation.Golden)

Opcional. As etapas de referência a serem avaliadas.

scenario

object (Evaluation.Scenario)

Opcional. A configuração de um cenário.

Fim dos campos mutuamente exclusivos.

Evaluation.Golden

As etapas necessárias para reproduzir uma conversa de ouro.

Representação JSON
{
  "turns": [
    {
      object (Evaluation.GoldenTurn)
    }
  ],
  "evaluationExpectations": [
    string
  ]
}
Campos
turns[]

object (Evaluation.GoldenTurn)

Obrigatório. As interações de ouro necessárias para reproduzir uma conversa de ouro. O número máximo de turnos permitidos é 100.

evaluationExpectations[]

string

Opcional. As expectativas de avaliação para avaliar a conversa reproduzida. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}

Evaluation.GoldenTurn

Um turno de ouro define um único turno em uma conversa de ouro.

Representação JSON
{
  "steps": [
    {
      object (Evaluation.Step)
    }
  ],
  "rootSpan": {
    object (Span)
  },
  "turnLevelMetricsThresholdsOverride": {
    object (EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds)
  },
  "hallucinationMetricBehaviorOverride": enum (EvaluationMetricsThresholds.HallucinationMetricBehavior)
}
Campos
steps[]

object (Evaluation.Step)

Obrigatório. As etapas necessárias para reproduzir uma conversa de ouro.

rootSpan

object (Span)

Opcional. O período raiz da rodada de ouro para processar e manter informações de áudio. O URI do áudio precisa conter áudio salvo em uma taxa de amostragem de 16 Khz.

turnLevelMetricsThresholdsOverride

object (EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds)

Opcional. Substituições para limites de métricas no nível da rodada.

hallucinationMetricBehaviorOverride

enum (EvaluationMetricsThresholds.HallucinationMetricBehavior)

Opcional. Substituição do comportamento da métrica de alucinação no nível da rodada.

Evaluation.Step

Uma etapa define uma ação singular que vai acontecer durante a avaliação.

Representação JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "userInput": {
    object (SessionInput)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "expectation": {
    object (Evaluation.GoldenExpectation)
  }
  // End of mutually exclusive fields.
}
Campos
A etapa a ser realizada. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
userInput

object (SessionInput)

Opcional. Entrada do usuário para a conversa.

agentTransfer

object (AgentTransfer)

Opcional. Transferir a conversa para outro agente.

expectation

object (Evaluation.GoldenExpectation)

Opcional. Executa uma expectativa na rodada atual.

Fim dos campos mutuamente exclusivos.

SessionInput

Entrada para a sessão.

Representação JSON
{
  "willContinue": boolean,
  "recordingControl": enum (SessionInput.RecordingControl),

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "text": string,
  "dtmf": string,
  "audio": string,
  "toolResponses": {
    object (ToolResponses)
  },
  "image": {
    object (Image)
  },
  "blob": {
    object (Blob)
  },
  "variables": {
    object
  },
  "event": {
    object (Event)
  }
  // End of mutually exclusive fields.
}
Campos
willContinue

boolean

Opcional. Uma flag para indicar se a mensagem atual é um fragmento de uma entrada maior na sessão de streaming bidirecional.

Quando definido como true, o agente adia o processamento até receber uma mensagem subsequente em que willContinue é false ou até que o sistema detecte um endpoint na entrada de áudio.

OBSERVAÇÃO: esse campo não se aplica a entradas de áudio e DTMF, porque elas são sempre processadas automaticamente com base no sinal de endpointing.

recordingControl

enum (SessionInput.RecordingControl)

Opcional. Se a conversa pode ser gravada e registrada a partir de agora.

Use essa opção quando o app, e não o agente, decidir o que pode ser mantido: por exemplo, quando o usuário final precisa consentir com a gravação antes que qualquer informação sobre a chamada seja armazenada.

O valor permanece em vigor até que o cliente envie um diferente. Portanto, ele só precisa ser enviado quando a resposta mudar. O que estiver em vigor quando uma rodada for concluída decide essa rodada, tanto se o áudio chega ao bucket de gravação quanto se a transcrição chega ao histórico de conversas, ao BigQuery e ao Cloud Logging. Ela abrange o lado do agente e do usuário final.

As curvas que terminam antes do cliente enviar isso pela primeira vez são registradas de acordo com as configurações de registro do app, como se o campo não existisse.

Se mais de uma entrada na mesma solicitação definir esse valor, a última vai prevalecer.

O tipo da entrada. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
text

string

Opcional. Dados de texto do usuário final.

dtmf

string

Opcional. Dígitos DTMF do usuário final.

audio

string (bytes format)

Opcional. Dados de áudio do usuário final.

Uma string codificada em base64.

toolResponses

object (ToolResponses)

Opcional. Resultados da execução das chamadas de ferramenta do cliente.

image

object (Image)

Opcional. Dados de imagem do usuário final.

blob

object (Blob)

Opcional. Dados de blob do usuário final.

variables

object (Struct format)

Opcional. Variáveis contextuais para a sessão, identificadas por nome. Somente as variáveis declaradas no app serão usadas pelo agente do CES.

As variáveis não reconhecidas ainda serão enviadas ao [agente do Dialogflow][Agent.RemoteDialogflowAgent] como parâmetros de sessão adicionais.

event

object (Event)

Opcional. Entrada de evento.

Fim dos campos mutuamente exclusivos.

ToolResponses

Resultados da execução das chamadas de ferramenta solicitadas pelo cliente.

Representação JSON
{
  "toolResponses": [
    {
      object (ToolResponse)
    }
  ]
}
Campos
toolResponses[]

object (ToolResponse)

Opcional. A lista de resultados da execução da ferramenta.

SessionInput.RecordingControl

O que o app decidiu pode ser gravado e registrado.

Esse tipo enumerado é extensível, e novos valores podem ser adicionados no futuro.

Tipos enumerados
RECORDING_CONTROL_UNSPECIFIED O app não está controlando a gravação. As configurações de registro do app decidem, como fazem para cada sessão que nunca define esse campo.
RECORDING_ENABLED A conversa pode ser gravada e registrada a partir de agora.
RECORDING_DISABLED A conversa não será mais gravada ou registrada.

Evaluation.Scenario

A configuração de um cenário

Representação JSON
{
  "task": string,
  "userFacts": [
    {
      object (Evaluation.Scenario.UserFact)
    }
  ],
  "maxTurns": integer,
  "rubrics": [
    string
  ],
  "scenarioExpectations": [
    {
      object (Evaluation.ScenarioExpectation)
    }
  ],
  "variableOverrides": {
    object
  },
  "taskCompletionBehavior": enum (Evaluation.Scenario.TaskCompletionBehavior),
  "userGoalBehavior": enum (Evaluation.Scenario.UserGoalBehavior),
  "evaluationExpectations": [
    string
  ],
  "milestones": [
    {
      object (Evaluation.Scenario.Milestone)
    }
  ],
  "scenarioExecutionMode": enum (EvaluationSettings.ScenarioExecutionMode)
}
Campos
task

string

Obrigatório. A tarefa que será segmentada pelo cenário.

userFacts[]

object (Evaluation.Scenario.UserFact)

Opcional. Os fatos do usuário que serão usados pelo cenário.

maxTurns

integer

Opcional. O número máximo de turnos a serem simulados. O valor máximo permitido é 100. O valor padrão é 100.

rubrics[]

string

Obrigatório. As rubricas para pontuar o cenário.

scenarioExpectations[]

object (Evaluation.ScenarioExpectation)

Obrigatório. O ScenarioExpectations para avaliar a conversa produzida pela simulação do usuário.

variableOverrides

object (Struct format)

Opcional. Variáveis / parâmetros de sessão como contexto para a sessão, com chave por nomes de variáveis. Os membros dessa estrutura vão substituir os valores padrão definidos pelo sistema.

Observação: eles são diferentes dos fatos do usuário, que são fatos conhecidos pelo usuário. As variáveis são parâmetros conhecidos pelo agente, como o MDN (número de telefone) transmitido pelo sistema de telefonia.

taskCompletionBehavior
(deprecated)

enum (Evaluation.Scenario.TaskCompletionBehavior)

Opcional. Obsoleto. Use userGoalBehavior.

userGoalBehavior

enum (Evaluation.Scenario.UserGoalBehavior)

Opcional. O comportamento esperado da meta do usuário.

evaluationExpectations[]

string

Opcional. As expectativas de avaliação para avaliar a conversa produzida pela simulação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}

milestones[]

object (Evaluation.Scenario.Milestone)

Opcional. Os marcos deste cenário.

scenarioExecutionMode

enum (EvaluationSettings.ScenarioExecutionMode)

Opcional. O modo de execução para avaliações de cenário.

Evaluation.Scenario.TaskCompletionBehavior

O comportamento esperado da tarefa do usuário. Isso é usado para determinar se o cenário foi bem-sucedido.

Tipos enumerados
TASK_COMPLETION_BEHAVIOR_UNSPECIFIED Comportamento não especificado. O padrão é TASK_SATISFIED.
TASK_SATISFIED A tarefa do usuário precisa ser concluída.
TASK_REJECTED A tarefa do usuário deve ser rejeitada.

Evaluation.Scenario.UserGoalBehavior

O comportamento esperado da meta do usuário. Isso é usado para determinar se o cenário foi bem-sucedido.

Tipos enumerados
USER_GOAL_BEHAVIOR_UNSPECIFIED Comportamento não especificado. O padrão é USER_GOAL_SATISFIED.
USER_GOAL_SATISFIED A meta do usuário deve ser concluída com sucesso.
USER_GOAL_REJECTED A meta do usuário deve ser rejeitada.
USER_GOAL_IGNORED Ignorar o status da meta do usuário.

Métodos

create

Cria uma avaliação.

delete

Exclui uma avaliação.

export

Exporta avaliações.

get

Recebe detalhes da avaliação especificada.

list

Lista todas as avaliações no app especificado.

patch

Atualiza uma avaliação.

uploadEvaluationAudio

Faz upload de áudio para uso em avaliações de referência.