REST Resource: projects.locations.apps.evaluations

Recurso: Evaluation

Una evaluación representa toda la información necesaria para simular y evaluar un agente.

Representación 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

Es el identificador. Es el identificador único de esta evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}

displayName

string

Obligatorio. Es el nombre visible de la evaluación definido por el usuario. Es único dentro de una app.

description

string

Es opcional. Descripción definida por el usuario de la evaluación.

tags[]

string

Es opcional. Son etiquetas definidas por el usuario para categorizar la evaluación.

evaluationDatasets[]

string

Solo salida. Es la lista de conjuntos de datos de evaluación a los que pertenece la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de cuando se creó la evaluación.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

createdBy

string

Solo salida. Es el usuario que creó la evaluación.

updateTime

string (Timestamp format)

Solo salida. Marca de tiempo de la última actualización de la evaluación.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

lastUpdatedBy

string

Solo salida. Es el usuario que actualizó la evaluación por última vez.

evaluationRuns[]

string

Solo salida. Son los EvaluationRuns con los que se asocia esta evaluación.

etag

string

Solo salida. Es la etiqueta de entidad que se usa para garantizar que el objeto no haya cambiado durante una operación de lectura, modificación y escritura. Si la etag está vacía, la actualización reemplazará cualquier cambio simultáneo.

aggregatedMetrics

object (AggregatedMetrics)

Solo salida. Son las métricas agregadas para esta evaluación en todas las ejecuciones.

lastCompletedResult

object (EvaluationResult)

Solo salida. Es el resultado de la evaluación más reciente.

invalid

boolean

Solo salida. Indica si la evaluación no es válida. Esto puede suceder si una evaluación hace referencia a una herramienta, un conjunto de herramientas o un agente que se borró.

lastTenResults[]

object (EvaluationResult)

Solo salida. Los últimos 10 resultados de esta evaluación. Esto solo se propaga si include_last_ten_results se establece como verdadero en ListEvaluationsRequest o GetEvaluationRequest.

evaluationMetricsThresholdOverride

object (EvaluationMetricsThresholds)

Es opcional. Anula los umbrales de las métricas para esta evaluación específica.

evaluationMetricsConfigOverride

object (EvaluationMetricsConfig)

Es opcional. Anula la configuración de métricas para esta evaluación específica.

Las entradas para la evaluación La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
golden

object (Evaluation.Golden)

Es opcional. Son los pasos de referencia que se evaluarán.

scenario

object (Evaluation.Scenario)

Es opcional. Es la configuración de una situación.

Fin de los campos mutuamente excluyentes.

Evaluation.Golden

Los pasos necesarios para reproducir una conversación de referencia.

Representación JSON
{
  "turns": [
    {
      object (Evaluation.GoldenTurn)
    }
  ],
  "evaluationExpectations": [
    string
  ]
}
Campos
turns[]

object (Evaluation.GoldenTurn)

Obligatorio. Son los turnos de oro necesarios para reproducir una conversación de oro. La cantidad máxima de turnos permitidos es 100.

evaluationExpectations[]

string

Es opcional. Son las expectativas de evaluación con las que se evalúa la conversación reproducida. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}

Evaluation.GoldenTurn

Un turno de referencia define un solo turno en una conversación de referencia.

Representación JSON
{
  "steps": [
    {
      object (Evaluation.Step)
    }
  ],
  "rootSpan": {
    object (Span)
  },
  "turnLevelMetricsThresholdsOverride": {
    object (EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds)
  },
  "hallucinationMetricBehaviorOverride": enum (EvaluationMetricsThresholds.HallucinationMetricBehavior)
}
Campos
steps[]

object (Evaluation.Step)

Obligatorio. Los pasos necesarios para reproducir una conversación de referencia.

rootSpan

object (Span)

Es opcional. Es el intervalo raíz del turno de oro para procesar y mantener la información de audio. El URI del audio debe contener audio guardado con una tasa de muestreo de 16 kHz.

turnLevelMetricsThresholdsOverride

object (EvaluationMetricsThresholds.GoldenEvaluationMetricsThresholds.TurnLevelMetricsThresholds)

Es opcional. Anulaciones para los umbrales de métricas a nivel del turno.

hallucinationMetricBehaviorOverride

enum (EvaluationMetricsThresholds.HallucinationMetricBehavior)

Es opcional. Anulación del comportamiento de la métrica de alucinación a nivel de turno.

Evaluation.Step

Un paso define una acción singular que se producirá durante la evaluación.

Representación 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
Es el paso que se debe realizar. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
userInput

object (SessionInput)

Es opcional. Entrada del usuario para la conversación.

agentTransfer

object (AgentTransfer)

Es opcional. Transferir la conversación a otro agente

expectation

object (Evaluation.GoldenExpectation)

Es opcional. Ejecuta una expectativa en el turno actual.

Fin de los campos mutuamente excluyentes.

SessionInput

Es la entrada de la sesión.

Representación 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

Es opcional. Es una marca para indicar si el mensaje actual es un fragmento de una entrada más grande en la sesión de transmisión bidireccional.

Cuando se establece en true, el agente aplaza el procesamiento hasta que recibe un mensaje posterior en el que willContinue es false o hasta que el sistema detecta un extremo en la entrada de audio.

NOTA: Este campo no se aplica a las entradas de audio y DTMF, ya que siempre se procesan automáticamente según la señal de finalización.

recordingControl

enum (SessionInput.RecordingControl)

Es opcional. Si la conversación se puede grabar y registrar a partir de este momento.

Usa esta opción cuando la app, en lugar del agente, decida qué se puede conservar, por ejemplo, cuando el usuario final deba dar su consentimiento para que se lo grabe antes de que se pueda almacenar cualquier información sobre la llamada.

