MCP Tools Reference: ces.googleapis.com

Herramienta: create_evaluation

Crea una evaluación nueva.

En la siguiente muestra de código, se muestra cómo usar curl para llamar a la herramienta de MCP create_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": "create_evaluation",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Mensaje de solicitud para EvaluationService.CreateEvaluation.

CreateEvaluationRequest

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

string

Obligatorio. Es la app para la que se creará la evaluación. Formato: projects/{project}/locations/{location}/apps/{app}

evaluationId

string

Es opcional. Es el ID que se usará para la evaluación, que se convertirá en el componente final del nombre del recurso de la evaluación. Si no se proporciona, se asignará automáticamente un ID único para la evaluación.

evaluation

object (Evaluation)

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

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. Es la descripción de la evaluación definida por el usuario.

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 la creació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".

createdBy

string

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

updateTime

string (Timestamp format)

Solo salida. Es la 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 el ETag que se usa para garantizar que el objeto no haya cambiado durante una operación de lectura-modificación-escritura. Si el ETag está vacío, la actualización reemplazará cualquier cambio simultáneo.

aggregatedMetrics

object (AggregatedMetrics)

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

lastCompletedResult

object (EvaluationResult)

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

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. Son los últimos 10 resultados de la evaluación. Este campo 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 las 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 giros 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. Son los pasos necesarios para reproducir una conversación de oro.

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. Son anulaciones para los umbrales de métricas a nivel del turno.

hallucinationMetricBehaviorOverride

enum (HallucinationMetricBehavior)

Es opcional. Es una anulación para el comportamiento de la métrica de alucinación a nivel del 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. Es la 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,

  // 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 el indicador de finalización.

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 herramientas del 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. Es la 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,

  // 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 para el que es la respuesta.

displayName

string

Solo salida. 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 corresponde). Si no se especifican las claves "output" y "error", toda la "response" se trata como 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 subagente que trabaja en nombre de una llamada principal. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un subagente en la llamada que lo inició en lugar de renderizar cada paso como un elemento secundario.

agentName

string

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

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 y recuperar el esquema.

Struct

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

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

Es un mapa no ordenado de valores escritos de forma dinámica.

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 de 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 generalmente no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un valor booleano de 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 escritos de forma dinámica.

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 admitidos 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 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. A partir de este punto, el agente se encargará de la conversación. 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. Son anulaciones para las métricas de similitud semántica de agent_response.

agentResponseHallucinationMetricsConfigOverride

object (HallucinationMetricsConfig)

Es opcional. Son 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 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 correctamente. El rol "agente" 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 actualizaciones de variables del agente para las evaluaciones doradas.

mockToolResponse

object (ToolResponse)

Es opcional. Es 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,

  // 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. 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 subagente que trabaja en nombre de una llamada principal. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un subagente en la llamada que lo inició en lugar de renderizar cada paso como un elemento secundario.

agentName

string

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

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 o agente.

chunks[]

object (Chunk)

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

Fragmento

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. Son los datos del BLOB.

payload

object (Struct format)

Es opcional. Son los datos de la carga útil personalizada.

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. Es el evento de transferencia del agente.

updatedVariables

object (Struct format)

Un struct representa las variables que se actualizaron en la conversación, con claves según los nombres de las variables.

defaultVariables

object (Struct format)

Un struct representa variables predeterminadas al inicio de la conversación, con claves según los nombres de las 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. Debe ser un valor entre 0 y 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 del parámetro de invocación de la herramienta individual. 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 período.

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 período.

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. Es 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 anidados en este intervalo.

Duración

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

string (int64 format)

Son los segundos firmados del período. Debe estar comprendido 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

Son fracciones de segundo firmadas con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo seconds igual a 0 y un campo nanos positivo o negativo. Para 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. Debe ser un valor entre -999,999,999 y +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 precisió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
  ],
  "scenarioExecutionMode": enum (ScenarioExecutionMode)
}
Campos
task

string

Obligatorio. Es la tarea a la que se orienta el escenario.

userFacts[]

object (UserFact)

Es opcional. Son los datos 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 puntuará la situación.

scenarioExpectations[]

object (ScenarioExpectation)

Obligatorio. Son los ScenarioExpectations para evaluar la conversación que produce la simulación del usuario.

variableOverrides

object (Struct format)

Es opcional. Variables o parámetros de sesión como contexto para la sesión, con claves según los nombres de las variables. Los miembros de esta estructura anularán cualquier valor predeterminado establecido por el sistema.

