MCP Tools Reference: ces.googleapis.com

Strumento: update_evaluation_dataset

Aggiorna il set di dati di valutazione specificato. Assicurati di passare sempre una maschera di aggiornamento nell'input.

Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP update_evaluation_dataset.

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

Schema di input

Messaggio di richiesta per EvaluationService.UpdateEvaluationDataset.

UpdateEvaluationDatasetRequest

Rappresentazione JSON
{
  "evaluationDataset": {
    object (EvaluationDataset)
  },
  "updateMask": string
}
Campi
evaluationDataset

object (EvaluationDataset)

Obbligatorio. Il set di dati di valutazione da aggiornare.

updateMask

string (FieldMask format)

Facoltativo. La maschera del campo viene utilizzata per controllare quali campi vengono aggiornati. Se la maschera non è presente, tutti i campi verranno aggiornati.

Si tratta di un elenco separato da virgole di nomi completi dei campi. Esempio: "user.displayName,photo".

EvaluationDataset

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "evaluations": [
    string
  ],
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "createdBy": string,
  "lastUpdatedBy": string,
  "aggregatedMetrics": {
    object (AggregatedMetrics)
  }
}
Campi
name

string

Identificatore. L'identificatore univoco di questo set di dati di valutazione. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

displayName

string

Obbligatorio. Nome visualizzato definito dall'utente del set di dati di valutazione. Unico all'interno di un'app.

evaluations[]

string

Facoltativo. Valutazioni incluse in questo set di dati.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione del set di dati di valutazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento del set di dati di valutazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

etag

string

Solo output. Etag utilizzato per garantire che l'oggetto non sia stato modificato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee.

createdBy

string

Solo output. L'utente che ha creato il set di dati di valutazione.

lastUpdatedBy

string

Solo output. L'utente che ha aggiornato per ultimo il set di dati di valutazione.

aggregatedMetrics

object (AggregatedMetrics)

Solo output. Le metriche aggregate per questo set di dati di valutazione in tutte le esecuzioni.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC trascorsi dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

AggregatedMetrics

Rappresentazione JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campi
metricsByAppVersion[]

object (MetricsByAppVersion)

Solo output. Metriche aggregate, raggruppate per ID versione dell'app.

MetricsByAppVersion

Rappresentazione 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)
    }
  ]
}
Campi
appVersionId

string

Solo output. L'ID versione dell'app.

toolMetrics[]

object (ToolMetrics)

Solo output. Metriche per ogni strumento all'interno di questa versione dell'app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo output. Metriche per la somiglianza semantica all'interno di questa versione dell'app.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo output. Metriche per le allucinazioni all'interno di questa versione dell'app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo output. Metriche per la latenza della chiamata allo strumento all'interno di questa versione dell'app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo output. Metriche per la latenza del turno all'interno di questa versione dell'app.

passCount

integer

Solo output. Il numero di volte in cui la valutazione è stata superata.

failCount

integer

Solo output. Il numero di volte in cui la valutazione non è riuscita.

metricsByTurn[]

object (MetricsByTurn)

Solo output. Metriche aggregate per turno all'interno di questa versione dell'app.

ToolMetrics

Rappresentazione JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campi
tool

string

Solo output. Il nome dello strumento.

passCount

integer

Solo output. Il numero di volte in cui lo strumento è stato superato.

failCount

integer

Solo output. Il numero di volte in cui lo strumento non è riuscito.

SemanticSimilarityMetrics

Rappresentazione JSON
{
  "score": number
}
Campi
score

number

Solo output. Il punteggio medio di similarità semantica (0-4).

HallucinationMetrics

Rappresentazione JSON
{
  "score": number
}
Campi
score

number

Solo output. Il punteggio medio di allucinazione (da 0 a 1).

ToolCallLatencyMetrics

Rappresentazione JSON
{
  "tool": string,
  "averageLatency": string
}
Campi
tool

string

Solo output. Il nome dello strumento.

averageLatency

string (Duration format)

Solo output. La latenza media delle chiamate agli strumenti.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

Durata

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Secondi firmati dell'intervallo di tempo. Deve essere compreso tra -315.576.000.000 e +315.576.000.000 inclusi. Nota: questi limiti vengono calcolati in base a: 60 sec/min * 60 min/ora * 24 ore/giorno * 365,25 giorni/anno * 10.000 anni

nanos

integer

Frazioni di secondo con segno con risoluzione in nanosecondi dell'intervallo di tempo. Le durate inferiori a un secondo sono rappresentate con un campo seconds pari a 0 e un campo nanos positivo o negativo. Per durate di un secondo o più, un valore diverso da zero per il campo nanos deve avere lo stesso segno del campo seconds. Deve essere compreso tra -999.999.999 e +999.999.999 inclusi.

TurnLatencyMetrics

Rappresentazione JSON
{
  "averageLatency": string
}
Campi
averageLatency

string (Duration format)

Solo output. La latenza media dei turni.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

MetricsByTurn

Rappresentazione JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campi
turnIndex

integer

Solo output. L'indice del turno (a base 0).

toolMetrics[]

object (ToolMetrics)

Solo output. Metriche per ogni strumento all'interno di questo turno.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo output. Metriche per la similarità semantica all'interno di questo turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo output. Metriche per le allucinazioni in questo turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo output. Metriche per la latenza della chiamata allo strumento all'interno di questo turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo output. Metriche per la latenza del turno all'interno di questo turno.

FieldMask

Rappresentazione JSON
{
  "paths": [
    string
  ]
}
Campi
paths[]

string

L'insieme dei percorsi della maschera del campo.

Schema di output

Un set di dati di valutazione rappresenta un insieme di valutazioni raggruppate in base a tag condivisi.