El valor permanece vigente hasta que el cliente envía uno diferente, por lo que solo se debe enviar cuando cambia la respuesta. Lo que esté vigente cuando se complete un turno decide ese turno, tanto si su audio llega al bucket de grabación como si su transcripción llega al historial de conversaciones, BigQuery y Cloud Logging. Abarca tanto el lado del agente como el del usuario final.

Los turnos que se completan antes de que el cliente envíe este campo por primera vez se registran según la configuración de registro de la app, como si el campo no existiera.

Si más de una entrada en la misma solicitud lo establece, gana la última.

Es el tipo de entrada. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
text

string

Es opcional. Son los datos de texto del usuario final.

dtmf

string

Es opcional. Dígitos de DTMF del usuario final.

audio

string (bytes format)

Es opcional. Son los datos de audio del usuario final.

Es una cadena codificada en Base64.

toolResponses

object (ToolResponses)

Es opcional. Son los resultados de la ejecución de las llamadas a la herramienta desde el cliente.

image

object (Image)

Es opcional. Son los datos de imagen del usuario final.

blob

object (Blob)

Es opcional. Son los datos de BLOB del usuario final.

variables

object (Struct format)

Es opcional. Son las variables contextuales de la sesión, con clave por nombre. El agente de CES solo usará las variables declaradas en la app.

Las variables no reconocidas se seguirán enviando al [agente de Dialogflow][Agent.RemoteDialogflowAgent] como parámetros de sesión adicionales.

event

object (Event)

Es opcional. Entrada del evento.

Fin de los campos mutuamente excluyentes.

ToolResponses

Son los resultados de la ejecución de las llamadas a la herramienta solicitadas por el cliente.

Representación JSON
{
  "toolResponses": [
    {
      object (ToolResponse)
    }
  ]
}
Campos
toolResponses[]

object (ToolResponse)

Es opcional. Es la lista de resultados de la ejecución de la herramienta.

SessionInput.RecordingControl

Es posible que se registre y se guarde lo que la app haya decidido.

Esta enumeración es extensible; es posible que se agreguen valores nuevos en el futuro.

Enums
RECORDING_CONTROL_UNSPECIFIED La app no controla la grabación. La configuración de registro de la app decide, como lo hace para cada sesión que nunca establece este campo.
RECORDING_ENABLED A partir de este momento, es posible que se grabe y registre la conversación.
RECORDING_DISABLED Es posible que la conversación no se grabe ni se registre a partir de este momento.

Evaluation.Scenario

La configuración de una situación

Representación 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

Obligatorio. Es la tarea a la que se orientará la situación.

userFacts[]

object (Evaluation.Scenario.UserFact)

Es opcional. Son los hechos del usuario que usará la situación.

maxTurns

integer

Es opcional. Es la cantidad máxima de turnos que se simularán. El valor máximo permitido es 100. El valor predeterminado es 100.

rubrics[]

string

Obligatorio. Son las rúbricas con las que se evaluará la situación.

scenarioExpectations[]

object (Evaluation.ScenarioExpectation)

Obligatorio. ScenarioExpectations para evaluar la conversación que produce la simulación de usuarios

variableOverrides

object (Struct format)

Es opcional. Variables o parámetros de sesión como contexto para la sesión, con clave por nombres de variables. Los miembros de este struct anularán los valores predeterminados que establezca el sistema.

Ten en cuenta que estos son diferentes de los hechos del usuario, que son hechos conocidos por el usuario. Las variables son parámetros que conoce el agente, p.ej., el MDN (número de teléfono) que pasa el sistema de telefonía.

taskCompletionBehavior
(deprecated)

enum (Evaluation.Scenario.TaskCompletionBehavior)

Es opcional. Obsoleto. En su lugar, usa userGoalBehavior.

userGoalBehavior

enum (Evaluation.Scenario.UserGoalBehavior)

Es opcional. El comportamiento esperado del objetivo del usuario.

evaluationExpectations[]

string

Es opcional. Son las expectativas de evaluación con las que se evaluará la conversación producida por la simulación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluationExpectation}

milestones[]

object (Evaluation.Scenario.Milestone)

Es opcional. Los hitos de esta situación.

scenarioExecutionMode

enum (EvaluationSettings.ScenarioExecutionMode)

Es opcional. Es el modo de ejecución para las evaluaciones de situaciones.

Evaluation.Scenario.TaskCompletionBehavior

Es el comportamiento esperado de la tarea del usuario. Esto se usa para determinar si la situación es exitosa.

Enums
TASK_COMPLETION_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. Se establecerá de forma predeterminada en TASK_SATISFIED.
TASK_SATISFIED La tarea del usuario se debe completar correctamente.
TASK_REJECTED Se debe rechazar la tarea del usuario.

Evaluation.Scenario.UserGoalBehavior

El comportamiento esperado del objetivo del usuario. Esto se usa para determinar si la situación es exitosa.

Enums
USER_GOAL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. Se establecerá de forma predeterminada en USER_GOAL_SATISFIED.
USER_GOAL_SATISFIED El objetivo del usuario debe completarse correctamente.
USER_GOAL_REJECTED Se debe rechazar el objetivo del usuario.
USER_GOAL_IGNORED Ignora el estado del objetivo del usuario.

Métodos

create

Crea una evaluación.

delete

Borra una evaluación.

export

Exporta evaluaciones.

get

Obtiene los detalles de la evaluación especificada.

list

Enumera todas las evaluaciones de la app determinada.

patch

Actualiza una evaluación.

uploadEvaluationAudio

Sube audio para usarlo en las evaluaciones de referencia.