Ten en cuenta que son diferentes de los datos del usuario, que son datos que el usuario conoce. Las variables son parámetros que conoce el agente, es decir, 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. Es 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}

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 hecho 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. Es 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. Es 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.

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. Son las métricas de cada herramienta dentro de esta versión de la app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Son las métricas de similitud semántica dentro de esta versión de la app.

hallucinationMetrics[]

object (HallucinationMetrics)

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

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Son las métricas de latencia de la llamada a la herramienta dentro de esta versión de la app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Son las métricas de latencia de turnos dentro de 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. Cantidad de veces que la herramienta pasó la prueba.

failCount

integer

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

SemanticSimilarityMetrics

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

number

Solo salida. Es la puntuación promedio de similitud semántica (de 0 a 4).

HallucinationMetrics

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

number

Solo salida. Es la puntuación promedio de alucinación (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. Es la latencia promedio de las llamadas a herramientas.

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. Índice del 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. Son las métricas de alucinación dentro de este turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Son las métricas de latencia de la llamada a la herramienta dentro de este turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Son las métricas de latencia del 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: " resultado - ".

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la creación del 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 arquetipo que se usó para generar la conversación del resultado de la evaluación.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Es la información del 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 produjo 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 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.

changelogCreateTime

string (Timestamp format)

Solo salida. Es la fecha y 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. Es 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 del 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 datos 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. Son los resultados esperados 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. Es 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 turno.

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

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. Es 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. Es información sobre el error que ocurrió durante este turno.

spanLatencies[]

object (SpanLatency)

Solo salida. Es la latencia de los tramos 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. Es la puntuación general de invocación ordenada de la herramienta para este turno. 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. Es 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 la invocación de la herramienta.

Campo de unión result. Es 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. 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 a cada puntuación. Puntuación 4: Completamente coherente Puntuación 3: Mayormente coherente Puntuación 2: Parcialmente coherente (omisiones menores) Puntuación 1: Mayormente 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 umbral de éxito de semantic_similarity. Si la puntuación es igual o superior al umbral, el resultado será APROBADO. 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á APROBADO. 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. 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 a cada puntuación. Puntuación 1: Puntuación justificada 0: Puntuación no justificada -1: No hay reclamo 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á APROBADO. 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 la invocación de la herramienta para este turno. Indica el porcentaje general de herramientas del turno esperado que se invocaron realmente.

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 la sesión de la conversación que causó el error.

userFacingErrorMessage

string

Solo salida. Es el mensaje de error visible 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 tramos de herramientas y protecciones.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del período.

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 período.

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 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 tramos de la herramienta o la protección.

toolset

object (ToolsetTool)

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

model

string

Solo salida. Es el nombre del intervalo del 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. Es la expectativa de evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}

prompt

string

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

outcome

enum (Outcome)

Solo salida. Es el resultado esperado de la 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)
    }
  ],

  // 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. Es el resultado de cada expectativa.

rubricOutcomes[]

object (ScenarioRubricOutcome)

Solo salida. Es 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 por 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. Es la latencia de la ejecución de cada 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. Es la latencia de los tramos en la conversación.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Son los resultados esperados de la evaluació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 se completó la tarea en este turno. Es una combinación de todas las expectativas satisfechas, sin alucinaciones y con satisfacción del objetivo 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. Es la expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de ScenarioExpectation.

Campo de unión result. Es 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. Es 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. Es la respuesta observada de la herramienta.

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. Es 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 a 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 a cada puntuación. Puntuación 2: Puntuación de transferencia fluida 1: Puntuación de tarea del usuario satisfecha 0: Puntuación de tarea del usuario no satisfecha -1: Puntuación de 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 de la tarea del usuario. Puede ser -1, 0, 1 o 2.

EvaluationPersona

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

string

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

description

string

Es opcional. Es la descripción del arquetipo.

displayName

string

