MCP Tools Reference: ces.googleapis.com

Herramienta: update_evaluation

Actualiza la evaluación especificada. Asegúrate de pasar siempre una máscara de actualización en la entrada.

En la siguiente muestra de código, se indica cómo usar curl para llamar a la herramienta de MCP update_evaluation.

Solicitud de curl
curl --location 'https://ces.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_evaluation",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Mensaje de solicitud para EvaluationService.UpdateEvaluation.

UpdateEvaluationRequest

Representación JSON
{
  "evaluation": {
    object (Evaluation)
  },
  "updateMask": string
}
Campos
evaluation

object (Evaluation)

Obligatorio. Es la evaluación que se actualizará.

updateMask

string (FieldMask format)

Es opcional. La máscara de campo se usa para controlar qué campos se actualizan. Si la máscara no está presente, se actualizarán todos los campos.

Esta es una lista separada por comas de los nombres de campos completamente calificados. Ejemplo: "user.displayName,photo".

Evaluación

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)
  },

  // Union field inputs can be only one of the following:
  "golden": {
    object (Golden)
  },
  "scenario": {
    object (Scenario)
  }
  // End of list of possible types for union field inputs.
}
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.

Campo de unión inputs. Las entradas para la evaluación inputs solo pueden ser una de las siguientes:
golden

object (Golden)

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

scenario

object (Scenario)

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

Golden

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

object (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}

GoldenTurn

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

