Herramienta: get_evaluation_run
Obtiene detalles de la ejecución de evaluación especificada.
En la siguiente muestra de código, se muestra cómo usar curl para llamar a la herramienta de MCP get_evaluation_run.
| 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": "get_evaluation_run", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
Mensaje de solicitud para EvaluationService.GetEvaluationRun.
GetEvaluationRunRequest
| Representación JSON |
|---|
{ "name": string } |
| Campos | |
|---|---|
name |
Obligatorio. Es el nombre del recurso de la ejecución de la evaluación que se recuperará. |
Esquema de salida
Una ejecución de evaluación representa todos los resultados de una ejecución de evaluación.
EvaluationRun
| Representación JSON |
|---|
{ "name": string, "displayName": string, "evaluationResults": [ string ], "createTime": string, "initiatedBy": string, "appVersion": string, "appVersionDisplayName": string, "changelog": string, "changelogCreateTime": string, "evaluations": [ string ], "evaluationDataset": string, "evaluationType": enum ( |
| Campos | |
|---|---|
name |
Es el identificador. Es el identificador único de la ejecución de la evaluación. Formato: |
displayName |
Es opcional. Nombre visible definido por el usuario de la ejecución de la evaluación. El valor predeterminado es " |
evaluationResults[] |
Solo salida. Son los resultados de la evaluación que forman parte de esta ejecución. Formato: |
createTime |
Solo salida. Es la marca de tiempo de cuando se creó la ejecució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: |
initiatedBy |
Solo salida. Es el usuario que inició la ejecución de la evaluación. |
appVersion |
Solo salida. Es la versión de la app que se evaluará. Formato: |
appVersionDisplayName |
Solo salida. Es el nombre visible del |
changelog |
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 |
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: |
evaluations[] |
Solo salida. Son las evaluaciones que forman parte de esta ejecución. La lista puede contener evaluaciones de cualquiera de los dos tipos. Este campo es mutuamente exclusivo con |
evaluationDataset |
Solo salida. Es el conjunto de datos de evaluación con el que se asocia esta ejecución. Este campo es mutuamente exclusivo con |
evaluationType |
Solo salida. Es el tipo de evaluaciones en esta ejecución. |
state |
Solo salida. Es el estado de la ejecución de la evaluación. |
progress |
Solo salida. Es el progreso de la ejecución de la evaluación. |
config |
Solo salida. Es la configuración que se usó en la ejecución. |
error |
Solo salida. Obsoleto: Usa error_info en su lugar. Son los errores que se produjeron durante la ejecución. |
errorInfo |
Solo salida. Es la información del error de la ejecución de la evaluación. |
evaluationRunSummaries |
Solo salida. Es un mapa del nombre de la evaluación al objeto EvaluationRunSummary. Un objeto que contiene una lista de pares |
latencyReport |
Solo salida. Es el informe de latencia de la ejecución de la evaluación. |
runCount |
Solo salida. Es la cantidad de veces que se ejecutaron las evaluaciones dentro de la ejecución. |
personaRunConfigs[] |
Solo salida. Es la configuración que se usará para la ejecución por arquetipo. |
optimizationConfig |
Es opcional. Es la configuración para ejecutar el paso de optimización después de la ejecución de la evaluación. Si no se configura, no se ejecutará el paso de optimización. |
scheduledEvaluationRun |
Solo salida. Es el nombre del recurso de la ejecución de evaluación programada que creó esta ejecución de evaluación. Este campo solo se configura si la ejecución de la evaluación se creó a partir de una ejecución de evaluación programada. Formato: |
goldenRunMethod |
Solo salida. Es el método que se usa para ejecutar la evaluación. |
operation |
Solo salida. Operación que creó esta ejecución de evaluación. Formato: |
Marca de tiempo
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
Representa los segundos de la hora UTC desde la época de 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 |
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. |
Progreso
| Representación JSON |
|---|
{ "totalCount": integer, "failedCount": integer, "errorCount": integer, "completedCount": integer, "passedCount": integer, "cancelledCount": integer } |
| Campos | |
|---|---|
totalCount |
Solo salida. Es la cantidad total de resultados de la evaluación en esta ejecución. |
failedCount |
Solo salida. Es la cantidad de resultados de evaluación completados con un resultado de FAIL. (EvaluationResult.execution_state es COMPLETED y EvaluationResult.evaluation_status es FAIL). |
errorCount |
Solo salida. Es la cantidad de resultados de la evaluación que no se pudieron ejecutar. (EvaluationResult.execution_state es ERROR). |
completedCount |
Solo salida. Es la cantidad de resultados de la evaluación que finalizaron correctamente. (EvaluationResult.execution_state es COMPLETED). |
passedCount |
Solo salida. Cantidad de resultados de evaluación completados con un resultado de APROBADO. (EvaluationResult.execution_state es COMPLETED y EvaluationResult.evaluation_status es PASS). |
cancelledCount |
Solo salida. Es la cantidad de resultados de la evaluación que se cancelaron. (EvaluationResult.execution_state es CANCELLED). |
EvaluationConfig
| Representación JSON |
|---|
{ "inputAudioConfig": { object ( |
| Campos | |
|---|---|
inputAudioConfig |
Es opcional. Es la configuración para procesar el audio de entrada. |
outputAudioConfig |
Es opcional. Es la configuración para generar el audio de salida. |
evaluationChannel |
Es opcional. Es el canal que se evaluará. |
toolCallBehaviour |
Es opcional. Especifica si la evaluación debe usar llamadas a herramientas reales o herramientas simuladas. |
InputAudioConfig
| Representación JSON |
|---|
{
"audioEncoding": enum ( |
| Campos | |
|---|---|
audioEncoding |
Obligatorio. Es la codificación de los datos de audio de entrada. |
sampleRateHertz |
Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de entrada. |
noiseSuppressionLevel |
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 ( |
| Campos | |
|---|---|
audioEncoding |
Obligatorio. Es la codificación de los datos de audio de salida. |
sampleRateHertz |
Obligatorio. Es la tasa de muestreo (en hercios) de los datos de audio de salida. |
Estado
| Representación JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Campos | |
|---|---|
code |
El código de estado, que debe ser un valor enum de |
message |
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 |
details[] |
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 |
Cualquiera
| Representación JSON |
|---|
{ "typeUrl": string, "value": string } |
| Campos | |
|---|---|
typeUrl |
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 del tipo completamente calificado. Ejemplo: type.googleapis.com/google.protobuf.StringValue Esta cadena debe contener al menos un carácter El prefijo es arbitrario, y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último 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 solo debe constar de caracteres alfanuméricos, escapes codificados como porcentaje y caracteres del siguiente conjunto (sin incluir las comillas inversas externas): En el diseño original de |
value |
Contiene una serialización de Protobuf del tipo que describe type_url. Es una cadena codificada en Base64. |
EvaluationErrorInfo
| Representación JSON |
|---|
{
"errorType": enum ( |
| Campos | |
|---|---|
errorType |
Solo salida. Es el tipo de error. |
errorMessage |
Solo salida. Mensaje de error. |
sessionId |
Solo salida. Es el ID de la sesión de la conversación que causó el error. |
userFacingErrorMessage |
Solo salida. Es el mensaje de error visible para el usuario. |
EvaluationRunSummariesEntry
| Representación JSON |
|---|
{
"key": string,
"value": {
object ( |
| Campos | |
|---|---|
key |
|
value |
|
EvaluationRunSummary
| Representación JSON |
|---|
{ "passedCount": integer, "failedCount": integer, "errorCount": integer } |
| Campos | |
|---|---|
passedCount |
Solo salida. Es la cantidad de resultados aprobados para la evaluación asociada en esta ejecución. |
failedCount |
Solo salida. Es la cantidad de resultados con errores de la evaluación asociada en esta ejecución. |
errorCount |
Solo salida. Es la cantidad de resultados de error para la evaluación asociada en esta ejecución. |
LatencyReport
| Representación JSON |
|---|
{ "toolLatencies": [ { object ( |
| Campos | |
|---|---|
toolLatencies[] |
Solo salida. Lista sin ordenar. Métricas de latencia para cada herramienta. |
callbackLatencies[] |
Solo salida. Lista sin ordenar. Son las métricas de latencia para cada devolución de llamada. |
guardrailLatencies[] |
Solo salida. Lista sin ordenar. Son las métricas de latencia para cada barrera de protección. |
llmCallLatencies[] |
Solo salida. Lista sin ordenar. Son las métricas de latencia para cada llamada al LLM. |
sessionCount |
Solo salida. Es la cantidad total de sesiones que se tienen en cuenta en el informe de latencia. |
ToolLatency
| Representación JSON |
|---|
{ "toolDisplayName": string, "latencyMetrics": { object ( |
| Campos | |
|---|---|
toolDisplayName |
Solo salida. Es el nombre visible de la herramienta. |
latencyMetrics |
Solo salida. Son las métricas de latencia de la herramienta. |
Campo de unión tool_identifier. Es el identificador de la herramienta. tool_identifier puede ser solo uno de los parámetros siguientes: |
|
tool |
Solo salida. Formato: |
toolsetTool |
Solo salida. Es el identificador de la herramienta del conjunto de herramientas. |
ToolsetTool
| Representación JSON |
|---|
{ "toolset": string, "toolId": string } |
| Campos | |
|---|---|
toolset |
Obligatorio. Es el nombre del recurso del conjunto de herramientas del que se deriva esta herramienta. Formato: |
toolId |
Es opcional. Es el ID de la herramienta para filtrar las herramientas y recuperar el esquema. |
LatencyMetrics
| Representación JSON |
|---|
{ "p50Latency": string, "p90Latency": string, "p99Latency": string, "callCount": integer } |
| Campos | |
|---|---|
p50Latency |
Solo salida. Es la latencia del percentil 50. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
p90Latency |
Solo salida. Es la latencia del percentil 90. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
p99Latency |
Solo salida. Es la latencia del percentil 99. Una duración en segundos con hasta nueve dígitos decimales, que terminan en “ |
callCount |
Solo salida. Cantidad de veces que se llamó al recurso. |
Duración
| Representación JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campos | |
|---|---|
seconds |
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 |
Fracciones firmadas de un segundo con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo |
CallbackLatency
| Representación JSON |
|---|
{
"stage": string,
"latencyMetrics": {
object ( |
| Campos | |
|---|---|
stage |
Solo salida. Es la etapa de la devolución de llamada. |
latencyMetrics |
Solo salida. Son las métricas de latencia de la devolución de llamada. |
GuardrailLatency
| Representación JSON |
|---|
{
"guardrail": string,
"guardrailDisplayName": string,
"latencyMetrics": {
object ( |
| Campos | |
|---|---|
guardrail |
Solo salida. Es el nombre de la protección. Formato: |
guardrailDisplayName |
Solo salida. Es el nombre visible de la protección. |
latencyMetrics |
Solo salida. Son las métricas de latencia del parámetro de protección. |
LlmCallLatency
| Representación JSON |
|---|
{
"model": string,
"latencyMetrics": {
object ( |
| Campos | |
|---|---|
model |
Solo salida. El nombre del modelo. |
latencyMetrics |
Solo salida. Son las métricas de latencia de la llamada al LLM. |
PersonaRunConfig
| Representación JSON |
|---|
{ "persona": string, "taskCount": integer } |
| Campos | |
|---|---|
persona |
Es opcional. Es el arquetipo que se usará para la evaluación. Formato: |
taskCount |
Es opcional. Es la cantidad de tareas que se ejecutarán para el arquetipo. |
OptimizationConfig
| Representación JSON |
|---|
{
"generateLossReport": boolean,
"assistantSession": string,
"reportSummary": string,
"shouldSuggestFix": boolean,
"status": enum ( |
| Campos | |
|---|---|
generateLossReport |
Es opcional. Indica si se debe generar un informe de pérdidas. |
assistantSession |
Solo salida. Es la sesión del asistente que se usará para la optimización según esta ejecución de evaluación. Formato: |
reportSummary |
Solo salida. Es el resumen del informe de pérdida. |
shouldSuggestFix |
Solo salida. Indica si se debe sugerir una corrección para las pérdidas. |
status |
Solo salida. Es el estado de la ejecución de la optimización. |
errorMessage |
Solo salida. Es el mensaje de error si falló la ejecución de la optimización. |
lossReport |
Solo salida. Es el informe de pérdidas generado. |
Struct
| Representación JSON |
|---|
{ "fields": { string: value, ... } } |
| Campos | |
|---|---|
fields |
Es un mapa no ordenado de valores escritos de forma dinámica. Un objeto que contiene una lista de pares |
FieldsEntry
| Representación JSON |
|---|
{ "key": string, "value": value } |
| Campos | |
|---|---|
key |
|
value |
|
Valor
| Representación JSON |
|---|
{ // Union field |
| Campos | |
|---|---|
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes: |
|
nullValue |
Representa un |
numberValue |
Representa un número JSON. No debe ser |
stringValue |
Representa una cadena JSON. |
boolValue |
Representa un valor booleano de JSON (literal |
structValue |
Representa un objeto JSON. |
listValue |
Representa un array JSON. |
ListValue
| Representación JSON |
|---|
{ "values": [ value ] } |
| Campos | |
|---|---|
values[] |
Es un campo repetido de valores escritos de forma dinámica. |
EvaluationType
Es el tipo de evaluaciones en esta ejecución. Es posible que se agreguen valores adicionales en el futuro.
| Enums | |
|---|---|
EVALUATION_TYPE_UNSPECIFIED |
No se especificó el tipo de evaluación. |
GOLDEN |
Evaluación de referencia. |
SCENARIO |
Evaluación de situaciones |
MIXED |
Indica que la ejecución incluye una combinación de evaluaciones de referencia y de situaciones. |
EvaluationRunState
Es el estado de la ejecución de la evaluación.
| Enums | |
|---|---|
EVALUATION_RUN_STATE_UNSPECIFIED |
No se especificó el estado de la ejecución de la evaluación. |
QUEUED |
Indica que la ejecución de la evaluación está en cola. |
RUNNING |
La ejecución de la evaluación está en curso. |
COMPLETED |
Se completó la ejecución de la evaluación. |
ERROR |
La ejecución de la evaluación tiene un error. |
CANCELLED |
Se canceló la ejecución de la evaluación. |
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 |
Las muestras de 8 bits que comprimen las muestras de audio de 14 bits con la ley PCMU/A-law de G.711. |
EvaluationChannel
Es el canal que se evaluará.
| Enums | |
|---|---|
EVALUATION_CHANNEL_UNSPECIFIED |
Canal de evaluación no especificado. |
TEXT |
Canal de evaluación solo de texto. |
AUDIO |
Canal de evaluación de audio. |
EvaluationToolCallBehaviour
Configura el comportamiento de la llamada a la herramienta para las ejecuciones de evaluación.
| Enums | |
|---|---|
EVALUATION_TOOL_CALL_BEHAVIOUR_UNSPECIFIED |
Comportamiento de llamada a la herramienta sin especificar. Se establecerá de forma predeterminada en llamadas a herramientas reales. |
REAL |
Usa llamadas a herramientas reales. |
FAKE |
Usar llamadas a herramientas falsas |
ErrorType
El tipo de error
| Enums | |
|---|---|
ERROR_TYPE_UNSPECIFIED |
Tipo de error no especificado. |
RUNTIME_FAILURE |
Se produjo un error durante la ejecución del 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 una falla durante la simulación del usuario. |
OptimizationStatus
Es el estado de la ejecución de la optimización.
| Enums | |
|---|---|
OPTIMIZATION_STATUS_UNSPECIFIED |
No se especificó el estado de optimización. |
RUNNING |
La optimización está en curso. |
COMPLETED |
Se completó la optimización. |
ERROR |
La optimización falló debido a un error interno. |
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, por lo que se realizará un viaje de ida y vuelta a un valor de 0.
| Enums | |
|---|---|
NULL_VALUE |
Valor nulo. |
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 reproducció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. |
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 de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.
Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