Obligatorio. Es el nombre visible del arquetipo. 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. Es la configuración de cómo suena el arquetipo (ajustes 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. Es 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 del mensaje serializado de Protobuf con una referencia de URI que consta de un prefijo que termina en una barra y el nombre de tipo completo.

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

El prefijo es arbitrario, y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último / inclusive 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 URIs que lo contienen respondan a ninguna solicitud.

Todas las cadenas de URL de tipo deben ser referencias 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 como porcentaje y caracteres del siguiente conjunto (sin incluir las comillas inversas externas): /-.~_!$&()*+,;=. A pesar de que permitimos la codificación de porcentaje, las implementaciones no deben decodificarlas para evitar confusiones con los analizadores existentes. Por ejemplo, se debe rechazar type.googleapis.com%2FFoo.

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

value

string (bytes format)

Contiene una serialización de Protobuf del tipo que describe 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. Son los umbrales de las métricas de evaluación ideales.

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. Es la configuración de la herramienta de correlación. Una llamada a herramienta adicional es una llamada a herramienta que está presente en la ejecución, pero no coincide con ninguna llamada a herramienta en la expectativa ideal.

ToolMatchingSettings

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

enum (ExtraToolCallBehavior)

Es opcional. Comportamiento para las llamadas a herramientas adicionales. El valor predeterminado 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 herramientas reales o falsas.

InputAudioConfig

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

enum (AudioEncoding)

Obligatorio. Es 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. Es la configuración de las métricas doradas para la evaluación.

scenarioMetricsConfig

object (ScenarioMetricsConfig)

Es opcional. Es la configuración de las métricas de la situación 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 para 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 la instrucción.

stepToolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel del 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 objetivos del usuario alcanzados.

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 del objetivo 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 de JSON.

NullValue es un centinela que usa un enum con solo un 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, y, por lo tanto, se realizará un viaje de ida y vuelta a un valor de 0.

Enums
NULL_VALUE Valor nulo.

ComparisonType

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

Enums
COMPARISON_TYPE_UNSPECIFIED No se especificó el tipo de comparación. El comportamiento predeterminado es SEMANTIC_SIMILARITY para las respuestas del agente y las llamadas a herramientas.
EQUALS La cadena coincide exactamente.
CONTAINS Coincidencia de subcadena (verifica si la cadena esperada se encuentra en la respuesta real).
SEMANTIC_SIMILARITY Coincidencia de similitud semántica (evalúa la similitud del significado con un LLM).

SemanticSimilarityChannel

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

Enums
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED No se especificó la métrica. El valor predeterminado es TEXT.
TEXT Usa la similitud semántica del texto.
AUDIO Usa la similitud semántica del audio.

HallucinationMetricBehavior

Es 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 general de la evaluación.

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

TaskCompletionBehavior

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

Enums
TASK_COMPLETION_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado será TASK_SATISFIED.
TASK_SATISFIED La tarea del usuario debe completarse correctamente.
TASK_REJECTED Se debe rechazar la tarea del usuario.

UserGoalBehavior

Es el comportamiento esperado del objetivo del usuario. Se usa para determinar si la situación es exitosa.

Enums
USER_GOAL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado será 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 sin especificar. El valor predeterminado es QUALITY_OPTIMIZED.
QUALITY_OPTIMIZED Modo optimizado para la calidad.
SPEED_OPTIMIZED Modo optimizado para la velocidad.

Resultado

Es el resultado de la evaluación o la expectativa.

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

ErrorType

El tipo de error

Enums
ERROR_TYPE_UNSPECIFIED Es un tipo de error sin especificar.
RUNTIME_FAILURE Se produjo un error durante la ejecución del tiempo 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 valores adicionales en el futuro.

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

BackgroundEnvironment

Entorno de audio simulado.

Enums
BACKGROUND_ENVIRONMENT_UNSPECIFIED No se especificó el entorno de segundo plano.
CALL_CENTER Entorno del centro de atención telefónica
TRAFFIC Entorno de ruido de tráfico.
KIDS_NOISE Entorno ruidoso para niños
CAFE Entorno de la 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 la evaluación del resultado.
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 herramienta adicional. Una llamada a herramienta adicional es una llamada a herramienta que está presente en la ejecución, pero no coincide con ninguna llamada a herramienta en la expectativa ideal.

Enums
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado es FAIL.
FAIL Falla la evaluación si se encuentra una llamada a herramienta adicional.
ALLOW Permite la llamada a la herramienta adicional.

AudioEncoding

AudioEncoding especifica el formato de codificación para 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 compandan muestras de audio de 14 bits con G.711 PCMU/A-law.

EvaluationChannel

Es el canal que se evaluará.

Enums
EVALUATION_CHANNEL_UNSPECIFIED Canal de evaluación sin especificar.
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 sin especificar. Se establecerá de forma predeterminada en llamadas a herramientas reales.
REAL Usa llamadas a herramientas reales.
FAKE Usar 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 Son metadatos de resultado sin especificar.
GRACEFUL_HANDOFF La evaluación dio como resultado una transferencia correcta 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. Es la descripción de la evaluación definida por el usuario.

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 la creació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".

createdBy

string

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

updateTime

string (Timestamp format)

Solo salida. Es la 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 el ETag que se usa para garantizar que el objeto no haya cambiado durante una operación de lectura-modificación-escritura. Si el ETag está vacío, la actualización reemplazará cualquier cambio simultáneo.

aggregatedMetrics

object (AggregatedMetrics)

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

lastCompletedResult

object (EvaluationResult)

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

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. Son los últimos 10 resultados de la evaluación. Este campo 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 las 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 giros 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. Son los pasos necesarios para reproducir una conversación de oro.

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. Son anulaciones para los umbrales de métricas a nivel del turno.

hallucinationMetricBehaviorOverride

enum (HallucinationMetricBehavior)

Es opcional. Es una anulación para el comportamiento de la métrica de alucinación a nivel del 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. Es la 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,

  // 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 el indicador de finalización.

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 herramientas del 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. Es la 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,

  // 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 para el que es la respuesta.

displayName

string

Solo salida. 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 corresponde). Si no se especifican las claves "output" y "error", toda la "response" se trata como 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 subagente que trabaja en nombre de una llamada principal. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un subagente en la llamada que lo inició en lugar de renderizar cada paso como un elemento secundario.