object (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 (TurnLevelMetricsThresholds)

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

hallucinationMetricBehaviorOverride

enum (HallucinationMetricBehavior)

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

Paso

Representación JSON
{

  // Union field step can be only one of the following:
  "userInput": {
    object (SessionInput)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "expectation": {
    object (GoldenExpectation)
  }
  // End of list of possible types for union field step.
}
Campos
Campo de unión step. Es el paso que se debe realizar. step puede ser solo uno de los parámetros siguientes:
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 (GoldenExpectation)

Es opcional. Ejecuta una expectativa en el turno actual.

SessionInput

Representación JSON
{
  "willContinue": boolean,
  "recordingControl": enum (RecordingControl),

  // Union field input_type can be only one of the following:
  "text": string,
  "dtmf": string,
  "audio": string,
  "toolResponses": {
    object (ToolResponses)
  },
  "image": {
    object (Image)
  },
  "blob": {
    object (Blob)
  },
  "variables": {
    object
  },
  "event": {
    object (Event)
  }
  // End of list of possible types for union field input_type.
}
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 will_continue 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 (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.

Campo de unión input_type. Es el tipo de entrada. input_type puede ser solo uno de los parámetros siguientes:
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.

ToolResponses

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

object (ToolResponse)

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

ToolResponse

Representación JSON
{
  "id": string,
  "displayName": string,
  "response": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,
  "targetApp": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Es opcional. Es el ID para coincidencias del tool call al que corresponde la respuesta.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

response

object (Struct format)

Obligatorio. Es el resultado de la ejecución de la herramienta en formato de objeto JSON. Usa la clave "output" para especificar la respuesta de la herramienta y la clave "error" para especificar los detalles del error (si los hay). Si no se especifican las claves "output" y "error", toda la "response" se trata como el resultado de la ejecución de la herramienta.

parentToolCallId

string

Solo salida. Es el ID de la llamada a la herramienta que causó esta, cuando la emitió un agente secundario que trabaja en nombre de una llamada superior. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un agente secundario en la llamada que lo inició, en lugar de renderizar cada paso como un elemento hermano.

agentName

string

Solo salida. Nombre legible por humanos del agente que emitió esta llamada, p.ej., "Arquitecto de contratos". Está vacío cuando lo emite el agente raíz.

targetApp

string

Solo salida. Es la app a la que se orientó la herramienta ejecutada; refleja ToolCall.target_app.

Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutó. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes:
tool

string

Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Es opcional. Es la herramienta del conjunto de herramientas que se ejecutó.

ToolsetTool

Representación JSON
{
  "toolset": string,
  "toolId": string
}
Campos
toolset

string

Obligatorio. Es el nombre del recurso del conjunto de herramientas del que se deriva esta herramienta. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolId

string

Es opcional. Es el ID de la herramienta para filtrar las herramientas de las que se recuperará el esquema.

Struct

Representación JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

map (key: string, value: value (Value format))

Es un mapa sin ordenar de valores con tipo dinámico.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representación JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

Valor

Representación JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes:
nullValue

null

Representa un null JSON.

numberValue

number

Representa un número JSON. No debe ser NaN, Infinity ni -Infinity, ya que no se admiten en JSON. Tampoco puede representar valores Int64 grandes, ya que el formato JSON, por lo general, no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un booleano JSON (literal true o false en JSON).

structValue

object (Struct format)

Representa un objeto JSON.

listValue

array (ListValue format)

Representa un array JSON.

ListValue

Representación JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Es un campo repetido de valores con tipo dinámico.

Imagen

Representación JSON
{
  "mimeType": string,
  "data": string,
  "altText": string
}
Campos
mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen. Los tipos de imágenes compatibles incluyen los siguientes: * image/png * image/jpeg * image/webp

data

string (bytes format)

Obligatorio. Son los bytes sin procesar de la imagen.

Es una cadena codificada en Base64.

altText

string

Es opcional. Es el texto alternativo de la imagen.

BLOB

Representación JSON
{
  "mimeType": string,
  "data": string
}
Campos
mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen.

data

string (bytes format)

Obligatorio. Son los bytes sin procesar del BLOB.

Es una cadena codificada en Base64.

Evento

Representación JSON
{
  "event": string,
  "variables": {
    object
  }
}
Campos
event

string

Obligatorio. Es el nombre del evento.

variables

object (Struct format)

Es opcional. Son las variables adicionales asociadas con el evento.

AgentTransfer

Representación JSON
{
  "targetAgent": string,
  "displayName": string
}
Campos
targetAgent

string

Obligatorio. Es el agente al que se transfiere la conversación. El agente se encargará de la conversación a partir de este punto. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Solo salida. Es el nombre visible del agente.

GoldenExpectation

Representación JSON
{
  "note": string,
  "skipEvaluation": boolean,
  "expectationLevelMetricsThresholdsOverride": {
    object (ExpectationLevelMetricsThresholds)
  },
  "agentResponseSemanticSimilarityMetricsConfigOverride": {
    object (SemanticSimilarityMetricsConfig)
  },
  "agentResponseHallucinationMetricsConfigOverride": {
    object (HallucinationMetricsConfig)
  },
  "comparisonType": enum (ComparisonType),

  // Union field condition can be only one of the following:
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentResponse": {
    object (Message)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "mockToolResponse": {
    object (ToolResponse)
  },
  "noToolCalls": boolean
  // End of list of possible types for union field condition.
}
Campos
note

string

Es opcional. Es una nota para este requisito, útil para informar cuando fallan verificaciones específicas. P. ej., "Check_Payment_Tool_Called".

skipEvaluation

boolean

Es opcional. Si se establece como verdadero, no se evaluará esta expectativa específica.

expectationLevelMetricsThresholdsOverride

object (ExpectationLevelMetricsThresholds)

Es opcional. Anula las métricas a nivel del paso.

agentResponseSemanticSimilarityMetricsConfigOverride

object (SemanticSimilarityMetricsConfig)

Es opcional. Anulaciones para las métricas de similitud semántica de agent_response.

agentResponseHallucinationMetricsConfigOverride

object (HallucinationMetricsConfig)

Es opcional. Anulaciones para las métricas de alucinación de agent_response.

comparisonType

enum (ComparisonType)

Es opcional. Es el tipo de comparación que se usará para la verificación de expectativas.

Campo de unión condition. Es la verificación real que se debe realizar. condition puede ser solo uno de los parámetros siguientes:
toolCall

object (ToolCall)

Es opcional. Verifica que se haya llamado a una herramienta específica con los parámetros.

toolResponse

object (ToolResponse)

Es opcional. Verifica que una herramienta específica haya tenido la respuesta esperada.

agentResponse

object (Message)

Es opcional. Verifica que el agente haya respondido con la respuesta correcta. El rol "agent" está implícito.

agentTransfer

object (AgentTransfer)

Es opcional. Verifica que el agente haya transferido la conversación a otro agente.

updatedVariables

object (Struct format)

Es opcional. Verifica que el agente haya actualizado las variables de sesión a los valores esperados. También se usa para capturar las actualizaciones de las variables del agente para las evaluaciones de referencia.

mockToolResponse

object (ToolResponse)

Es opcional. La respuesta de la herramienta que se simulará, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

noToolCalls

boolean

Es opcional. Verifica que no se haya llamado a ninguna herramienta durante este turno.

ToolCall

Representación JSON
{
  "id": string,
  "displayName": string,
  "args": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,
  "targetApp": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Es opcional. Es el identificador único de la llamada a la herramienta. Si se completa, el cliente debe devolver el resultado de la ejecución con el ID para coincidencias en ToolResponse.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

args

object (Struct format)

Es opcional. Son los parámetros y valores de entrada de la herramienta en formato de objeto JSON.

parentToolCallId

string

Solo salida. Es el ID de la llamada a la herramienta que causó esta, cuando la emitió un agente secundario que trabaja en nombre de una llamada superior. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un agente secundario en la llamada que lo inició, en lugar de renderizar cada paso como un elemento hermano.

agentName

string

Solo salida. Nombre legible por humanos del agente que emitió esta llamada, p.ej., "Arquitecto de contratos". Está vacío cuando lo emite el agente raíz.

targetApp

string

Solo salida. La app a la que se dirige esta llamada, derivada por el asistente a partir de los argumentos de recursos de la llamada: un nombre de recurso de app, PROJECT para las herramientas con alcance de ubicación o vacío para las herramientas locales de la sesión. Se establece solo en las sesiones de asistente con alcance de proyecto.

Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutará. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes:
tool

string

Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Es opcional. Es la herramienta del conjunto de herramientas que se ejecutará.

Mensaje

Representación JSON
{
  "role": string,
  "chunks": [
    {
      object (Chunk)
    }
  ],
  "eventTime": string
}
Campos
role

string

Es opcional. Es el rol dentro de la conversación, p.ej., usuario, agente.

chunks[]

object (Chunk)

Es opcional. Es el contenido del mensaje como una serie de fragmentos.

eventTime

string (Timestamp format)

Es opcional. Es la marca de tiempo del momento en que se envió o recibió el mensaje. No se debe usar si el mensaje forma parte de un example.

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".

Bandinsecto

Representación JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "transcript": string,
  "blob": {
    object (Blob)
  },
  "payload": {
    object
  },
  "image": {
    object (Image)
  },
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "defaultVariables": {
    object
  }
  // End of list of possible types for union field data.
}
Campos
Campo de unión data. Datos de fragmentos data puede ser solo uno de los parámetros siguientes:
text

string

Es opcional. Datos de texto.

transcript

string

Es opcional. Es la transcripción asociada al audio.

blob

object (Blob)

Es opcional. Datos de BLOB.

payload

object (Struct format)

Es opcional. Datos de carga útil personalizados.

image

object (Image)

Es opcional. Son los datos de la imagen.

toolCall

object (ToolCall)

Es opcional. Es la solicitud de ejecución de la herramienta.

toolResponse

object (ToolResponse)

Es opcional. Es la respuesta de la ejecución de la herramienta.

agentTransfer

object (AgentTransfer)

Es opcional. Evento de transferencia de agente.

updatedVariables

object (Struct format)

Un struct representa las variables que se actualizaron en la conversación, con clave por nombres de variables.

defaultVariables

object (Struct format)

Un struct representa las variables predeterminadas al inicio de la conversación, con clave por nombres de variables.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos del horario UTC desde el tiempo Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Deben ser valores de 0 a 999,999,999 inclusive.

ExpectationLevelMetricsThresholds

Representación JSON
{

  // Union field _tool_invocation_parameter_correctness_threshold can be only one
  // of the following:
  "toolInvocationParameterCorrectnessThreshold": number
  // End of list of possible types for union field
  // _tool_invocation_parameter_correctness_threshold.
}
Campos

Campo de unión _tool_invocation_parameter_correctness_threshold.

_tool_invocation_parameter_correctness_threshold puede ser una de las siguientes opciones:

toolInvocationParameterCorrectnessThreshold

number

Es opcional. Es el umbral de éxito para la corrección de los parámetros de invocación de herramientas individuales. Debe ser un número de punto flotante entre 0 y 1. El valor predeterminado es 1.0.

SemanticSimilarityMetricsConfig

Representación JSON
{
  "enableSemanticSimilarityMetrics": boolean
}
Campos
enableSemanticSimilarityMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de similitud semántica para la evaluación.

HallucinationMetricsConfig

Representación JSON
{
  "enableHallucinationMetrics": boolean
}
Campos
enableHallucinationMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de alucinación para la evaluación.

Intervalo

Representación JSON
{
  "name": string,
  "startTime": string,
  "endTime": string,
  "duration": string,
  "attributes": {
    object
  },
  "childSpans": [
    {
      object (Span)
    }
  ]
}
Campos
name

string

Solo salida. Es el nombre del intervalo.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del intervalo.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización del intervalo.

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".

duration

string (Duration format)

Solo salida. La duración del intervalo.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

attributes

object (Struct format)

Solo salida. Son los atributos de par clave-valor asociados con el intervalo.

childSpans[]

object (Span)

Solo salida. Son los intervalos secundarios que están anidados en este intervalo.

Duración

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos con signo del intervalo de tiempo. Debe ser un valor entre -315,576,000,000 y +315,576,000,000 inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/día * 365.25 días/año * 10,000 años

nanos

integer

Fracciones con signo de un segundo con una resolución de nanosegundos del intervalo de tiempo. Las duraciones de menos de un segundo se representan con un campo seconds de 0 y un campo nanos positivo o negativo. En el caso de las duraciones de un segundo o más, un valor distinto de cero para el campo nanos debe tener el mismo signo que el campo seconds. Deben ser valores de -999,999,999 a +999,999,999 inclusive.

TurnLevelMetricsThresholds

Representación JSON
{
  "semanticSimilarityChannel": enum (SemanticSimilarityChannel),

  // Union field _semantic_similarity_success_threshold can be only one of the
  // following:
  "semanticSimilaritySuccessThreshold": integer
  // End of list of possible types for union field
  // _semantic_similarity_success_threshold.

  // Union field _overall_tool_invocation_correctness_threshold can be only one
  // of the following:
  "overallToolInvocationCorrectnessThreshold": number
  // End of list of possible types for union field
  // _overall_tool_invocation_correctness_threshold.
}
Campos
semanticSimilarityChannel

enum (SemanticSimilarityChannel)

Es opcional. Es el canal de similitud semántica que se usará para la evaluación.

Campo de unión _semantic_similarity_success_threshold.

_semantic_similarity_success_threshold puede ser una de las siguientes opciones:

semanticSimilaritySuccessThreshold

integer

Es opcional. Es el umbral de éxito para la similitud semántica. Debe ser un número entero entre 0 y 4. El valor predeterminado es >= 3.

Campo de unión _overall_tool_invocation_correctness_threshold.

_overall_tool_invocation_correctness_threshold puede ser una de las siguientes opciones:

overallToolInvocationCorrectnessThreshold

number

Es opcional. Es el umbral de éxito para la corrección general de la invocación de herramientas. Debe ser un número de punto flotante entre 0 y 1. El valor predeterminado es 1.0.

Situación

Representación JSON
{
  "task": string,
  "userFacts": [
    {
      object (UserFact)
    }
  ],
  "maxTurns": integer,
  "rubrics": [
    string
  ],
  "scenarioExpectations": [
    {
      object (ScenarioExpectation)
    }
  ],
  "variableOverrides": {
    object
  },
  "taskCompletionBehavior": enum (TaskCompletionBehavior),
  "userGoalBehavior": enum (UserGoalBehavior),
  "evaluationExpectations": [
    string
  ],
  "milestones": [
    {
      object (Milestone)
    }
  ],
  "scenarioExecutionMode": enum (ScenarioExecutionMode)
}
Campos
task

string

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

userFacts[]

object (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 (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 (TaskCompletionBehavior)

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

userGoalBehavior

enum (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 (Milestone)

Es opcional. Los hitos de esta situación.

scenarioExecutionMode

enum (ScenarioExecutionMode)

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

UserFact

Representación JSON
{
  "name": string,
  "value": string
}
Campos
name

string

Obligatorio. Es el nombre del dato del usuario.

value

string

Obligatorio. Es el valor del hecho del usuario.

ScenarioExpectation

Representación JSON
{

  // Union field expectation can be only one of the following:
  "toolExpectation": {
    object (ToolExpectation)
  },
  "agentResponse": {
    object (Message)
  }
  // End of list of possible types for union field expectation.
}
Campos
Campo de unión expectation. Es la expectativa para evaluar la conversación que produce la simulación. expectation puede ser solo uno de los parámetros siguientes:
toolExpectation

object (ToolExpectation)

Es opcional. Es el par de llamada a la herramienta y respuesta que se evaluará.

agentResponse

object (Message)

Es opcional. Es la respuesta del agente que se evaluará.

ToolExpectation

Representación JSON
{
  "expectedToolCall": {
    object (ToolCall)
  },
  "mockToolResponse": {
    object (ToolResponse)
  }
}
Campos
expectedToolCall

object (ToolCall)

Obligatorio. La llamada a la herramienta esperada, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

mockToolResponse

object (ToolResponse)

Obligatorio. La respuesta de la herramienta que se simulará, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

Logro

Representación JSON
{
  "goal": string,
  "maxTurnCount": integer,
  "successCriteria": string,
  "protocol": string,
  "staticUtterance": string,
  "event": {
    object (Event)
  }
}
Campos
goal

string

Obligatorio. Es el objetivo del hito.

maxTurnCount

integer

Es opcional. Es la cantidad máxima de turnos para este hito.

successCriteria

string

Es opcional. Los criterios de éxito del hito.

protocol

string

Es opcional. Son los lineamientos que el agente debe seguir durante la conversación.

staticUtterance

string

Es opcional. Es un enunciado estático que el simulador enviará exactamente, en lugar de generar de forma dinámica la entrada del usuario.

event

object (Event)

Es opcional. Es una entrada de evento que se envía en lugar de la generación dinámica.

AggregatedMetrics

Representación JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campos
metricsByAppVersion[]

object (MetricsByAppVersion)

Solo salida. Son las métricas agregadas, agrupadas por ID de versión de la app.

MetricsByAppVersion

Representación JSON
{
  "appVersionId": string,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ],
  "passCount": integer,
  "failCount": integer,
  "metricsByTurn": [
    {
      object (MetricsByTurn)
    }
  ]
}
Campos
appVersionId

string

Solo salida. Es el ID de la versión de la app.

toolMetrics[]

object (ToolMetrics)

Solo salida. Métricas de cada herramienta en esta versión de la app

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Métricas de similitud semántica en esta versión de la app.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo salida. Métricas de alucinación en esta versión de la app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Métricas de la latencia de las llamadas a herramientas en esta versión de la app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Métricas de la latencia de turnos en esta versión de la app.

passCount

integer

Solo salida. Es la cantidad de veces que se aprobó la evaluación.

failCount

integer

Solo salida. Es la cantidad de veces que falló la evaluación.

metricsByTurn[]

object (MetricsByTurn)

Solo salida. Son las métricas agregadas por turno dentro de esta versión de la app.

ToolMetrics

Representación JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta.

passCount

integer

Solo salida. La cantidad de veces que se aprobó la herramienta.

failCount

integer

Solo salida. Es la cantidad de veces que falló la herramienta.

SemanticSimilarityMetrics

Representación JSON
{
  "score": number
}
Campos
score

number

Solo salida. La puntuación promedio de similitud semántica (0-4).

HallucinationMetrics

Representación JSON
{
  "score": number
}
Campos
score

number

Solo salida. La puntuación promedio de alucinaciones (de 0 a 1).

ToolCallLatencyMetrics

Representación JSON
{
  "tool": string,
  "averageLatency": string
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta.

averageLatency

string (Duration format)

Solo salida. La latencia promedio de las llamadas a la herramienta.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

TurnLatencyMetrics

Representación JSON
{
  "averageLatency": string
}
Campos
averageLatency

string (Duration format)

Solo salida. Es la latencia promedio de los turnos.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

MetricsByTurn

Representación JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campos
turnIndex

integer

Solo salida. Es el índice de turno (basado en 0).

toolMetrics[]

object (ToolMetrics)

Solo salida. Son las métricas de cada herramienta en este turno.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Son las métricas de similitud semántica dentro de este turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo salida. Métricas de alucinación en este turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Métricas de la latencia de la llamada a la herramienta en este turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Métricas de la latencia de turno dentro de este turno.

EvaluationResult

Representación JSON
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "evaluationStatus": enum (Outcome),
  "evaluationRun": string,
  "persona": {
    object (EvaluationPersona)
  },
  "errorInfo": {
    object (EvaluationErrorInfo)
  },
  "error": {
    object (Status)
  },
  "initiatedBy": string,
  "appVersion": string,
  "appVersionDisplayName": string,
  "changelog": string,
  "changelogCreateTime": string,
  "executionState": enum (ExecutionState),
  "evaluationMetricsThresholds": {
    object (EvaluationMetricsThresholds)
  },
  "config": {
    object (EvaluationConfig)
  },
  "goldenRunMethod": enum (GoldenRunMethod),
  "rootSpan": {
    object (Span)
  },
  "outcomeMetadata": enum (OutcomeMetadata),

  // Union field result can be only one of the following:
  "goldenResult": {
    object (GoldenResult)
  },
  "scenarioResult": {
    object (ScenarioResult)
  }
  // End of list of possible types for union field result.
}
Campos
name

string

Es el identificador. Es el identificador único del resultado de la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{result}

displayName

string

Obligatorio. Es el nombre visible del resultado de la evaluación. Es único dentro de una evaluación. De forma predeterminada, tiene el siguiente formato: " result - ".

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de cuando se creó el resultado 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".

evaluationStatus

enum (Outcome)

Solo salida. Es el resultado de la evaluación. Solo se completa si execution_state es COMPLETE.

evaluationRun

string

Solo salida. Es la ejecución de la evaluación que produjo este resultado. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}

persona

object (EvaluationPersona)

Solo salida. Es el perfil que se usa para generar la conversación para el resultado de la evaluación.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Es la información de error del resultado de la evaluación.

error
(deprecated)

object (Status)

Solo salida. Obsoleto: Usa error_info en su lugar. Se encontraron errores durante la ejecución.

initiatedBy

string

Solo salida. Es el usuario que inició la ejecución de la evaluación que generó este resultado.

appVersion

string

Solo salida. Es la versión de la app que se usó para generar la conversación que dio lugar a este resultado. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

appVersionDisplayName

string

Solo salida. Es el nombre visible del app_version con el que se ejecutó la evaluación.

changelog

string

Solo salida. Es el registro de cambios de la versión de la app en la que se ejecutó la evaluación. Se completa si el usuario ejecuta la evaluación en la versión más reciente o en el borrador.

changelogCreateTime

string (Timestamp format)

Solo salida. Es la hora de creación del registro de cambios de la versión de la app con la que se ejecutó la evaluación. Se completa si el usuario ejecuta la evaluación en la versión más reciente o en el borrador.

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".

executionState

enum (ExecutionState)

Solo salida. Es el estado de la ejecución del resultado de la evaluación.

evaluationMetricsThresholds

object (EvaluationMetricsThresholds)

Solo salida. Son los umbrales de evaluación del resultado.

config

object (EvaluationConfig)

Solo salida. Es la configuración que se usó en la ejecución de la evaluación que generó este resultado.

goldenRunMethod

enum (GoldenRunMethod)

Solo salida. Es el método que se usa para ejecutar la evaluación de referencia.

rootSpan

object (Span)

Solo salida. El intervalo raíz de la ejecución de la evaluación, que incluye información sobre cada paso de la evaluación.

outcomeMetadata

enum (OutcomeMetadata)

Solo salida. Son los metadatos de resultado de la evaluación. Solo se completa si execution_state es COMPLETE.

Campo de unión result. Es el resultado de la evaluación. Solo se propaga cuando execution_state es COMPLETED. result puede ser solo uno de los parámetros siguientes:
goldenResult

object (GoldenResult)

Solo salida. Es el resultado de una evaluación de referencia.

scenarioResult

object (ScenarioResult)

Solo salida. Es el resultado de la evaluación de un caso.

GoldenResult

Representación JSON
{
  "turnReplayResults": [
    {
      object (TurnReplayResult)
    }
  ],
  "evaluationExpectationResults": [
    {
      object (EvaluationExpectationResult)
    }
  ]
}
Campos
turnReplayResults[]

object (TurnReplayResult)

Solo salida. Es el resultado de ejecutar cada turno de la conversación de referencia.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Los resultados de la evaluación.

TurnReplayResult

Representación JSON
{
  "conversation": string,
  "expectationOutcome": [
    {
      object (GoldenExpectationOutcome)
    }
  ],
  "hallucinationResult": {
    object (HallucinationResult)
  },
  "toolInvocationScore": number,
  "turnLatency": string,
  "toolCallLatencies": [
    {
      object (ToolCallLatency)
    }
  ],
  "semanticSimilarityResult": {
    object (SemanticSimilarityResult)
  },
  "overallToolInvocationResult": {
    object (OverallToolInvocationResult)
  },
  "errorInfo": {
    object (EvaluationErrorInfo)
  },
  "spanLatencies": [
    {
      object (SpanLatency)
    }
  ],

  // Union field _tool_ordered_invocation_score can be only one of the following:
  "toolOrderedInvocationScore": number
  // End of list of possible types for union field
  // _tool_ordered_invocation_score.
}
Campos
conversation

string

Solo salida. Es la conversación que se generó para este turno.

expectationOutcome[]

object (GoldenExpectationOutcome)

Solo salida. El resultado de cada expectativa.

hallucinationResult

object (HallucinationResult)

Solo salida. Es el resultado de la verificación de alucinaciones.

toolInvocationScore
(deprecated)

number

Solo salida. Obsoleto. En su lugar, usa OverallToolInvocationResult.

turnLatency

string (Duration format)

Solo salida. Es la duración del giro.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. La latencia de cada llamada a la herramienta en el turno.

semanticSimilarityResult

object (SemanticSimilarityResult)

Solo salida. Es el resultado de la verificación de similitud semántica.

overallToolInvocationResult

object (OverallToolInvocationResult)

Solo salida. Es el resultado de la verificación general de la invocación de la herramienta.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Información sobre el error que se produjo durante este turno.

spanLatencies[]

object (SpanLatency)

Solo salida. Es la latencia de los intervalos en el turno.

Campo de unión _tool_ordered_invocation_score.

_tool_ordered_invocation_score puede ser una de las siguientes opciones:

toolOrderedInvocationScore

number

Solo salida. La puntuación general de invocación ordenada de la herramienta para este turno. Esto indica el porcentaje general de herramientas del turno esperado que se invocaron en el orden esperado.

GoldenExpectationOutcome

Representación JSON
{
  "expectation": {
    object (GoldenExpectation)
  },
  "outcome": enum (Outcome),
  "semanticSimilarityResult": {
    object (SemanticSimilarityResult)
  },
  "toolInvocationResult": {
    object (ToolInvocationResult)
  },

  // Union field result can be only one of the following:
  "observedToolCall": {
    object (ToolCall)
  },
  "observedToolResponse": {
    object (ToolResponse)
  },
  "observedAgentResponse": {
    object (Message)
  },
  "observedAgentTransfer": {
    object (AgentTransfer)
  },
  "observedPayload": {
    object
  }
  // End of list of possible types for union field result.
}
Campos
expectation

object (GoldenExpectation)

Solo salida. La expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de la expectativa.

semanticSimilarityResult
(deprecated)

object (SemanticSimilarityResult)

Solo salida. Es el resultado de la verificación de similitud semántica.

toolInvocationResult

object (ToolInvocationResult)

Solo salida. Es el resultado de la verificación de invocación de la herramienta.

Campo de unión result. El resultado de la expectativa. result puede ser solo uno de los parámetros siguientes:
observedToolCall

object (ToolCall)

Solo salida. Es el resultado de la expectativa de la llamada a la herramienta.

observedToolResponse

object (ToolResponse)

Solo salida. Es el resultado de la expectativa de respuesta de la herramienta.

observedAgentResponse

object (Message)

Solo salida. Es el resultado de la expectativa de respuesta del agente.

observedAgentTransfer

object (AgentTransfer)

Solo salida. Es el resultado de la expectativa de transferencia del agente.

observedPayload

object (Struct format)

Solo salida. Es una carga útil personalizada observada. No hay expectativas para las cargas útiles personalizadas. Esto solo se usa para el cálculo de métricas. El resultado siempre es SKIPPED.

SemanticSimilarityResult

Representación JSON
{
  "label": string,
  "explanation": string,
  "outcome": enum (Outcome),

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 4: Totalmente coherente Puntuación 3: Mayormente coherente Puntuación 2: Parcialmente coherente (omisiones menores) Puntuación 1: En gran medida incoherente (omisiones importantes) Puntuación 0: Completamente incoherente o contradictorio

explanation

string

Solo salida. Es la explicación de la puntuación de similitud semántica.

outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de similitud semántica. Esto se determina comparando la puntuación con el semantic_similarity_success_threshold. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de similitud semántica. Puede ser 0, 1, 2, 3 o 4.

ToolInvocationResult

Representación JSON
{
  "outcome": enum (Outcome),
  "explanation": string,

  // Union field _parameter_correctness_score can be only one of the following:
  "parameterCorrectnessScore": number
  // End of list of possible types for union field _parameter_correctness_score.
}
Campos
outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de invocación de la herramienta. Esto se determina comparando el parámetro parameter_correctness_score con el umbral. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

explanation

string

Solo salida. Es una explicación en texto libre del resultado de la invocación de la herramienta.

Campo de unión _parameter_correctness_score.

_parameter_correctness_score puede ser una de las siguientes opciones:

parameterCorrectnessScore

number

Solo salida. Es la puntuación de corrección del parámetro de invocación de la herramienta. Esto indica el porcentaje de parámetros de la llamada a la herramienta esperada que también estuvieron presentes en la llamada a la herramienta real.

HallucinationResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 1: Justificada Puntuación 0: No justificada Puntuación -1: No hay afirmación para evaluar

explanation

string

Solo salida. Es la explicación de la puntuación de alucinación.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de alucinación. Puede ser -1, 0 o 1.

ToolCallLatency

Representación JSON
{
  "tool": string,
  "displayName": string,
  "startTime": string,
  "endTime": string,
  "executionLatency": string
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta que se ejecutó. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio de la ejecución de la llamada a la herramienta.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización de la ejecución de la llamada a la herramienta.

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".

executionLatency

string (Duration format)

Solo salida. Es la latencia de la ejecución de la llamada a la herramienta.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

OverallToolInvocationResult

Representación JSON
{
  "outcome": enum (Outcome),

  // Union field _tool_invocation_score can be only one of the following:
  "toolInvocationScore": number
  // End of list of possible types for union field _tool_invocation_score.
}
Campos
outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de invocación de la herramienta. Esto se determina comparando el tool_invocation_score con el overall_tool_invocation_correctness_threshold. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

Campo de unión _tool_invocation_score.

_tool_invocation_score puede ser una de las siguientes opciones:

toolInvocationScore

number

Es la puntuación general de invocación de herramientas para este turno. Esto indica el porcentaje general de herramientas del turno esperado que se invocaron.

EvaluationErrorInfo

Representación JSON
{
  "errorType": enum (ErrorType),
  "errorMessage": string,
  "sessionId": string,
  "userFacingErrorMessage": string
}
Campos
errorType

enum (ErrorType)

Solo salida. Es el tipo de error.

errorMessage

string

Solo salida. Mensaje de error.

sessionId

string

Solo salida. Es el ID de sesión de la conversación que causó el error.

userFacingErrorMessage

string

Solo salida. Es el mensaje de error para el usuario.

SpanLatency

Representación JSON
{
  "type": enum (Type),
  "displayName": string,
  "startTime": string,
  "endTime": string,
  "executionLatency": string,

  // Union field identifier can be only one of the following:
  "resource": string,
  "toolset": {
    object (ToolsetTool)
  },
  "model": string,
  "callback": string
  // End of list of possible types for union field identifier.
}
Campos
type

enum (Type)

Solo salida. Es el tipo de intervalo.

displayName

string

Solo salida. Es el nombre visible del intervalo. Se aplica a los intervalos de herramientas y protecciones.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del intervalo.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización del intervalo.

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".

executionLatency

string (Duration format)

Solo salida. La latencia del intervalo.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

Campo de unión identifier. Es el identificador del elemento específico según su tipo. identifier puede ser solo uno de los parámetros siguientes:
resource

string

Solo salida. Es el nombre del recurso de los intervalos de la protección o la herramienta.

toolset

object (ToolsetTool)

Solo salida. Es el identificador de la herramienta del conjunto de herramientas.

model

string

Solo salida. Es el nombre del intervalo de LLM.

callback

string

Solo salida. Es el nombre del intervalo de devolución de llamada del usuario.

EvaluationExpectationResult

Representación JSON
{
  "evaluationExpectation": string,
  "prompt": string,
  "outcome": enum (Outcome),
  "explanation": string
}
Campos
evaluationExpectation

string

Solo salida. La expectativa de la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}

prompt

string

Solo salida. La instrucción que se usó para la evaluación.

outcome

enum (Outcome)

Solo salida. Es el resultado de la expectativa de evaluación.

explanation

string

Solo salida. Es la explicación del resultado.

ScenarioResult

Representación JSON
{
  "conversation": string,
  "task": string,
  "userFacts": [
    {
      object (UserFact)
    }
  ],
  "expectationOutcomes": [
    {
      object (ScenarioExpectationOutcome)
    }
  ],
  "rubricOutcomes": [
    {
      object (ScenarioRubricOutcome)
    }
  ],
  "hallucinationResult": [
    {
      object (HallucinationResult)
    }
  ],
  "taskCompletionResult": {
    object (TaskCompletionResult)
  },
  "toolCallLatencies": [
    {
      object (ToolCallLatency)
    }
  ],
  "userGoalSatisfactionResult": {
    object (UserGoalSatisfactionResult)
  },
  "spanLatencies": [
    {
      object (SpanLatency)
    }
  ],
  "evaluationExpectationResults": [
    {
      object (EvaluationExpectationResult)
    }
  ],
  "milestoneResults": [
    {
      object (MilestoneResult)
    }
  ],

  // Union field _all_expectations_satisfied can be only one of the following:
  "allExpectationsSatisfied": boolean
  // End of list of possible types for union field _all_expectations_satisfied.

  // Union field _task_completed can be only one of the following:
  "taskCompleted": boolean
  // End of list of possible types for union field _task_completed.
}
Campos
conversation

string

Solo salida. La conversación que se generó en la situación

task

string

Solo salida. Es la tarea que se usó cuando se ejecutó la situación para este resultado.

userFacts[]

object (UserFact)

Solo salida. Son los datos del usuario que usó la situación para este resultado.

expectationOutcomes[]

object (ScenarioExpectationOutcome)

Solo salida. El resultado de cada expectativa.

rubricOutcomes[]

object (ScenarioRubricOutcome)

Solo salida. El resultado de la rúbrica.

hallucinationResult[]

object (HallucinationResult)

Solo salida. Es el resultado de la verificación de alucinaciones. Habrá un resultado de alucinación para cada turno de la conversación.

taskCompletionResult
(deprecated)

object (TaskCompletionResult)

Solo salida. Es el resultado de la verificación de finalización de la tarea.

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. La latencia de cada ejecución de llamada a la herramienta en la conversación.

userGoalSatisfactionResult

object (UserGoalSatisfactionResult)

Solo salida. Es el resultado de la verificación de satisfacción del objetivo del usuario.

spanLatencies[]

object (SpanLatency)

Solo salida. La latencia de los intervalos en la conversación.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Los resultados de la evaluación.

milestoneResults[]

object (MilestoneResult)

Solo salida. Los resultados de cada hito de la situación

Campo de unión _all_expectations_satisfied.

_all_expectations_satisfied puede ser una de las siguientes opciones:

allExpectationsSatisfied

boolean

Solo salida. Indica si se cumplieron todas las expectativas para este turno.

Campo de unión _task_completed.

_task_completed puede ser una de las siguientes opciones:

taskCompleted

boolean

Solo salida. Indica si la tarea se completó para este turno. Este es un compuesto de todas las expectativas satisfechas, sin alucinaciones y con la satisfacción de los objetivos del usuario.

ScenarioExpectationOutcome

Representación JSON
{
  "expectation": {
    object (ScenarioExpectation)
  },
  "outcome": enum (Outcome),

  // Union field result can be only one of the following:
  "observedToolCall": {
    object (ObservedToolCall)
  },
  "observedAgentResponse": {
    object (Message)
  }
  // End of list of possible types for union field result.
}
Campos
expectation

object (ScenarioExpectation)

Solo salida. La expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de ScenarioExpectation.

Campo de unión result. El resultado de la expectativa. result puede ser solo uno de los parámetros siguientes:
observedToolCall

object (ObservedToolCall)

Solo salida. Es la llamada a la herramienta observada.

observedAgentResponse

object (Message)

Solo salida. La respuesta observada del agente.

ObservedToolCall

Representación JSON
{
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  }
}
Campos
toolCall

object (ToolCall)

Solo salida. Es la llamada a la herramienta observada.

toolResponse

object (ToolResponse)

Solo salida. La respuesta de la herramienta observada.

ScenarioRubricOutcome

Representación JSON
{
  "rubric": string,
  "scoreExplanation": string,

  // Union field _score can be only one of the following:
  "score": number
  // End of list of possible types for union field _score.
}
Campos
rubric

string

Solo salida. Es la rúbrica que se usó para evaluar la conversación.

scoreExplanation

string

Solo salida. Es la respuesta del evaluador a la rúbrica.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

number

Solo salida. La puntuación de la conversación según la rúbrica.

TaskCompletionResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 1: Tarea completada Puntuación 0: Tarea no completada Puntuación -1: Objetivo del usuario no definido

explanation

string

Solo salida. Es la explicación de la puntuación de finalización de la tarea.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de finalización de la tarea. Puede ser -1, 0 o 1

UserGoalSatisfactionResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 2: Transferencia correcta Puntuación 1: Tarea del usuario satisfecha Puntuación 0: Tarea del usuario no satisfecha Puntuación -1: Tarea del usuario no especificada

explanation

string

Solo salida. Es la explicación de la puntuación de satisfacción de la tarea del usuario.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de satisfacción del usuario con la tarea. Puede ser -1, 0, 1, 2.

MilestoneResult

Representación JSON
{
  "milestone": {
    object (Milestone)
  },
  "status": enum (MilestoneStatus),
  "justification": string
}
Campos
milestone

object (Milestone)

Solo salida. Es el hito del que se hace un seguimiento.

status

enum (MilestoneStatus)

Solo salida. Es el estado actual del hito.

justification

string

Solo salida. Es la justificación del estado actual.

EvaluationPersona

Representación JSON
{
  "name": string,
  "description": string,
  "displayName": string,
  "personality": string,
  "speechConfig": {
    object (SpeechConfig)
  }
}
Campos
name

string

Obligatorio. Es el identificador único del perfil. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationPersonas/{evaluationPersona}

description

string

Es opcional. La descripción del arquetipo.

displayName

string

Obligatorio. Es el nombre visible del perfil. Es único dentro de una app.

personality

string

Obligatorio. Es una instrucción para el agente sobre cómo comportarse en la evaluación.

speechConfig

object (SpeechConfig)

Es opcional. Configuración de cómo suena el personaje (parámetros de configuración de TTS)

SpeechConfig

Representación JSON
{
  "speakingRate": number,
  "environment": enum (BackgroundEnvironment),
  "voiceId": string
}
Campos
speakingRate

number

Es opcional. Es la velocidad del habla. 1.0 es normal. Los valores más bajos son más lentos (p.ej., 0.8) y los más altos son más rápidos (p.ej., 1.5). Es útil para probar cómo el agente maneja a las personas que hablan rápido.

environment

enum (BackgroundEnvironment)

Es opcional. El entorno de audio simulado.

voiceId

string

Es opcional. Es el identificador o acento de voz específico que se usará. Ejemplo: "en-US-Wavenet-D" o "en-GB-Standard-A"

Estado

Representación JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

El código de estado, que debe ser un valor enum de google.rpc.Code.

message

string

Un mensaje de error dirigido al desarrollador, que debe estar en inglés. Cualquier mensaje de error dirigido al usuario debe localizarse y enviarse al campo google.rpc.Status.details; o el cliente debe localizarlo.

details[]

object

Una lista de mensajes que contienen los detalles del error. Hay un conjunto común de tipos de mensajes para que usen las API.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Cualquiera

Representación JSON
{
  "typeUrl": string,
  "value": string
}
Campos
typeUrl

string

Identifica el tipo de mensaje de Protobuf serializado con una referencia de URI que consta de un prefijo que termina en una barra diagonal y el nombre de tipo completamente calificado.

Ejemplo: type.googleapis.com/google.protobuf.StringValue

Esta cadena debe contener al menos un carácter /, y el contenido después del último / debe ser el nombre completamente calificado del tipo en formato canónico, sin un punto inicial. No escribas un esquema en estas referencias de URI para que los clientes no intenten comunicarse con ellos.

El prefijo es arbitrario y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último /, incluido este, para identificar el tipo. type.googleapis.com/ es un prefijo predeterminado común que requieren algunas implementaciones heredadas. Este prefijo no indica el origen del tipo, y no se espera que los URI que lo contienen respondan a ninguna solicitud.

Todas las cadenas de URL de tipo deben ser referencias de URI legales con la restricción adicional (para el formato de texto) de que el contenido de la referencia debe constar solo de caracteres alfanuméricos, escapes codificados con porcentaje y caracteres del siguiente conjunto (sin incluir las comillas simples exteriores): /-.~_!$&()*+,;=. A pesar de que permitimos las codificaciones porcentuales, las implementaciones no deben quitarles el escape para evitar confusiones con los analizadores existentes. Por ejemplo, se debería rechazar type.googleapis.com%2FFoo.

En el diseño original de Any, se consideró la posibilidad de lanzar un servicio de resolución de tipos en estas URLs de tipo, pero Protobuf nunca implementó uno y considera que comunicarse con estas URLs es problemático y un posible problema de seguridad. No intentes comunicarte con las URLs de tipo.

value

string (bytes format)

Contiene una serialización de Protobuf del tipo que se describe en type_url.

Es una cadena codificada en Base64.

EvaluationMetricsThresholds

Representación JSON
{
  "goldenEvaluationMetricsThresholds": {
    object (GoldenEvaluationMetricsThresholds)
  },
  "hallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "goldenHallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "scenarioHallucinationMetricBehavior": enum (HallucinationMetricBehavior)
}
Campos
goldenEvaluationMetricsThresholds

object (GoldenEvaluationMetricsThresholds)

Es opcional. Los umbrales de las métricas de evaluación de referencia.

hallucinationMetricBehavior
(deprecated)

enum (HallucinationMetricBehavior)

Es opcional. Obsoleto: Usa golden_hallucination_metric_behavior en su lugar. Actualmente, el comportamiento de la métrica de alucinación se usa para las evaluaciones de referencia.

goldenHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Es opcional. Es el comportamiento de la métrica de alucinación para las evaluaciones de referencia.

scenarioHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Es opcional. Es el comportamiento de la métrica de alucinación para las evaluaciones de situaciones.

GoldenEvaluationMetricsThresholds

Representación JSON
{
  "turnLevelMetricsThresholds": {
    object (TurnLevelMetricsThresholds)
  },
  "expectationLevelMetricsThresholds": {
    object (ExpectationLevelMetricsThresholds)
  },
  "toolMatchingSettings": {
    object (ToolMatchingSettings)
  }
}
Campos
turnLevelMetricsThresholds

object (TurnLevelMetricsThresholds)

Es opcional. Son los umbrales de las métricas a nivel del turno.

expectationLevelMetricsThresholds

object (ExpectationLevelMetricsThresholds)

Es opcional. Son los umbrales de las métricas de nivel de expectativa.

toolMatchingSettings

object (ToolMatchingSettings)

Es opcional. La configuración de coincidencia de la herramienta. Una llamada a la herramienta adicional es una llamada a la herramienta que está presente en la ejecución, pero que no coincide con ninguna llamada a la herramienta en la expectativa de referencia.

ToolMatchingSettings

Representación JSON
{
  "extraToolCallBehavior": enum (ExtraToolCallBehavior)
}
Campos
extraToolCallBehavior

enum (ExtraToolCallBehavior)

Es opcional. Comportamiento para las llamadas a herramientas adicionales. La configuración predeterminada es FAIL.

EvaluationConfig

Representación JSON
{
  "inputAudioConfig": {
    object (InputAudioConfig)
  },
  "outputAudioConfig": {
    object (OutputAudioConfig)
  },
  "evaluationChannel": enum (EvaluationChannel),
  "toolCallBehaviour": enum (EvaluationToolCallBehaviour)
}
Campos
inputAudioConfig

object (InputAudioConfig)

Es opcional. Es la configuración para procesar el audio de entrada.

outputAudioConfig

object (OutputAudioConfig)

Es opcional. Es la configuración para generar el audio de salida.

evaluationChannel

enum (EvaluationChannel)

Es opcional. Es el canal que se evaluará.

toolCallBehaviour

enum (EvaluationToolCallBehaviour)

Es opcional. Especifica si la evaluación debe usar llamadas a la herramienta reales o herramientas falsas.

InputAudioConfig

Representación JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer,
  "noiseSuppressionLevel": string
}
Campos
audioEncoding

enum (AudioEncoding)

Obligatorio. La codificación de los datos de audio de entrada.

sampleRateHertz

integer

Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de entrada.

noiseSuppressionLevel

string

Es opcional. Indica si se debe habilitar la reducción de ruido en el audio de entrada. Los valores disponibles son "low", "moderate", "high" y "very_high".

OutputAudioConfig

Representación JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer
}
Campos
audioEncoding

enum (AudioEncoding)

Obligatorio. Es la codificación de los datos de audio de salida.

sampleRateHertz

integer

Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de salida.

EvaluationMetricsConfig

Representación JSON
{
  "goldenMetricsConfig": {
    object (GoldenMetricsConfig)
  },
  "scenarioMetricsConfig": {
    object (ScenarioMetricsConfig)
  }
}
Campos
goldenMetricsConfig

object (GoldenMetricsConfig)

Es opcional. Configuración de las métricas de oro para la evaluación.

scenarioMetricsConfig

object (ScenarioMetricsConfig)

Es opcional. Es la configuración de las métricas del caso para la evaluación.

GoldenMetricsConfig

Representación JSON
{
  "semanticSimilarityMetricsConfig": {
    object (SemanticSimilarityMetricsConfig)
  },
  "toolCorrectnessMetricsConfig": {
    object (ToolCorrectnessMetricsConfig)
  },
  "stepToolCorrectnessMetricsConfig": {
    object (ToolCorrectnessMetricsConfig)
  }
}
Campos
semanticSimilarityMetricsConfig

object (SemanticSimilarityMetricsConfig)

Es opcional. Es la configuración global de las métricas de similitud semántica.

toolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel de turno.

stepToolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel de paso.

ToolCorrectnessMetricsConfig

Representación JSON
{
  "enableToolCorrectnessMetrics": boolean
}
Campos
enableToolCorrectnessMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de corrección de la herramienta para la evaluación.

ScenarioMetricsConfig

Representación JSON
{
  "userGoalMetMetricsConfig": {
    object (UserGoalMetMetricsConfig)
  },
  "expectationsMetMetricsConfig": {
    object (ExpectationsMetMetricsConfig)
  }
}
Campos
userGoalMetMetricsConfig

object (UserGoalMetMetricsConfig)

Es opcional. Es la configuración de las métricas de cumplimiento de objetivos del usuario.

expectationsMetMetricsConfig

object (ExpectationsMetMetricsConfig)

Es opcional. Es la configuración de las métricas de nivel de expectativa.

UserGoalMetMetricsConfig

Representación JSON
{
  "enableUserGoalMetMetrics": boolean
}
Campos
enableUserGoalMetMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de cumplimiento de los objetivos del usuario para la evaluación.

ExpectationsMetMetricsConfig

Representación JSON
{
  "enableExpectationsMetMetrics": boolean
}
Campos
enableExpectationsMetMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de nivel de expectativa para la evaluación.

FieldMask

Representación JSON
{
  "paths": [
    string
  ]
}
Campos
paths[]

string

Es el conjunto de rutas de acceso de la máscara de campo.

NullValue

Representa un null JSON.

NullValue es un centinela que usa una enumeración con un solo valor para representar el valor nulo de la unión de tipos Value.

Un campo de tipo NullValue con cualquier valor que no sea 0 se considera no válido. La mayoría de los serializadores de ProtoJSON emitirán un Value con un null_value establecido como un null de JSON, independientemente del valor entero, por lo que se realizará un recorrido de ida y vuelta a un valor 0.

Enums
NULL_VALUE Valor nulo.

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.

ComparisonType

Son los tipos de comparación admitidos para verificar la respuesta del agente.

Enums
COMPARISON_TYPE_UNSPECIFIED Tipo de comparación no especificado. El comportamiento predeterminado es SEMANTIC_SIMILARITY para las respuestas del agente y las llamadas a la herramienta.
EQUALS Coincidencia exacta de cadena.
CONTAINS Coincidencia de subcadena (verifica si la cadena esperada está contenida en la respuesta real)
SEMANTIC_SIMILARITY Coincidencia de similitud semántica (evalúa la similitud de significado con un LLM).

SemanticSimilarityChannel

Es el canal de similitud semántica que se usará.

Enums
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED Métrica sin especificar. La configuración predeterminada es TEXT.
TEXT Usa la similitud semántica de texto.
AUDIO Usa la similitud semántica de audio.

HallucinationMetricBehavior

El comportamiento de la métrica de alucinación. Independientemente del comportamiento, la métrica siempre se calculará. La diferencia es que, cuando se inhabilita, la métrica no se usa para calcular la puntuación de evaluación general.

Enums
HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED Comportamiento de la métrica de alucinación no especificado.
DISABLED Inhabilitar la métrica de alucinación.
ENABLED Habilita la métrica de alucinación.

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.

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.

ScenarioExecutionMode

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

Enums
SCENARIO_EXECUTION_MODE_UNSPECIFIED Modo de ejecución no especificado. La configuración predeterminada es QUALITY_OPTIMIZED.
QUALITY_OPTIMIZED Modo optimizado para calidad.
SPEED_OPTIMIZED Modo optimizado para velocidad.

Resultado

Es el resultado de la evaluación o expectativa.

Enums
OUTCOME_UNSPECIFIED No se especificó el resultado de la evaluación.
PASS Se aprobó la evaluación o expectativa. En el caso de una evaluación, esto significa que se cumplieron todas las expectativas.
FAIL No se pudieron cumplir las expectativas o la evaluación. En el caso de una evaluación, esto significa que no se cumplió al menos una expectativa.
SKIPPED Se omitió la evaluación o expectativa.

ErrorType

El tipo de error

Enums
ERROR_TYPE_UNSPECIFIED Tipo de error no especificado.
RUNTIME_FAILURE Se produjo un error durante la ejecución del entorno de ejecución.
CONVERSATION_RETRIEVAL_FAILURE No se pudo recuperar la conversación del entorno de ejecución de CES.
METRIC_CALCULATION_FAILURE No se pudo calcular una métrica o un resultado.
EVALUATION_UPDATE_FAILURE No se pudo actualizar la evaluación.
QUOTA_EXHAUSTED Se agotó la cuota.
USER_SIMULATION_FAILURE Se produjo un error durante la simulación del usuario.

Tipo

Es el tipo de intervalo. Es posible que se agreguen más valores en el futuro.

Enums
TYPE_UNSPECIFIED Valor predeterminado. Este valor no se usa.
TOOL Intervalo de llamada a la herramienta.
USER_CALLBACK Es el intervalo de devolución de llamada del usuario.
GUARDRAIL Intervalo de la protección.
LLM Intervalo de LLM.

MilestoneStatus

Es el estado del logro.

Enums
MILESTONE_STATUS_UNSPECIFIED Indica que no se especificó el estado.
NOT_STARTED El hito aún no comenzó.
IN_PROGRESS El hito está en curso.
COMPLETED El hito se completó correctamente.

BackgroundEnvironment

Entorno de audio simulado.

Enums
BACKGROUND_ENVIRONMENT_UNSPECIFIED No se especificó el entorno en segundo plano.
CALL_CENTER Entorno del centro de atención telefónica.
TRAFFIC Entorno con ruido de tráfico.
KIDS_NOISE Entorno con ruido de niños.
CAFE Entorno de cafetería.

ExecutionState

Es el estado de la ejecución del resultado de la evaluación.

Enums
EXECUTION_STATE_UNSPECIFIED No se especificó el estado de ejecución del resultado de la evaluación.
QUEUED La ejecución del resultado de la evaluación está en cola.
RUNNING Se está ejecutando el resultado de la evaluación.
COMPLETED Se completó la ejecución del resultado de la evaluación.
ERROR No se pudo ejecutar el resultado de la evaluación debido a un error interno.
CANCELLED Se canceló la ejecución del resultado de la evaluación.

ExtraToolCallBehavior

Define el comportamiento cuando se encuentra una llamada a la herramienta adicional. Una llamada a la herramienta adicional es una llamada a la herramienta que está presente en la ejecución, pero que no coincide con ninguna llamada a la herramienta en la expectativa de referencia.

Enums
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. La configuración predeterminada es FAIL.
FAIL Falla la evaluación si se encuentra una llamada a la herramienta adicional.
ALLOW Permitir la llamada a la herramienta adicional.

AudioEncoding

AudioEncoding especifica el formato de codificación de los datos de audio.

Enums
AUDIO_ENCODING_UNSPECIFIED Codificación de audio no especificada.
LINEAR16 Codificación de audio PCM lineal de 16 bits.
MULAW Las muestras de 8 bits que comprimen las muestras de audio de 14 bits mediante la ley PCMU/mu-law de G.711.
ALAW Muestras de 8 bits que comprimen muestras de audio de 14 bits con la ley A/PCMU G.711.

EvaluationChannel

Es el canal que se evaluará.

Enums
EVALUATION_CHANNEL_UNSPECIFIED Canal de evaluación no especificado.
TEXT Canal de evaluación solo de texto.
AUDIO Canal de evaluación de audio.

EvaluationToolCallBehaviour

Configura el comportamiento de la llamada a la herramienta para las ejecuciones de evaluación.

Enums
EVALUATION_TOOL_CALL_BEHAVIOUR_UNSPECIFIED Comportamiento de llamada a la herramienta no especificado. Se establecerá de forma predeterminada en llamadas a herramientas reales.
REAL Usa llamadas a herramientas reales.
FAKE Usa llamadas a herramientas falsas.

GoldenRunMethod

Es el método que se usa para ejecutar la evaluación.

Enums
GOLDEN_RUN_METHOD_UNSPECIFIED No se especificó el método de ejecución.
STABLE Ejecuta la evaluación como una repetición estable, en la que cada turno es una sesión única con los turnos esperados anteriores insertados como contexto.
NAIVE Ejecuta la evaluación como una reproducción ingenua, en la que la ejecución es una sola sesión sin contexto insertado.

OutcomeMetadata

Son los metadatos sobre el resultado de la evaluación.

Enums
OUTCOME_METADATA_UNSPECIFIED Metadatos de resultado sin especificar.
GRACEFUL_HANDOFF La evaluación dio como resultado una transferencia fluida a un representante humano.

Esquema de salida

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

Evaluación

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)
  },

  // Union field inputs can be only one of the following:
  "golden": {
    object (Golden)
  },
  "scenario": {
    object (Scenario)
  }
  // End of list of possible types for union field inputs.
}
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.