EvaluationDataset

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "evaluations": [
    string
  ],
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "createdBy": string,
  "lastUpdatedBy": string,
  "aggregatedMetrics": {
    object (AggregatedMetrics)
  }
}
Campi
name

string

Identificatore. L'identificatore univoco di questo set di dati di valutazione. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

displayName

string

Obbligatorio. Nome visualizzato definito dall'utente del set di dati di valutazione. Unico all'interno di un'app.

evaluations[]

string

Facoltativo. Valutazioni incluse in questo set di dati.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione del set di dati di valutazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento del set di dati di valutazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

etag

string

Solo output. Etag utilizzato per garantire che l'oggetto non sia stato modificato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee.

createdBy

string

Solo output. L'utente che ha creato il set di dati di valutazione.

lastUpdatedBy

string

Solo output. L'utente che ha aggiornato per ultimo il set di dati di valutazione.

aggregatedMetrics

object (AggregatedMetrics)

Solo output. Le metriche aggregate per questo set di dati di valutazione in tutte le esecuzioni.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC trascorsi dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

AggregatedMetrics

Rappresentazione JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campi
metricsByAppVersion[]

object (MetricsByAppVersion)

Solo output. Metriche aggregate, raggruppate per ID versione dell'app.

MetricsByAppVersion

Rappresentazione 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)
    }
  ]
}
Campi
appVersionId

string

Solo output. L'ID versione dell'app.

toolMetrics[]

object (ToolMetrics)

Solo output. Metriche per ogni strumento all'interno di questa versione dell'app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo output. Metriche per la somiglianza semantica all'interno di questa versione dell'app.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo output. Metriche per le allucinazioni all'interno di questa versione dell'app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo output. Metriche per la latenza della chiamata allo strumento all'interno di questa versione dell'app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo output. Metriche per la latenza del turno all'interno di questa versione dell'app.

passCount

integer

Solo output. Il numero di volte in cui la valutazione è stata superata.

failCount

integer

Solo output. Il numero di volte in cui la valutazione non è riuscita.

metricsByTurn[]

object (MetricsByTurn)

Solo output. Metriche aggregate per turno all'interno di questa versione dell'app.

ToolMetrics

Rappresentazione JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campi
tool

string

Solo output. Il nome dello strumento.

passCount

integer

Solo output. Il numero di volte in cui lo strumento è stato superato.

failCount

integer

Solo output. Il numero di volte in cui lo strumento non è riuscito.

SemanticSimilarityMetrics

Rappresentazione JSON
{
  "score": number
}
Campi
score

number

Solo output. Il punteggio medio di similarità semantica (0-4).

HallucinationMetrics

Rappresentazione JSON
{
  "score": number
}
Campi
score

number

Solo output. Il punteggio medio di allucinazione (da 0 a 1).

ToolCallLatencyMetrics

Rappresentazione JSON
{
  "tool": string,
  "averageLatency": string
}
Campi
tool

string

Solo output. Il nome dello strumento.

averageLatency

string (Duration format)

Solo output. La latenza media delle chiamate agli strumenti.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

Durata

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Secondi firmati dell'intervallo di tempo. Deve essere compreso tra -315.576.000.000 e +315.576.000.000 inclusi. Nota: questi limiti vengono calcolati in base a: 60 sec/min * 60 min/ora * 24 ore/giorno * 365,25 giorni/anno * 10.000 anni

nanos

integer

Frazioni di secondo con segno con risoluzione in nanosecondi dell'intervallo di tempo. Le durate inferiori a un secondo sono rappresentate con un campo seconds pari a 0 e un campo nanos positivo o negativo. Per durate di un secondo o più, un valore diverso da zero per il campo nanos deve avere lo stesso segno del campo seconds. Deve essere compreso tra -999.999.999 e +999.999.999 inclusi.

TurnLatencyMetrics

Rappresentazione JSON
{
  "averageLatency": string
}
Campi
averageLatency

string (Duration format)

Solo output. La latenza media dei turni.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

MetricsByTurn

Rappresentazione JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campi
turnIndex

integer

Solo output. L'indice del turno (a base 0).

toolMetrics[]

object (ToolMetrics)

Solo output. Metriche per ogni strumento all'interno di questo turno.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Solo output. Metriche per la similarità semantica all'interno di questo turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Solo output. Metriche per le allucinazioni in questo turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Solo output. Metriche per la latenza della chiamata allo strumento all'interno di questo turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Solo output. Metriche per la latenza del turno all'interno di questo turno.

Annotazioni dello strumento

Le annotazioni dello strumento vengono inviate ai client MCP per descrivere il rischio di base di un determinato strumento. La maggior parte dei client considera questi suggerimenti non attendibili, ma possono essere utilizzati per decidere quando inviare a un utente una richiesta di conferma.

Oltre alla stringa del titolo, sono definiti i seguenti suggerimenti booleani:

  • readOnlyHint: se è true, lo strumento non modifica il suo ambiente. Valore predefinito: false.
  • destructiveHint: se è true, lo strumento può eseguire azioni distruttive. Se il valore è false, lo strumento può eseguire solo azioni additive. Valore predefinito: true.
  • idempotentHint: se è true, chiamare ripetutamente lo strumento con gli stessi argomenti non avrà alcun effetto aggiuntivo sul suo ambiente. Valore predefinito: false.
  • openWorldHint: se è true, lo strumento può interagire con un "open world" di entità esterne. Se è false, lo strumento può interagire solo con le entità interne. Ad esempio, uno strumento di ricerca web sarebbe open world, mentre uno strumento di memoria no.

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ❌ | Suggerimento di sola lettura: ❌ | Suggerimento open world: ❌