agentName

string

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

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 y recuperar el esquema.

Struct

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

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

Es un mapa no ordenado de valores escritos de forma dinámica.

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 de 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 generalmente no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un valor booleano de 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 escritos de forma dinámica.

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 admitidos 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 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. A partir de este punto, el agente se encargará de la conversación. 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. Son anulaciones para las métricas de similitud semántica de agent_response.

agentResponseHallucinationMetricsConfigOverride

object (HallucinationMetricsConfig)

Es opcional. Son 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 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 correctamente. El rol "agente" 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 actualizaciones de variables del agente para las evaluaciones doradas.

mockToolResponse

object (ToolResponse)

Es opcional. Es 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,

  // 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. 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 subagente que trabaja en nombre de una llamada principal. Está vacío para las llamadas de nivel superior. Permite que un cliente agrupe el trabajo de un subagente en la llamada que lo inició en lugar de renderizar cada paso como un elemento secundario.

agentName

string

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

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 o agente.

chunks[]

object (Chunk)

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

Fragmento

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. Son los datos del BLOB.

payload

object (Struct format)

Es opcional. Son los datos de la carga útil personalizada.

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. Es el evento de transferencia del agente.

updatedVariables

object (Struct format)

Un struct representa las variables que se actualizaron en la conversación, con claves según los nombres de las variables.

defaultVariables

object (Struct format)

Un struct representa variables predeterminadas al inicio de la conversación, con claves según los nombres de las 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. Debe ser un valor entre 0 y 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 del parámetro de invocación de la herramienta individual. 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 período.

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 período.

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. Es 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 anidados en este intervalo.

Duración

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

string (int64 format)

Son los segundos firmados del período. Debe estar comprendido 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

Son fracciones de segundo firmadas con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo seconds igual a 0 y un campo nanos positivo o negativo. Para 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. Debe ser un valor entre -999,999,999 y +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 precisió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
  ],
  "scenarioExecutionMode": enum (ScenarioExecutionMode)
}
Campos
task

string

Obligatorio. Es la tarea a la que se orienta el escenario.

userFacts[]

object (UserFact)

Es opcional. Son los datos 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 puntuará la situación.

scenarioExpectations[]

object (ScenarioExpectation)

Obligatorio. Son los ScenarioExpectations para evaluar la conversación que produce la simulación del usuario.

variableOverrides

object (Struct format)

Es opcional. Variables o parámetros de sesión como contexto para la sesión, con claves según los nombres de las variables. Los miembros de esta estructura anularán cualquier valor predeterminado establecido por el sistema.

Ten en cuenta que son diferentes de los datos del usuario, que son datos que el usuario conoce. Las variables son parámetros que conoce el agente, es decir, 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. Es 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}

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 hecho 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. Es 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. Es 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.

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. Son las métricas de cada herramienta dentro de esta versión de la app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo salida. Son las métricas de similitud semántica dentro de esta versión de la app.

hallucinationMetrics[]

object (HallucinationMetrics)

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

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Son las métricas de latencia de la llamada a la herramienta dentro de esta versión de la app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Son las métricas de latencia de turnos dentro de 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. Cantidad de veces que la herramienta pasó la prueba.

failCount

integer

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

SemanticSimilarityMetrics

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

number

Solo salida. Es la puntuación promedio de similitud semántica (de 0 a 4).