Campo de unión inputs. Las entradas para la evaluación inputs solo pueden ser una de las siguientes:
golden

object (Golden)

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

scenario

object (Scenario)

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

Golden

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

object (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}

GoldenTurn

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

object (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 (TurnLevelMetricsThresholds)

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

hallucinationMetricBehaviorOverride

enum (HallucinationMetricBehavior)

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

Paso

Representación JSON
{

  // Union field step can be only one of the following:
  "userInput": {
    object (SessionInput)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "expectation": {
    object (GoldenExpectation)
  }
  // End of list of possible types for union field step.
}
Campos
Campo de unión step. Es el paso que se debe realizar. step puede ser solo uno de los parámetros siguientes:
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 (GoldenExpectation)

Es opcional. Ejecuta una expectativa en el turno actual.

SessionInput

Representación JSON
{
  "willContinue": boolean,
  "recordingControl": enum (RecordingControl),

  // Union field input_type can be only one of the following:
  "text": string,
  "dtmf": string,
  "audio": string,
  "toolResponses": {
    object (ToolResponses)
  },
  "image": {
    object (Image)
  },
  "blob": {
    object (Blob)
  },
  "variables": {
    object
  },
  "event": {
    object (Event)
  }
  // End of list of possible types for union field input_type.
}
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 will_continue 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 (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.

Campo de unión input_type. Es el tipo de entrada. input_type puede ser solo uno de los parámetros siguientes:
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.

ToolResponses

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

object (ToolResponse)

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

ToolResponse

Representación JSON
{
  "id": string,
  "displayName": string,
  "response": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,
  "targetApp": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Es opcional. Es el ID para coincidencias del tool call al que corresponde la respuesta.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

response

object (Struct format)

Obligatorio. Es el resultado de la ejecución de la herramienta en formato de objeto JSON. Usa la clave "output" para especificar la respuesta de la herramienta y la clave "error" para especificar los detalles del error (si los hay). Si no se especifican las claves "output" y "error", toda la "response" se trata como el resultado de la ejecución de la herramienta.

parentToolCallId

string

Solo salida. Es el ID de la llamada a la herramienta que causó esta, cuando la emitió un agente secundario que trabaja en nombre de una llamada superior. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un agente secundario en la llamada que lo inició, en lugar de renderizar cada paso como un elemento hermano.

agentName

string

Solo salida. Nombre legible por humanos del agente que emitió esta llamada, p.ej., "Arquitecto de contratos". Está vacío cuando lo emite el agente raíz.

targetApp

string

Solo salida. Es la app a la que se orientó la herramienta ejecutada; refleja ToolCall.target_app.

Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutó. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes:
tool

string

Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Es opcional. Es la herramienta del conjunto de herramientas que se ejecutó.

ToolsetTool

Representación JSON
{
  "toolset": string,
  "toolId": string
}
Campos
toolset

string

Obligatorio. Es el nombre del recurso del conjunto de herramientas del que se deriva esta herramienta. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolId

string

Es opcional. Es el ID de la herramienta para filtrar las herramientas de las que se recuperará el esquema.

Struct

Representación JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

map (key: string, value: value (Value format))

Es un mapa sin ordenar de valores con tipo dinámico.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representación JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

Valor

Representación JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes:
nullValue

null

Representa un null JSON.

numberValue

number

Representa un número JSON. No debe ser NaN, Infinity ni -Infinity, ya que no se admiten en JSON. Tampoco puede representar valores Int64 grandes, ya que el formato JSON, por lo general, no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un booleano JSON (literal true o false en JSON).

structValue

object (Struct format)

Representa un objeto JSON.

listValue

array (ListValue format)

Representa un array JSON.

ListValue

Representación JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Es un campo repetido de valores con tipo dinámico.

Imagen

Representación JSON
{
  "mimeType": string,
  "data": string,
  "altText": string
}
Campos
mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen. Los tipos de imágenes compatibles incluyen los siguientes: * image/png * image/jpeg * image/webp

data

string (bytes format)

Obligatorio. Son los bytes sin procesar de la imagen.

Es una cadena codificada en Base64.

altText

string

Es opcional. Es el texto alternativo de la imagen.

BLOB

Representación JSON
{
  "mimeType": string,
  "data": string
}
Campos
mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen.

data

string (bytes format)

Obligatorio. Son los bytes sin procesar del BLOB.

Es una cadena codificada en Base64.

Evento

Representación JSON
{
  "event": string,
  "variables": {
    object
  }
}
Campos
event

string

Obligatorio. Es el nombre del evento.

variables

object (Struct format)

Es opcional. Son las variables adicionales asociadas con el evento.

AgentTransfer

Representación JSON
{
  "targetAgent": string,
  "displayName": string
}
Campos
targetAgent

string

Obligatorio. Es el agente al que se transfiere la conversación. El agente se encargará de la conversación a partir de este punto. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Solo salida. Es el nombre visible del agente.

GoldenExpectation

Representación JSON
{
  "note": string,
  "skipEvaluation": boolean,
  "expectationLevelMetricsThresholdsOverride": {
    object (ExpectationLevelMetricsThresholds)
  },
  "agentResponseSemanticSimilarityMetricsConfigOverride": {
    object (SemanticSimilarityMetricsConfig)
  },
  "agentResponseHallucinationMetricsConfigOverride": {
    object (HallucinationMetricsConfig)
  },
  "comparisonType": enum (ComparisonType),

  // Union field condition can be only one of the following:
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentResponse": {
    object (Message)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "mockToolResponse": {
    object (ToolResponse)
  },
  "noToolCalls": boolean
  // End of list of possible types for union field condition.
}
Campos
note

string

Es opcional. Es una nota para este requisito, útil para informar cuando fallan verificaciones específicas. P. ej., "Check_Payment_Tool_Called".

skipEvaluation

boolean

Es opcional. Si se establece como verdadero, no se evaluará esta expectativa específica.

expectationLevelMetricsThresholdsOverride

object (ExpectationLevelMetricsThresholds)

Es opcional. Anula las métricas a nivel del paso.

agentResponseSemanticSimilarityMetricsConfigOverride

object (SemanticSimilarityMetricsConfig)

Es opcional. Anulaciones para las métricas de similitud semántica de agent_response.

agentResponseHallucinationMetricsConfigOverride

object (HallucinationMetricsConfig)

Es opcional. Anulaciones para las métricas de alucinación de agent_response.

comparisonType

enum (ComparisonType)

Es opcional. Es el tipo de comparación que se usará para la verificación de expectativas.

Campo de unión condition. Es la verificación real que se debe realizar. condition puede ser solo uno de los parámetros siguientes:
toolCall

object (ToolCall)

Es opcional. Verifica que se haya llamado a una herramienta específica con los parámetros.

toolResponse

object (ToolResponse)

Es opcional. Verifica que una herramienta específica haya tenido la respuesta esperada.

agentResponse

object (Message)

Es opcional. Verifica que el agente haya respondido con la respuesta correcta. El rol "agent" está implícito.

agentTransfer

object (AgentTransfer)

Es opcional. Verifica que el agente haya transferido la conversación a otro agente.

updatedVariables

object (Struct format)

Es opcional. Verifica que el agente haya actualizado las variables de sesión a los valores esperados. También se usa para capturar las actualizaciones de las variables del agente para las evaluaciones de referencia.

mockToolResponse

object (ToolResponse)

Es opcional. La respuesta de la herramienta que se simulará, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

noToolCalls

boolean

Es opcional. Verifica que no se haya llamado a ninguna herramienta durante este turno.

ToolCall

Representación JSON
{
  "id": string,
  "displayName": string,
  "args": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,
  "targetApp": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Es opcional. Es el identificador único de la llamada a la herramienta. Si se completa, el cliente debe devolver el resultado de la ejecución con el ID para coincidencias en ToolResponse.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

args

object (Struct format)

Es opcional. Son los parámetros y valores de entrada de la herramienta en formato de objeto JSON.

parentToolCallId

string

Solo salida. Es el ID de la llamada a la herramienta que causó esta, cuando la emitió un agente secundario que trabaja en nombre de una llamada superior. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un agente secundario en la llamada que lo inició, en lugar de renderizar cada paso como un elemento hermano.

agentName

string

Solo salida. Nombre legible por humanos del agente que emitió esta llamada, p.ej., "Arquitecto de contratos". Está vacío cuando lo emite el agente raíz.

targetApp

string

Solo salida. La app a la que se dirige esta llamada, derivada por el asistente a partir de los argumentos de recursos de la llamada: un nombre de recurso de app, PROJECT para las herramientas con alcance de ubicación o vacío para las herramientas locales de la sesión. Se establece solo en las sesiones de asistente con alcance de proyecto.

Campo de unión tool_identifier. Es el identificador de la herramienta que se ejecutará. Puede ser una herramienta persistente o una herramienta de un conjunto de herramientas. tool_identifier puede ser solo uno de los parámetros siguientes:
tool

string

Es opcional. Es el nombre de la herramienta que se ejecutará. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Es opcional. Es la herramienta del conjunto de herramientas que se ejecutará.

Mensaje

Representación JSON
{
  "role": string,
  "chunks": [
    {
      object (Chunk)
    }
  ],
  "eventTime": string
}
Campos
role

string

Es opcional. Es el rol dentro de la conversación, p.ej., usuario, agente.

chunks[]

object (Chunk)

Es opcional. Es el contenido del mensaje como una serie de fragmentos.

eventTime

string (Timestamp format)

Es opcional. Es la marca de tiempo del momento en que se envió o recibió el mensaje. No se debe usar si el mensaje forma parte de un example.

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".

Bandinsecto

Representación JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "transcript": string,
  "blob": {
    object (Blob)
  },
  "payload": {
    object
  },
  "image": {
    object (Image)
  },
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "defaultVariables": {
    object
  }
  // End of list of possible types for union field data.
}
Campos
Campo de unión data. Datos de fragmentos data puede ser solo uno de los parámetros siguientes:
text

string

Es opcional. Datos de texto.

transcript

string

Es opcional. Es la transcripción asociada al audio.

blob

object (Blob)

Es opcional. Datos de BLOB.

payload

object (Struct format)

Es opcional. Datos de carga útil personalizados.

image

object (Image)

Es opcional. Son los datos de la imagen.

toolCall

object (ToolCall)

Es opcional. Es la solicitud de ejecución de la herramienta.

toolResponse

object (ToolResponse)

Es opcional. Es la respuesta de la ejecución de la herramienta.

agentTransfer

object (AgentTransfer)

Es opcional. Evento de transferencia de agente.

updatedVariables

object (Struct format)

Un struct representa las variables que se actualizaron en la conversación, con clave por nombres de variables.

defaultVariables

object (Struct format)

Un struct representa las variables predeterminadas al inicio de la conversación, con clave por nombres de variables.

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos del horario UTC desde el tiempo Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Deben ser valores de 0 a 999,999,999 inclusive.

ExpectationLevelMetricsThresholds

Representación JSON
{

  // Union field _tool_invocation_parameter_correctness_threshold can be only one
  // of the following:
  "toolInvocationParameterCorrectnessThreshold": number
  // End of list of possible types for union field
  // _tool_invocation_parameter_correctness_threshold.
}
Campos

Campo de unión _tool_invocation_parameter_correctness_threshold.

_tool_invocation_parameter_correctness_threshold puede ser una de las siguientes opciones:

toolInvocationParameterCorrectnessThreshold

number

Es opcional. Es el umbral de éxito para la corrección de los parámetros de invocación de herramientas individuales. Debe ser un número de punto flotante entre 0 y 1. El valor predeterminado es 1.0.

SemanticSimilarityMetricsConfig

Representación JSON
{
  "enableSemanticSimilarityMetrics": boolean
}
Campos
enableSemanticSimilarityMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de similitud semántica para la evaluación.

HallucinationMetricsConfig

Representación JSON
{
  "enableHallucinationMetrics": boolean
}
Campos
enableHallucinationMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de alucinación para la evaluación.

Intervalo

Representación JSON
{
  "name": string,
  "startTime": string,
  "endTime": string,
  "duration": string,
  "attributes": {
    object
  },
  "childSpans": [
    {
      object (Span)
    }
  ]
}
Campos
name

string

Solo salida. Es el nombre del intervalo.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del intervalo.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización del intervalo.

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".

duration

string (Duration format)

Solo salida. La duración del intervalo.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

attributes

object (Struct format)

Solo salida. Son los atributos de par clave-valor asociados con el intervalo.

childSpans[]

object (Span)

Solo salida. Son los intervalos secundarios que están anidados en este intervalo.

Duración

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos con signo del intervalo de tiempo. Debe ser un valor entre -315,576,000,000 y +315,576,000,000 inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/día * 365.25 días/año * 10,000 años

nanos

integer

Fracciones con signo de un segundo con una resolución de nanosegundos del intervalo de tiempo. Las duraciones de menos de un segundo se representan con un campo seconds de 0 y un campo nanos positivo o negativo. En el caso de las duraciones de un segundo o más, un valor distinto de cero para el campo nanos debe tener el mismo signo que el campo seconds. Deben ser valores de -999,999,999 a +999,999,999 inclusive.

TurnLevelMetricsThresholds

Representación JSON
{
  "semanticSimilarityChannel": enum (SemanticSimilarityChannel),

  // Union field _semantic_similarity_success_threshold can be only one of the
  // following:
  "semanticSimilaritySuccessThreshold": integer
  // End of list of possible types for union field
  // _semantic_similarity_success_threshold.

  // Union field _overall_tool_invocation_correctness_threshold can be only one
  // of the following:
  "overallToolInvocationCorrectnessThreshold": number
  // End of list of possible types for union field
  // _overall_tool_invocation_correctness_threshold.
}
Campos
semanticSimilarityChannel

enum (SemanticSimilarityChannel)

Es opcional. Es el canal de similitud semántica que se usará para la evaluación.

Campo de unión _semantic_similarity_success_threshold.

_semantic_similarity_success_threshold puede ser una de las siguientes opciones:

semanticSimilaritySuccessThreshold

integer

Es opcional. Es el umbral de éxito para la similitud semántica. Debe ser un número entero entre 0 y 4. El valor predeterminado es >= 3.

Campo de unión _overall_tool_invocation_correctness_threshold.

_overall_tool_invocation_correctness_threshold puede ser una de las siguientes opciones:

overallToolInvocationCorrectnessThreshold

number

Es opcional. Es el umbral de éxito para la corrección general de la invocación de herramientas. Debe ser un número de punto flotante entre 0 y 1. El valor predeterminado es 1.0.

Situación

Representación JSON
{
  "task": string,
  "userFacts": [
    {
      object (UserFact)
    }
  ],
  "maxTurns": integer,
  "rubrics": [
    string
  ],
  "scenarioExpectations": [
    {
      object (ScenarioExpectation)
    }
  ],
  "variableOverrides": {
    object
  },
  "taskCompletionBehavior": enum (TaskCompletionBehavior),
  "userGoalBehavior": enum (UserGoalBehavior),
  "evaluationExpectations": [
    string
  ],
  "milestones": [
    {
      object (Milestone)
    }
  ],
  "scenarioExecutionMode": enum (ScenarioExecutionMode)
}
Campos
task

string

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

userFacts[]

object (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 (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 (TaskCompletionBehavior)

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

userGoalBehavior

enum (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 (Milestone)

Es opcional. Los hitos de esta situación.

scenarioExecutionMode

enum (ScenarioExecutionMode)

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

UserFact

Representación JSON
{
  "name": string,
  "value": string
}
Campos
name

string

Obligatorio. Es el nombre del dato del usuario.

value

string

Obligatorio. Es el valor del hecho del usuario.

ScenarioExpectation

Representación JSON
{

  // Union field expectation can be only one of the following:
  "toolExpectation": {
    object (ToolExpectation)
  },
  "agentResponse": {
    object (Message)
  }
  // End of list of possible types for union field expectation.
}
Campos
Campo de unión expectation. Es la expectativa para evaluar la conversación que produce la simulación. expectation puede ser solo uno de los parámetros siguientes:
toolExpectation

object (ToolExpectation)

Es opcional. Es el par de llamada a la herramienta y respuesta que se evaluará.

agentResponse

object (Message)

Es opcional. Es la respuesta del agente que se evaluará.

ToolExpectation

Representación JSON
{
  "expectedToolCall": {
    object (ToolCall)
  },
  "mockToolResponse": {
    object (ToolResponse)
  }
}
Campos
expectedToolCall

object (ToolCall)

Obligatorio. La llamada a la herramienta esperada, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

mockToolResponse

object (ToolResponse)

Obligatorio. La respuesta de la herramienta que se simulará, con los parámetros de interés especificados. El LLM alucinará los parámetros que no se especifiquen.

Logro

Representación JSON
{
  "goal": string,
  "maxTurnCount": integer,
  "successCriteria": string,
  "protocol": string,
  "staticUtterance": string,
  "event": {
    object (Event)
  }
}
Campos
goal

string

Obligatorio. Es el objetivo del hito.

maxTurnCount

integer

Es opcional. Es la cantidad máxima de turnos para este hito.

successCriteria

string

Es opcional. Los criterios de éxito del hito.

protocol

string

Es opcional. Son los lineamientos que el agente debe seguir durante la conversación.

staticUtterance

string

Es opcional. Es un enunciado estático que el simulador enviará exactamente, en lugar de generar de forma dinámica la entrada del usuario.

event

object (Event)

Es opcional. Es una entrada de evento que se envía en lugar de la generación dinámica.

AggregatedMetrics

Representación JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campos
metricsByAppVersion[]

object (MetricsByAppVersion)

Solo salida. Son las métricas agregadas, agrupadas por ID de versión de la app.

MetricsByAppVersion

Representación JSON
{
  "appVersionId": string,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ],
  "passCount": integer,
  "failCount": integer,
  "metricsByTurn": [
    {
      object (MetricsByTurn)
    }
  ]
}
Campos
appVersionId

string

Solo salida. Es el ID de la versión de la app.

toolMetrics[]

object (ToolMetrics)

Solo salida. Métricas de cada herramienta en esta versión de la app

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Métricas de similitud semántica en esta versión de la app.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo salida. Métricas de alucinación en esta versión de la app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Métricas de la latencia de las llamadas a herramientas en esta versión de la app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Métricas de la latencia de turnos en esta versión de la app.

passCount

integer

Solo salida. Es la cantidad de veces que se aprobó la evaluación.

failCount

integer

Solo salida. Es la cantidad de veces que falló la evaluación.

metricsByTurn[]

object (MetricsByTurn)

Solo salida. Son las métricas agregadas por turno dentro de esta versión de la app.

ToolMetrics

Representación JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta.

passCount

integer

Solo salida. La cantidad de veces que se aprobó la herramienta.

failCount

integer

Solo salida. Es la cantidad de veces que falló la herramienta.

SemanticSimilarityMetrics

Representación JSON
{
  "score": number
}
Campos
score

number

Solo salida. La puntuación promedio de similitud semántica (0-4).

HallucinationMetrics

Representación JSON
{
  "score": number
}
Campos
score

number

Solo salida. La puntuación promedio de alucinaciones (de 0 a 1).

ToolCallLatencyMetrics

Representación JSON
{
  "tool": string,
  "averageLatency": string
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta.

averageLatency

string (Duration format)

Solo salida. La latencia promedio de las llamadas a la herramienta.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

TurnLatencyMetrics

Representación JSON
{
  "averageLatency": string
}
Campos
averageLatency

string (Duration format)

Solo salida. Es la latencia promedio de los turnos.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

MetricsByTurn

Representación JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campos
turnIndex

integer

Solo salida. Es el índice de turno (basado en 0).

toolMetrics[]

object (ToolMetrics)

Solo salida. Son las métricas de cada herramienta en este turno.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Son las métricas de similitud semántica dentro de este turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo salida. Métricas de alucinación en este turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Métricas de la latencia de la llamada a la herramienta en este turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Métricas de la latencia de turno dentro de este turno.

EvaluationResult

Representación JSON
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "evaluationStatus": enum (Outcome),
  "evaluationRun": string,
  "persona": {
    object (EvaluationPersona)
  },
  "errorInfo": {
    object (EvaluationErrorInfo)
  },
  "error": {
    object (Status)
  },
  "initiatedBy": string,
  "appVersion": string,
  "appVersionDisplayName": string,
  "changelog": string,
  "changelogCreateTime": string,
  "executionState": enum (ExecutionState),
  "evaluationMetricsThresholds": {
    object (EvaluationMetricsThresholds)
  },
  "config": {
    object (EvaluationConfig)
  },
  "goldenRunMethod": enum (GoldenRunMethod),
  "rootSpan": {
    object (Span)
  },
  "outcomeMetadata": enum (OutcomeMetadata),

  // Union field result can be only one of the following:
  "goldenResult": {
    object (GoldenResult)
  },
  "scenarioResult": {
    object (ScenarioResult)
  }
  // End of list of possible types for union field result.
}
Campos
name

string

Es el identificador. Es el identificador único del resultado de la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{result}

displayName

string

Obligatorio. Es el nombre visible del resultado de la evaluación. Es único dentro de una evaluación. De forma predeterminada, tiene el siguiente formato: " result - ".

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de cuando se creó el resultado 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".

evaluationStatus

enum (Outcome)

Solo salida. Es el resultado de la evaluación. Solo se completa si execution_state es COMPLETE.

evaluationRun

string

Solo salida. Es la ejecución de la evaluación que produjo este resultado. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}

persona

object (EvaluationPersona)

Solo salida. Es el perfil que se usa para generar la conversación para el resultado de la evaluación.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Es la información de error del resultado de la evaluación.

error
(deprecated)

object (Status)

Solo salida. Obsoleto: Usa error_info en su lugar. Se encontraron errores durante la ejecución.

initiatedBy

string

Solo salida. Es el usuario que inició la ejecución de la evaluación que generó este resultado.

appVersion

string

Solo salida. Es la versión de la app que se usó para generar la conversación que dio lugar a este resultado. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

appVersionDisplayName

string

Solo salida. Es el nombre visible del app_version con el que se ejecutó la evaluación.

changelog

string

Solo salida. Es el registro de cambios de la versión de la app en la que se ejecutó la evaluación. Se completa si el usuario ejecuta la evaluación en la versión más reciente o en el borrador.

changelogCreateTime

string (Timestamp format)

Solo salida. Es la hora de creación del registro de cambios de la versión de la app con la que se ejecutó la evaluación. Se completa si el usuario ejecuta la evaluación en la versión más reciente o en el borrador.

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".

executionState

enum (ExecutionState)

Solo salida. Es el estado de la ejecución del resultado de la evaluación.

evaluationMetricsThresholds

object (EvaluationMetricsThresholds)

Solo salida. Son los umbrales de evaluación del resultado.

config

object (EvaluationConfig)

Solo salida. Es la configuración que se usó en la ejecución de la evaluación que generó este resultado.

goldenRunMethod

enum (GoldenRunMethod)

Solo salida. Es el método que se usa para ejecutar la evaluación de referencia.

rootSpan

object (Span)

Solo salida. El intervalo raíz de la ejecución de la evaluación, que incluye información sobre cada paso de la evaluación.

outcomeMetadata

enum (OutcomeMetadata)

Solo salida. Son los metadatos de resultado de la evaluación. Solo se completa si execution_state es COMPLETE.

Campo de unión result. Es el resultado de la evaluación. Solo se propaga cuando execution_state es COMPLETED. result puede ser solo uno de los parámetros siguientes:
goldenResult

object (GoldenResult)

Solo salida. Es el resultado de una evaluación de referencia.

scenarioResult

object (ScenarioResult)

Solo salida. Es el resultado de la evaluación de un caso.

GoldenResult

Representación JSON
{
  "turnReplayResults": [
    {
      object (TurnReplayResult)
    }
  ],
  "evaluationExpectationResults": [
    {
      object (EvaluationExpectationResult)
    }
  ]
}
Campos
turnReplayResults[]

object (TurnReplayResult)

Solo salida. Es el resultado de ejecutar cada turno de la conversación de referencia.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Los resultados de la evaluación.

TurnReplayResult

Representación JSON
{
  "conversation": string,
  "expectationOutcome": [
    {
      object (GoldenExpectationOutcome)
    }
  ],
  "hallucinationResult": {
    object (HallucinationResult)
  },
  "toolInvocationScore": number,
  "turnLatency": string,
  "toolCallLatencies": [
    {
      object (ToolCallLatency)
    }
  ],
  "semanticSimilarityResult": {
    object (SemanticSimilarityResult)
  },
  "overallToolInvocationResult": {
    object (OverallToolInvocationResult)
  },
  "errorInfo": {
    object (EvaluationErrorInfo)
  },
  "spanLatencies": [
    {
      object (SpanLatency)
    }
  ],

  // Union field _tool_ordered_invocation_score can be only one of the following:
  "toolOrderedInvocationScore": number
  // End of list of possible types for union field
  // _tool_ordered_invocation_score.
}
Campos
conversation

string

Solo salida. Es la conversación que se generó para este turno.

expectationOutcome[]

object (GoldenExpectationOutcome)

Solo salida. El resultado de cada expectativa.

hallucinationResult

object (HallucinationResult)

Solo salida. Es el resultado de la verificación de alucinaciones.

toolInvocationScore
(deprecated)

number

Solo salida. Obsoleto. En su lugar, usa OverallToolInvocationResult.

turnLatency

string (Duration format)

Solo salida. Es la duración del giro.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. La latencia de cada llamada a la herramienta en el turno.

semanticSimilarityResult

object (SemanticSimilarityResult)

Solo salida. Es el resultado de la verificación de similitud semántica.

overallToolInvocationResult

object (OverallToolInvocationResult)

Solo salida. Es el resultado de la verificación general de la invocación de la herramienta.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Información sobre el error que se produjo durante este turno.

spanLatencies[]

object (SpanLatency)

Solo salida. Es la latencia de los intervalos en el turno.

Campo de unión _tool_ordered_invocation_score.

_tool_ordered_invocation_score puede ser una de las siguientes opciones:

toolOrderedInvocationScore

number

Solo salida. La puntuación general de invocación ordenada de la herramienta para este turno. Esto indica el porcentaje general de herramientas del turno esperado que se invocaron en el orden esperado.

GoldenExpectationOutcome

Representación JSON
{
  "expectation": {
    object (GoldenExpectation)
  },
  "outcome": enum (Outcome),
  "semanticSimilarityResult": {
    object (SemanticSimilarityResult)
  },
  "toolInvocationResult": {
    object (ToolInvocationResult)
  },

  // Union field result can be only one of the following:
  "observedToolCall": {
    object (ToolCall)
  },
  "observedToolResponse": {
    object (ToolResponse)
  },
  "observedAgentResponse": {
    object (Message)
  },
  "observedAgentTransfer": {
    object (AgentTransfer)
  },
  "observedPayload": {
    object
  }
  // End of list of possible types for union field result.
}
Campos
expectation

object (GoldenExpectation)

Solo salida. La expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de la expectativa.

semanticSimilarityResult
(deprecated)

object (SemanticSimilarityResult)

Solo salida. Es el resultado de la verificación de similitud semántica.

toolInvocationResult

object (ToolInvocationResult)

Solo salida. Es el resultado de la verificación de invocación de la herramienta.

Campo de unión result. El resultado de la expectativa. result puede ser solo uno de los parámetros siguientes:
observedToolCall

object (ToolCall)

Solo salida. Es el resultado de la expectativa de la llamada a la herramienta.

observedToolResponse

object (ToolResponse)

Solo salida. Es el resultado de la expectativa de respuesta de la herramienta.

observedAgentResponse

object (Message)

Solo salida. Es el resultado de la expectativa de respuesta del agente.

observedAgentTransfer

object (AgentTransfer)

Solo salida. Es el resultado de la expectativa de transferencia del agente.

observedPayload

object (Struct format)

Solo salida. Es una carga útil personalizada observada. No hay expectativas para las cargas útiles personalizadas. Esto solo se usa para el cálculo de métricas. El resultado siempre es SKIPPED.

SemanticSimilarityResult

Representación JSON
{
  "label": string,
  "explanation": string,
  "outcome": enum (Outcome),

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 4: Totalmente coherente Puntuación 3: Mayormente coherente Puntuación 2: Parcialmente coherente (omisiones menores) Puntuación 1: En gran medida incoherente (omisiones importantes) Puntuación 0: Completamente incoherente o contradictorio

explanation

string

Solo salida. Es la explicación de la puntuación de similitud semántica.

outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de similitud semántica. Esto se determina comparando la puntuación con el semantic_similarity_success_threshold. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de similitud semántica. Puede ser 0, 1, 2, 3 o 4.

ToolInvocationResult

Representación JSON
{
  "outcome": enum (Outcome),
  "explanation": string,

  // Union field _parameter_correctness_score can be only one of the following:
  "parameterCorrectnessScore": number
  // End of list of possible types for union field _parameter_correctness_score.
}
Campos
outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de invocación de la herramienta. Esto se determina comparando el parámetro parameter_correctness_score con el umbral. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

explanation

string

Solo salida. Es una explicación en texto libre del resultado de la invocación de la herramienta.

Campo de unión _parameter_correctness_score.

_parameter_correctness_score puede ser una de las siguientes opciones:

parameterCorrectnessScore

number

Solo salida. Es la puntuación de corrección del parámetro de invocación de la herramienta. Esto indica el porcentaje de parámetros de la llamada a la herramienta esperada que también estuvieron presentes en la llamada a la herramienta real.

HallucinationResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 1: Justificada Puntuación 0: No justificada Puntuación -1: No hay afirmación para evaluar

explanation

string

Solo salida. Es la explicación de la puntuación de alucinación.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de alucinación. Puede ser -1, 0 o 1.

ToolCallLatency

Representación JSON
{
  "tool": string,
  "displayName": string,
  "startTime": string,
  "endTime": string,
  "executionLatency": string
}
Campos
tool

string

Solo salida. Es el nombre de la herramienta que se ejecutó. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}.

displayName

string

Solo salida. Es el nombre visible de la herramienta.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio de la ejecución de la llamada a la herramienta.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización de la ejecución de la llamada a la herramienta.

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".

executionLatency

string (Duration format)

Solo salida. Es la latencia de la ejecución de la llamada a la herramienta.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

OverallToolInvocationResult

Representación JSON
{
  "outcome": enum (Outcome),

  // Union field _tool_invocation_score can be only one of the following:
  "toolInvocationScore": number
  // End of list of possible types for union field _tool_invocation_score.
}
Campos
outcome

enum (Outcome)

Solo salida. Es el resultado de la verificación de invocación de la herramienta. Esto se determina comparando el tool_invocation_score con el overall_tool_invocation_correctness_threshold. Si la puntuación es igual o superior al umbral, el resultado será PASS. De lo contrario, el resultado será FAIL.

Campo de unión _tool_invocation_score.

_tool_invocation_score puede ser una de las siguientes opciones:

toolInvocationScore

number

Es la puntuación general de invocación de herramientas para este turno. Esto indica el porcentaje general de herramientas del turno esperado que se invocaron.

EvaluationErrorInfo

Representación JSON
{
  "errorType": enum (ErrorType),
  "errorMessage": string,
  "sessionId": string,
  "userFacingErrorMessage": string
}
Campos
errorType

enum (ErrorType)

Solo salida. Es el tipo de error.

errorMessage

string

Solo salida. Mensaje de error.

sessionId

string

Solo salida. Es el ID de sesión de la conversación que causó el error.

userFacingErrorMessage

string

Solo salida. Es el mensaje de error para el usuario.

SpanLatency

Representación JSON
{
  "type": enum (Type),
  "displayName": string,
  "startTime": string,
  "endTime": string,
  "executionLatency": string,

  // Union field identifier can be only one of the following:
  "resource": string,
  "toolset": {
    object (ToolsetTool)
  },
  "model": string,
  "callback": string
  // End of list of possible types for union field identifier.
}
Campos
type

enum (Type)

Solo salida. Es el tipo de intervalo.

displayName

string

Solo salida. Es el nombre visible del intervalo. Se aplica a los intervalos de herramientas y protecciones.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del intervalo.

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".

endTime

string (Timestamp format)

Solo salida. Es la hora de finalización del intervalo.

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".

executionLatency

string (Duration format)

Solo salida. La latencia del intervalo.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

Campo de unión identifier. Es el identificador del elemento específico según su tipo. identifier puede ser solo uno de los parámetros siguientes:
resource

string

Solo salida. Es el nombre del recurso de los intervalos de la protección o la herramienta.

toolset

object (ToolsetTool)

Solo salida. Es el identificador de la herramienta del conjunto de herramientas.

model

string

Solo salida. Es el nombre del intervalo de LLM.

callback

string

Solo salida. Es el nombre del intervalo de devolución de llamada del usuario.

EvaluationExpectationResult

Representación JSON
{
  "evaluationExpectation": string,
  "prompt": string,
  "outcome": enum (Outcome),
  "explanation": string
}
Campos
evaluationExpectation

string

Solo salida. La expectativa de la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}

prompt

string

Solo salida. La instrucción que se usó para la evaluación.

outcome

enum (Outcome)

Solo salida. Es el resultado de la expectativa de evaluación.

explanation

string

Solo salida. Es la explicación del resultado.

ScenarioResult

Representación JSON
{
  "conversation": string,
  "task": string,
  "userFacts": [
    {
      object (UserFact)
    }
  ],
  "expectationOutcomes": [
    {
      object (ScenarioExpectationOutcome)
    }
  ],
  "rubricOutcomes": [
    {
      object (ScenarioRubricOutcome)
    }
  ],
  "hallucinationResult": [
    {
      object (HallucinationResult)
    }
  ],
  "taskCompletionResult": {
    object (TaskCompletionResult)
  },
  "toolCallLatencies": [
    {
      object (ToolCallLatency)
    }
  ],
  "userGoalSatisfactionResult": {
    object (UserGoalSatisfactionResult)
  },
  "spanLatencies": [
    {
      object (SpanLatency)
    }
  ],
  "evaluationExpectationResults": [
    {
      object (EvaluationExpectationResult)
    }
  ],
  "milestoneResults": [
    {
      object (MilestoneResult)
    }
  ],

  // Union field _all_expectations_satisfied can be only one of the following:
  "allExpectationsSatisfied": boolean
  // End of list of possible types for union field _all_expectations_satisfied.

  // Union field _task_completed can be only one of the following:
  "taskCompleted": boolean
  // End of list of possible types for union field _task_completed.
}
Campos
conversation

string

Solo salida. La conversación que se generó en la situación

task

string

Solo salida. Es la tarea que se usó cuando se ejecutó la situación para este resultado.

userFacts[]

object (UserFact)

Solo salida. Son los datos del usuario que usó la situación para este resultado.

expectationOutcomes[]

object (ScenarioExpectationOutcome)

Solo salida. El resultado de cada expectativa.

rubricOutcomes[]

object (ScenarioRubricOutcome)

Solo salida. El resultado de la rúbrica.

hallucinationResult[]

object (HallucinationResult)

Solo salida. Es el resultado de la verificación de alucinaciones. Habrá un resultado de alucinación para cada turno de la conversación.

taskCompletionResult
(deprecated)

object (TaskCompletionResult)

Solo salida. Es el resultado de la verificación de finalización de la tarea.

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. La latencia de cada ejecución de llamada a la herramienta en la conversación.

userGoalSatisfactionResult

object (UserGoalSatisfactionResult)

Solo salida. Es el resultado de la verificación de satisfacción del objetivo del usuario.

spanLatencies[]

object (SpanLatency)

Solo salida. La latencia de los intervalos en la conversación.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Los resultados de la evaluación.

milestoneResults[]

object (MilestoneResult)

Solo salida. Los resultados de cada hito de la situación

Campo de unión _all_expectations_satisfied.

_all_expectations_satisfied puede ser una de las siguientes opciones:

allExpectationsSatisfied

boolean

Solo salida. Indica si se cumplieron todas las expectativas para este turno.

Campo de unión _task_completed.

_task_completed puede ser una de las siguientes opciones:

taskCompleted

boolean

Solo salida. Indica si la tarea se completó para este turno. Este es un compuesto de todas las expectativas satisfechas, sin alucinaciones y con la satisfacción de los objetivos del usuario.

ScenarioExpectationOutcome

Representación JSON
{
  "expectation": {
    object (ScenarioExpectation)
  },
  "outcome": enum (Outcome),

  // Union field result can be only one of the following:
  "observedToolCall": {
    object (ObservedToolCall)
  },
  "observedAgentResponse": {
    object (Message)
  }
  // End of list of possible types for union field result.
}
Campos
expectation

object (ScenarioExpectation)

Solo salida. La expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de ScenarioExpectation.

Campo de unión result. El resultado de la expectativa. result puede ser solo uno de los parámetros siguientes:
observedToolCall

object (ObservedToolCall)

Solo salida. Es la llamada a la herramienta observada.

observedAgentResponse

object (Message)

Solo salida. La respuesta observada del agente.

ObservedToolCall

Representación JSON
{
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  }
}
Campos
toolCall

object (ToolCall)

Solo salida. Es la llamada a la herramienta observada.

toolResponse

object (ToolResponse)

Solo salida. La respuesta de la herramienta observada.

ScenarioRubricOutcome

Representación JSON
{
  "rubric": string,
  "scoreExplanation": string,

  // Union field _score can be only one of the following:
  "score": number
  // End of list of possible types for union field _score.
}
Campos
rubric

string

Solo salida. Es la rúbrica que se usó para evaluar la conversación.

scoreExplanation

string

Solo salida. Es la respuesta del evaluador a la rúbrica.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

number

Solo salida. La puntuación de la conversación según la rúbrica.

TaskCompletionResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 1: Tarea completada Puntuación 0: Tarea no completada Puntuación -1: Objetivo del usuario no definido

explanation

string

Solo salida. Es la explicación de la puntuación de finalización de la tarea.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de finalización de la tarea. Puede ser -1, 0 o 1

UserGoalSatisfactionResult

Representación JSON
{
  "label": string,
  "explanation": string,

  // Union field _score can be only one of the following:
  "score": integer
  // End of list of possible types for union field _score.
}
Campos
label

string

Solo salida. Es la etiqueta asociada con cada puntuación. Puntuación 2: Transferencia correcta Puntuación 1: Tarea del usuario satisfecha Puntuación 0: Tarea del usuario no satisfecha Puntuación -1: Tarea del usuario no especificada

explanation

string

Solo salida. Es la explicación de la puntuación de satisfacción de la tarea del usuario.

Campo de unión _score.

_score puede ser una de las siguientes opciones:

score

integer

Solo salida. Es la puntuación de satisfacción del usuario con la tarea. Puede ser -1, 0, 1, 2.

MilestoneResult

Representación JSON
{
  "milestone": {
    object (Milestone)
  },
  "status": enum (MilestoneStatus),
  "justification": string
}
Campos
milestone

object (Milestone)

Solo salida. Es el hito del que se hace un seguimiento.

status

enum (MilestoneStatus)

Solo salida. Es el estado actual del hito.

justification

string

Solo salida. Es la justificación del estado actual.

EvaluationPersona

Representación JSON
{
  "name": string,
  "description": string,
  "displayName": string,
  "personality": string,
  "speechConfig": {
    object (SpeechConfig)
  }
}
Campos
name

string

Obligatorio. Es el identificador único del perfil. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationPersonas/{evaluationPersona}

description

string

Es opcional. La descripción del arquetipo.

displayName

string

Obligatorio. Es el nombre visible del perfil. Es único dentro de una app.

personality

string

Obligatorio. Es una instrucción para el agente sobre cómo comportarse en la evaluación.

speechConfig

object (SpeechConfig)

Es opcional. Configuración de cómo suena el personaje (parámetros de configuración de TTS)

SpeechConfig

Representación JSON
{
  "speakingRate": number,
  "environment": enum (BackgroundEnvironment),
  "voiceId": string
}
Campos
speakingRate

number

Es opcional. Es la velocidad del habla. 1.0 es normal. Los valores más bajos son más lentos (p.ej., 0.8) y los más altos son más rápidos (p.ej., 1.5). Es útil para probar cómo el agente maneja a las personas que hablan rápido.

environment

enum (BackgroundEnvironment)

Es opcional. El entorno de audio simulado.

voiceId

string

Es opcional. Es el identificador o acento de voz específico que se usará. Ejemplo: "en-US-Wavenet-D" o "en-GB-Standard-A"

Estado

Representación JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

El código de estado, que debe ser un valor enum de google.rpc.Code.

message

string

Un mensaje de error dirigido al desarrollador, que debe estar en inglés. Cualquier mensaje de error dirigido al usuario debe localizarse y enviarse al campo google.rpc.Status.details; o el cliente debe localizarlo.

details[]

object

Una lista de mensajes que contienen los detalles del error. Hay un conjunto común de tipos de mensajes para que usen las API.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Cualquiera

Representación JSON
{
  "typeUrl": string,
  "value": string
}
Campos
typeUrl

string

Identifica el tipo de mensaje de Protobuf serializado con una referencia de URI que consta de un prefijo que termina en una barra diagonal y el nombre de tipo completamente calificado.

Ejemplo: type.googleapis.com/google.protobuf.StringValue

Esta cadena debe contener al menos un carácter /, y el contenido después del último / debe ser el nombre completamente calificado del tipo en formato canónico, sin un punto inicial. No escribas un esquema en estas referencias de URI para que los clientes no intenten comunicarse con ellos.

El prefijo es arbitrario y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último /, incluido este, para identificar el tipo. type.googleapis.com/ es un prefijo predeterminado común que requieren algunas implementaciones heredadas. Este prefijo no indica el origen del tipo, y no se espera que los URI que lo contienen respondan a ninguna solicitud.

Todas las cadenas de URL de tipo deben ser referencias de URI legales con la restricción adicional (para el formato de texto) de que el contenido de la referencia debe constar solo de caracteres alfanuméricos, escapes codificados con porcentaje y caracteres del siguiente conjunto (sin incluir las comillas simples exteriores): /-.~_!$&()*+,;=. A pesar de que permitimos las codificaciones porcentuales, las implementaciones no deben quitarles el escape para evitar confusiones con los analizadores existentes. Por ejemplo, se debería rechazar type.googleapis.com%2FFoo.

En el diseño original de Any, se consideró la posibilidad de lanzar un servicio de resolución de tipos en estas URLs de tipo, pero Protobuf nunca implementó uno y considera que comunicarse con estas URLs es problemático y un posible problema de seguridad. No intentes comunicarte con las URLs de tipo.

value

string (bytes format)

Contiene una serialización de Protobuf del tipo que se describe en type_url.

Es una cadena codificada en Base64.

EvaluationMetricsThresholds

Representación JSON
{
  "goldenEvaluationMetricsThresholds": {
    object (GoldenEvaluationMetricsThresholds)
  },
  "hallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "goldenHallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "scenarioHallucinationMetricBehavior": enum (HallucinationMetricBehavior)
}
Campos
goldenEvaluationMetricsThresholds

object (GoldenEvaluationMetricsThresholds)

Es opcional. Los umbrales de las métricas de evaluación de referencia.

hallucinationMetricBehavior
(deprecated)

enum (HallucinationMetricBehavior)

Es opcional. Obsoleto: Usa golden_hallucination_metric_behavior en su lugar. Actualmente, el comportamiento de la métrica de alucinación se usa para las evaluaciones de referencia.

goldenHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Es opcional. Es el comportamiento de la métrica de alucinación para las evaluaciones de referencia.

scenarioHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Es opcional. Es el comportamiento de la métrica de alucinación para las evaluaciones de situaciones.

GoldenEvaluationMetricsThresholds

Representación JSON
{
  "turnLevelMetricsThresholds": {
    object (TurnLevelMetricsThresholds)
  },
  "expectationLevelMetricsThresholds": {
    object (ExpectationLevelMetricsThresholds)
  },
  "toolMatchingSettings": {
    object (ToolMatchingSettings)
  }
}
Campos
turnLevelMetricsThresholds

object (TurnLevelMetricsThresholds)

Es opcional. Son los umbrales de las métricas a nivel del turno.

expectationLevelMetricsThresholds

object (ExpectationLevelMetricsThresholds)

Es opcional. Son los umbrales de las métricas de nivel de expectativa.

toolMatchingSettings

object (ToolMatchingSettings)

Es opcional. La configuración de coincidencia de la herramienta. Una llamada a la herramienta adicional es una llamada a la herramienta que está presente en la ejecución, pero que no coincide con ninguna llamada a la herramienta en la expectativa de referencia.

ToolMatchingSettings

Representación JSON
{
  "extraToolCallBehavior": enum (ExtraToolCallBehavior)
}
Campos
extraToolCallBehavior

enum (ExtraToolCallBehavior)

Es opcional. Comportamiento para las llamadas a herramientas adicionales. La configuración predeterminada es FAIL.

EvaluationConfig

Representación JSON
{
  "inputAudioConfig": {
    object (InputAudioConfig)
  },
  "outputAudioConfig": {
    object (OutputAudioConfig)
  },
  "evaluationChannel": enum (EvaluationChannel),
  "toolCallBehaviour": enum (EvaluationToolCallBehaviour)
}
Campos
inputAudioConfig

object (InputAudioConfig)

Es opcional. Es la configuración para procesar el audio de entrada.

outputAudioConfig

object (OutputAudioConfig)

Es opcional. Es la configuración para generar el audio de salida.

evaluationChannel

enum (EvaluationChannel)

Es opcional. Es el canal que se evaluará.

toolCallBehaviour

enum (EvaluationToolCallBehaviour)

Es opcional. Especifica si la evaluación debe usar llamadas a la herramienta reales o herramientas falsas.

InputAudioConfig

Representación JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer,
  "noiseSuppressionLevel": string
}
Campos
audioEncoding

enum (AudioEncoding)

Obligatorio. La codificación de los datos de audio de entrada.

sampleRateHertz

integer

Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de entrada.

noiseSuppressionLevel

string

Es opcional. Indica si se debe habilitar la reducción de ruido en el audio de entrada. Los valores disponibles son "low", "moderate", "high" y "very_high".

OutputAudioConfig

Representación JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer
}
Campos
audioEncoding

enum (AudioEncoding)

Obligatorio. Es la codificación de los datos de audio de salida.

sampleRateHertz

integer

Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de salida.

EvaluationMetricsConfig

Representación JSON
{
  "goldenMetricsConfig": {
    object (GoldenMetricsConfig)
  },
  "scenarioMetricsConfig": {
    object (ScenarioMetricsConfig)
  }
}
Campos
goldenMetricsConfig

object (GoldenMetricsConfig)

Es opcional. Configuración de las métricas de oro para la evaluación.

scenarioMetricsConfig

object (ScenarioMetricsConfig)

Es opcional. Es la configuración de las métricas del caso para la evaluación.

GoldenMetricsConfig

Representación JSON
{
  "semanticSimilarityMetricsConfig": {
    object (SemanticSimilarityMetricsConfig)
  },
  "toolCorrectnessMetricsConfig": {
    object (ToolCorrectnessMetricsConfig)
  },
  "stepToolCorrectnessMetricsConfig": {
    object (ToolCorrectnessMetricsConfig)
  }
}
Campos
semanticSimilarityMetricsConfig

object (SemanticSimilarityMetricsConfig)

Es opcional. Es la configuración global de las métricas de similitud semántica.

toolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel de turno.

stepToolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel de paso.

ToolCorrectnessMetricsConfig

Representación JSON
{
  "enableToolCorrectnessMetrics": boolean
}
Campos
enableToolCorrectnessMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de corrección de la herramienta para la evaluación.

ScenarioMetricsConfig

Representación JSON
{
  "userGoalMetMetricsConfig": {
    object (UserGoalMetMetricsConfig)
  },
  "expectationsMetMetricsConfig": {
    object (ExpectationsMetMetricsConfig)
  }
}
Campos
userGoalMetMetricsConfig

object (UserGoalMetMetricsConfig)

Es opcional. Es la configuración de las métricas de cumplimiento de objetivos del usuario.

expectationsMetMetricsConfig

object (ExpectationsMetMetricsConfig)

Es opcional. Es la configuración de las métricas de nivel de expectativa.

UserGoalMetMetricsConfig

Representación JSON
{
  "enableUserGoalMetMetrics": boolean
}
Campos
enableUserGoalMetMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de cumplimiento de los objetivos del usuario para la evaluación.

ExpectationsMetMetricsConfig

Representación JSON
{
  "enableExpectationsMetMetrics": boolean
}
Campos
enableExpectationsMetMetrics

boolean

Es opcional. Indica si se deben calcular las métricas de nivel de expectativa para la evaluación.

NullValue

Representa un null JSON.

NullValue es un centinela que usa una enumeración con un solo valor para representar el valor nulo de la unión de tipos Value.

Un campo de tipo NullValue con cualquier valor que no sea 0 se considera no válido. La mayoría de los serializadores de ProtoJSON emitirán un Value con un null_value establecido como un null de JSON, independientemente del valor entero, por lo que se realizará un recorrido de ida y vuelta a un valor 0.

Enums
NULL_VALUE Valor nulo.

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.

ComparisonType

Son los tipos de comparación admitidos para verificar la respuesta del agente.

Enums
COMPARISON_TYPE_UNSPECIFIED Tipo de comparación no especificado. El comportamiento predeterminado es SEMANTIC_SIMILARITY para las respuestas del agente y las llamadas a la herramienta.
EQUALS Coincidencia exacta de cadena.
CONTAINS Coincidencia de subcadena (verifica si la cadena esperada está contenida en la respuesta real)
SEMANTIC_SIMILARITY Coincidencia de similitud semántica (evalúa la similitud de significado con un LLM).

SemanticSimilarityChannel

Es el canal de similitud semántica que se usará.

Enums
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED Métrica sin especificar. La configuración predeterminada es TEXT.
TEXT Usa la similitud semántica de texto.
AUDIO Usa la similitud semántica de audio.

HallucinationMetricBehavior

El comportamiento de la métrica de alucinación. Independientemente del comportamiento, la métrica siempre se calculará. La diferencia es que, cuando se inhabilita, la métrica no se usa para calcular la puntuación de evaluación general.

Enums
HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED Comportamiento de la métrica de alucinación no especificado.
DISABLED Inhabilitar la métrica de alucinación.
ENABLED Habilita la métrica de alucinación.

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.

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.

ScenarioExecutionMode

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

Enums
SCENARIO_EXECUTION_MODE_UNSPECIFIED Modo de ejecución no especificado. La configuración predeterminada es QUALITY_OPTIMIZED.
QUALITY_OPTIMIZED Modo optimizado para calidad.
SPEED_OPTIMIZED Modo optimizado para velocidad.

Resultado

Es el resultado de la evaluación o expectativa.

Enums
OUTCOME_UNSPECIFIED No se especificó el resultado de la evaluación.
PASS Se aprobó la evaluación o expectativa. En el caso de una evaluación, esto significa que se cumplieron todas las expectativas.
FAIL No se pudieron cumplir las expectativas o la evaluación. En el caso de una evaluación, esto significa que no se cumplió al menos una expectativa.
SKIPPED Se omitió la evaluación o expectativa.

ErrorType

El tipo de error

Enums
ERROR_TYPE_UNSPECIFIED Tipo de error no especificado.
RUNTIME_FAILURE Se produjo un error durante la ejecución del entorno de ejecución.
CONVERSATION_RETRIEVAL_FAILURE No se pudo recuperar la conversación del entorno de ejecución de CES.
METRIC_CALCULATION_FAILURE No se pudo calcular una métrica o un resultado.
EVALUATION_UPDATE_FAILURE No se pudo actualizar la evaluación.
QUOTA_EXHAUSTED Se agotó la cuota.
USER_SIMULATION_FAILURE Se produjo un error durante la simulación del usuario.

Tipo

Es el tipo de intervalo. Es posible que se agreguen más valores en el futuro.

Enums
TYPE_UNSPECIFIED Valor predeterminado. Este valor no se usa.
TOOL Intervalo de llamada a la herramienta.
USER_CALLBACK Es el intervalo de devolución de llamada del usuario.
GUARDRAIL Intervalo de la protección.
LLM Intervalo de LLM.

MilestoneStatus

Es el estado del logro.

Enums
MILESTONE_STATUS_UNSPECIFIED Indica que no se especificó el estado.
NOT_STARTED El hito aún no comenzó.
IN_PROGRESS El hito está en curso.
COMPLETED El hito se completó correctamente.

BackgroundEnvironment

Entorno de audio simulado.

Enums
BACKGROUND_ENVIRONMENT_UNSPECIFIED No se especificó el entorno en segundo plano.
CALL_CENTER Entorno del centro de atención telefónica.
TRAFFIC Entorno con ruido de tráfico.
KIDS_NOISE Entorno con ruido de niños.
CAFE Entorno de cafetería.

ExecutionState

Es el estado de la ejecución del resultado de la evaluación.

Enums
EXECUTION_STATE_UNSPECIFIED No se especificó el estado de ejecución del resultado de la evaluación.
QUEUED La ejecución del resultado de la evaluación está en cola.
RUNNING Se está ejecutando el resultado de la evaluación.
COMPLETED Se completó la ejecución del resultado de la evaluación.
ERROR No se pudo ejecutar el resultado de la evaluación debido a un error interno.
CANCELLED Se canceló la ejecución del resultado de la evaluación.

ExtraToolCallBehavior

Define el comportamiento cuando se encuentra una llamada a la herramienta adicional. Una llamada a la herramienta adicional es una llamada a la herramienta que está presente en la ejecución, pero que no coincide con ninguna llamada a la herramienta en la expectativa de referencia.

Enums
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. La configuración predeterminada es FAIL.
FAIL Falla la evaluación si se encuentra una llamada a la herramienta adicional.
ALLOW Permitir la llamada a la herramienta adicional.

AudioEncoding

AudioEncoding especifica el formato de codificación de los datos de audio.

Enums
AUDIO_ENCODING_UNSPECIFIED Codificación de audio no especificada.
LINEAR16 Codificación de audio PCM lineal de 16 bits.
MULAW Las muestras de 8 bits que comprimen las muestras de audio de 14 bits mediante la ley PCMU/mu-law de G.711.
ALAW Muestras de 8 bits que comprimen muestras de audio de 14 bits con la ley A/PCMU G.711.

EvaluationChannel

Es el canal que se evaluará.

Enums
EVALUATION_CHANNEL_UNSPECIFIED Canal de evaluación no especificado.
TEXT Canal de evaluación solo de texto.
AUDIO Canal de evaluación de audio.

EvaluationToolCallBehaviour

Configura el comportamiento de la llamada a la herramienta para las ejecuciones de evaluación.

Enums
EVALUATION_TOOL_CALL_BEHAVIOUR_UNSPECIFIED Comportamiento de llamada a la herramienta no especificado. Se establecerá de forma predeterminada en llamadas a herramientas reales.
REAL Usa llamadas a herramientas reales.
FAKE Usa llamadas a herramientas falsas.

GoldenRunMethod

Es el método que se usa para ejecutar la evaluación.

Enums
GOLDEN_RUN_METHOD_UNSPECIFIED No se especificó el método de ejecución.
STABLE Ejecuta la evaluación como una repetición estable, en la que cada turno es una sesión única con los turnos esperados anteriores insertados como contexto.
NAIVE Ejecuta la evaluación como una reproducción ingenua, en la que la ejecución es una sola sesión sin contexto insertado.

OutcomeMetadata

Son los metadatos sobre el resultado de la evaluación.

Enums
OUTCOME_METADATA_UNSPECIFIED Metadatos de resultado sin especificar.
GRACEFUL_HANDOFF La evaluación dio como resultado una transferencia fluida a un representante humano.

Anotaciones de herramientas

Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se puede enviar un mensaje de confirmación a un usuario.

Junto con la cadena de título, las siguientes sugerencias booleanas se definen de la siguiente manera:

  • readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.
  • destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.
  • idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.
  • openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.

Sugerencia destructiva: ❌ | Sugerencia idempotente: ❌ | Sugerencia de solo lectura: ❌ | Sugerencia de mundo abierto: ❌