HallucinationMetrics

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

number

Solo salida. Es la puntuación promedio de alucinación (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. Es la latencia promedio de las llamadas a herramientas.

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. Índice del 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. Son las métricas de alucinación dentro de este turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo salida. Son las métricas de latencia de la llamada a la herramienta dentro de este turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo salida. Son las métricas de latencia del 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: " resultado - ".

createTime

string (Timestamp format)

Solo salida. Es la marca de tiempo de la creación del 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 arquetipo que se usó para generar la conversación del resultado de la evaluación.

errorInfo

object (EvaluationErrorInfo)

Solo salida. Es la información del 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 produjo 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 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.

changelogCreateTime

string (Timestamp format)

Solo salida. Es la fecha y 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. Es 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 del 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 datos 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. Son los resultados esperados 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. Es 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 turno.

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

toolCallLatencies[]

object (ToolCallLatency)

Solo salida. Es 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. Es información sobre el error que ocurrió durante este turno.

spanLatencies[]

object (SpanLatency)

Solo salida. Es la latencia de los tramos 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. Es la puntuación general de invocación ordenada de la herramienta para este turno. 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. Es 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 la invocación de la herramienta.

Campo de unión result. Es 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. 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 a cada puntuación. Puntuación 4: Completamente coherente Puntuación 3: Mayormente coherente Puntuación 2: Parcialmente coherente (omisiones menores) Puntuación 1: Mayormente 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 umbral de éxito de semantic_similarity. Si la puntuación es igual o superior al umbral, el resultado será APROBADO. 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á APROBADO. 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. 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 a cada puntuación. Puntuación 1: Puntuación justificada 0: Puntuación no justificada -1: No hay reclamo 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á APROBADO. 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 la invocación de la herramienta para este turno. Indica el porcentaje general de herramientas del turno esperado que se invocaron realmente.

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 la sesión de la conversación que causó el error.

userFacingErrorMessage

string

Solo salida. Es el mensaje de error visible 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 tramos de herramientas y protecciones.

startTime

string (Timestamp format)

Solo salida. Es la hora de inicio del período.

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 período.

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 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 tramos de la herramienta o la protección.

toolset

object (ToolsetTool)

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

model

string

Solo salida. Es el nombre del intervalo del 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. Es la expectativa de evaluación. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationExpectations/{evaluation_expectation}

prompt

string

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

outcome

enum (Outcome)

Solo salida. Es el resultado esperado de la 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)
    }
  ],

  // 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. Es el resultado de cada expectativa.

rubricOutcomes[]

object (ScenarioRubricOutcome)

Solo salida. Es 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 por 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. Es la latencia de la ejecución de cada 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. Es la latencia de los tramos en la conversación.

evaluationExpectationResults[]

object (EvaluationExpectationResult)

Solo salida. Son los resultados esperados de la evaluació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 se completó la tarea en este turno. Es una combinación de todas las expectativas satisfechas, sin alucinaciones y con satisfacción del objetivo 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. Es la expectativa que se evaluó.

outcome

enum (Outcome)

Solo salida. Es el resultado de ScenarioExpectation.

Campo de unión result. Es 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. Es 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. Es la respuesta observada de la herramienta.

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. Es 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 a 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 a cada puntuación. Puntuación 2: Puntuación de transferencia fluida 1: Puntuación de tarea del usuario satisfecha 0: Puntuación de tarea del usuario no satisfecha -1: Puntuación de 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 de la tarea del usuario. Puede ser -1, 0, 1 o 2.

EvaluationPersona

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

string

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

description

string

Es opcional. Es la descripción del arquetipo.

displayName

string

Obligatorio. Es el nombre visible del arquetipo. 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. Es la configuración de cómo suena el arquetipo (ajustes 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. Es 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 del mensaje serializado de Protobuf con una referencia de URI que consta de un prefijo que termina en una barra y el nombre de tipo completo.

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

El prefijo es arbitrario, y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último / inclusive 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 URIs que lo contienen respondan a ninguna solicitud.

Todas las cadenas de URL de tipo deben ser referencias 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 como porcentaje y caracteres del siguiente conjunto (sin incluir las comillas inversas externas): /-.~_!$&()*+,;=. A pesar de que permitimos la codificación de porcentaje, las implementaciones no deben decodificarlas para evitar confusiones con los analizadores existentes. Por ejemplo, se debe rechazar type.googleapis.com%2FFoo.

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

value

string (bytes format)

Contiene una serialización de Protobuf del tipo que describe 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. Son los umbrales de las métricas de evaluación ideales.

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. Es la configuración de la herramienta de correlación. Una llamada a herramienta adicional es una llamada a herramienta que está presente en la ejecución, pero no coincide con ninguna llamada a herramienta en la expectativa ideal.

ToolMatchingSettings

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

enum (ExtraToolCallBehavior)

Es opcional. Comportamiento para las llamadas a herramientas adicionales. El valor predeterminado 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 herramientas reales o falsas.

InputAudioConfig

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

enum (AudioEncoding)

Obligatorio. Es 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. Es la configuración de las métricas doradas para la evaluación.

scenarioMetricsConfig

object (ScenarioMetricsConfig)

Es opcional. Es la configuración de las métricas de la situación 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 para 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 la instrucción.

stepToolCorrectnessMetricsConfig

object (ToolCorrectnessMetricsConfig)

Es opcional. Es la configuración de las métricas de corrección de la herramienta a nivel del 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 objetivos del usuario alcanzados.

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 del objetivo 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 de JSON.

NullValue es un centinela que usa un enum con solo un 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, y, por lo tanto, se realizará un viaje de ida y vuelta a un valor de 0.

Enums
NULL_VALUE Valor nulo.

ComparisonType

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

Enums
COMPARISON_TYPE_UNSPECIFIED No se especificó el tipo de comparación. El comportamiento predeterminado es SEMANTIC_SIMILARITY para las respuestas del agente y las llamadas a herramientas.
EQUALS La cadena coincide exactamente.
CONTAINS Coincidencia de subcadena (verifica si la cadena esperada se encuentra en la respuesta real).
SEMANTIC_SIMILARITY Coincidencia de similitud semántica (evalúa la similitud del significado con un LLM).

SemanticSimilarityChannel

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

Enums
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED No se especificó la métrica. El valor predeterminado es TEXT.
TEXT Usa la similitud semántica del texto.
AUDIO Usa la similitud semántica del audio.

HallucinationMetricBehavior

Es 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 general de la evaluación.

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

TaskCompletionBehavior

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

Enums
TASK_COMPLETION_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado será TASK_SATISFIED.
TASK_SATISFIED La tarea del usuario debe completarse correctamente.
TASK_REJECTED Se debe rechazar la tarea del usuario.

UserGoalBehavior

Es el comportamiento esperado del objetivo del usuario. Se usa para determinar si la situación es exitosa.

Enums
USER_GOAL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado será 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 sin especificar. El valor predeterminado es QUALITY_OPTIMIZED.
QUALITY_OPTIMIZED Modo optimizado para la calidad.
SPEED_OPTIMIZED Modo optimizado para la velocidad.

Resultado

Es el resultado de la evaluación o la expectativa.

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

ErrorType

El tipo de error

Enums
ERROR_TYPE_UNSPECIFIED Es un tipo de error sin especificar.
RUNTIME_FAILURE Se produjo un error durante la ejecución del tiempo 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 valores adicionales en el futuro.

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

BackgroundEnvironment

Entorno de audio simulado.

Enums
BACKGROUND_ENVIRONMENT_UNSPECIFIED No se especificó el entorno de segundo plano.
CALL_CENTER Entorno del centro de atención telefónica
TRAFFIC Entorno de ruido de tráfico.
KIDS_NOISE Entorno ruidoso para niños
CAFE Entorno de la 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 la evaluación del resultado.
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 herramienta adicional. Una llamada a herramienta adicional es una llamada a herramienta que está presente en la ejecución, pero no coincide con ninguna llamada a herramienta en la expectativa ideal.

Enums
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED Comportamiento no especificado. El valor predeterminado es FAIL.
FAIL Falla la evaluación si se encuentra una llamada a herramienta adicional.
ALLOW Permite la llamada a la herramienta adicional.

AudioEncoding

AudioEncoding especifica el formato de codificación para 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 compandan muestras de audio de 14 bits con G.711 PCMU/A-law.

EvaluationChannel

Es el canal que se evaluará.

Enums
EVALUATION_CHANNEL_UNSPECIFIED Canal de evaluación sin especificar.
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 sin especificar. Se establecerá de forma predeterminada en llamadas a herramientas reales.
REAL Usa llamadas a herramientas reales.
FAKE Usar 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 Son metadatos de resultado sin especificar.
GRACEFUL_HANDOFF La evaluación dio como resultado una transferencia correcta 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 le puede enviar un mensaje de confirmación a un usuario.

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

  • 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 varias veces 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: ❌