Strumento: update_guardrail
Aggiorna la protezione specificata. 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_guardrail.
| 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_guardrail", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
Messaggio di richiesta per AgentService.UpdateGuardrail.
UpdateGuardrailRequest
| Rappresentazione JSON |
|---|
{
"guardrail": {
object ( |
| Campi | |
|---|---|
guardrail |
Obbligatorio. La barriera di sicurezza da aggiornare. |
updateMask |
Facoltativo. La maschera di campo viene utilizzata per controllare quali campi vengono aggiornati. Se la maschera non è presente, verranno aggiornati tutti i campi. Si tratta di un elenco separato da virgole di nomi completi dei campi. Esempio: |
Guardrail
| Rappresentazione JSON |
|---|
{ "name": string, "displayName": string, "description": string, "enabled": boolean, "action": { object ( |
| Campi | |
|---|---|
name |
Identificatore. L'identificatore univoco della regola di sicurezza. Formato: |
displayName |
Obbligatorio. Nome visualizzato del guardrail. |
description |
Facoltativo. Descrizione della guardrail. |
enabled |
Facoltativo. Indica se il guardrail è abilitato. |
action |
Facoltativo. Azione da intraprendere quando viene attivato il guardrail. |
createTime |
Solo output. Timestamp della creazione della regola di protezione. 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: |
updateTime |
Solo output. Timestamp dell'ultimo aggiornamento della regola di protezione. 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: |
etag |
Etag utilizzato per garantire che l'oggetto non sia cambiato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee. |
Campo unione guardrail_type. Tipo di guardrail. guardrail_type può essere solo uno dei seguenti tipi: |
|
contentFilter |
Facoltativo. Guardrail che vieta l'utilizzo di determinati contenuti nella conversazione. |
llmPromptSecurity |
Facoltativo. Guardrail che blocca la conversazione se il prompt è considerato non sicuro in base alla classificazione dell'LLM. |
llmPolicy |
Facoltativo. Guardrail che blocca la conversazione se la risposta dell'LLM è considerata in violazione della policy in base alla classificazione dell'LLM. |
modelSafety |
Facoltativo. Guardrail che blocca la conversazione se la risposta dell'LLM è considerata non sicura in base alle impostazioni di sicurezza del modello. |
codeCallback |
Facoltativo. Guardrail che blocca potenzialmente la conversazione in base al risultato dell'esecuzione del callback. |
supervisor |
Facoltativo. Guardrail che esegue l'intervento del supervisore. |
ContentFilter
| Rappresentazione JSON |
|---|
{
"bannedContents": [
string
],
"bannedContentsInUserInput": [
string
],
"bannedContentsInAgentResponse": [
string
],
"matchType": enum ( |
| Campi | |
|---|---|
bannedContents[] |
Facoltativo. Elenco di frasi vietate. Si applica sia agli input degli utenti sia alle risposte degli agenti. |
bannedContentsInUserInput[] |
Facoltativo. Elenco di frasi vietate. Si applica solo agli input degli utenti. |
bannedContentsInAgentResponse[] |
Facoltativo. Elenco di frasi vietate. Si applica solo alle risposte degli agenti. |
matchType |
Obbligatorio. Tipo di corrispondenza per il filtro dei contenuti. |
disregardDiacritics |
Facoltativo. Se impostato su true, i segni diacritici vengono ignorati durante la ricerca di corrispondenze. |
sensitiveWordsExemptions[] |
Facoltativo. Voci dell'elenco di parole sensibili consentite da questo guardrail. Valido solo quando match_type è SENSITIVE_WORDS. Ogni valore deve corrispondere a una voce dell'elenco (senza distinzione tra maiuscole e minuscole, gli spazi vuoti circostanti vengono ignorati); altri valori non hanno alcun effetto. Si applica solo a questa regola di sicurezza. Massimo 1000 voci di massimo 256 caratteri ciascuna. |
LlmPromptSecurity
| Rappresentazione JSON |
|---|
{ "failOpen": boolean, // Union field |
| Campi | |
|---|---|
failOpen |
Facoltativo. Determina il comportamento quando la barriera di protezione rileva un errore LLM. - Se true: il guardrail viene ignorato. - Se il valore è false (predefinito): il guardrail si attiva/blocca. Nota: se viene fornita una policy personalizzata, questo campo viene ignorato a favore della configurazione "fail_open" della policy. |
Campo unione security_config. Definisce la modalità di configurazione della sicurezza. L'utente deve scegliere una delle seguenti configurazioni. security_config può essere solo uno dei seguenti tipi: |
|
defaultSettings |
Facoltativo. Utilizza le impostazioni di sicurezza predefinite del sistema. Per selezionare questa modalità, includi un messaggio "default_settings" vuoto nella richiesta. Il campo "default_prompt_template" all'interno verrà compilato dal server nella risposta. |
customPolicy |
Facoltativo. Utilizza un LlmPolicy definito dall'utente per configurare il guardrail di sicurezza. |
DefaultSecuritySettings
| Rappresentazione JSON |
|---|
{ "defaultPromptTemplate": string } |
| Campi | |
|---|---|
defaultPromptTemplate |
Solo output. Il template di prompt predefinito utilizzato dal sistema. Questo campo serve per mostrare all'utente il prompt utilizzato dal sistema per impostazione predefinita. È OUTPUT_ONLY. |
LlmPolicy
| Rappresentazione JSON |
|---|
{ "maxConversationMessages": integer, "modelSettings": { object ( |
| Campi | |
|---|---|
maxConversationMessages |
Facoltativo. Quando controlli questa policy, considera gli ultimi "n" messaggi della conversazione. Se non viene impostato, verrà utilizzato il valore predefinito 10. |
modelSettings |
Facoltativo. Impostazioni del modello. |
prompt |
Obbligatorio. Prompt delle norme. Supporta i segnaposto delle variabili di sessione ( |
policyScope |
Obbligatorio. Definisce quando applicare il controllo delle policy durante la conversazione. Se impostata su |
failOpen |
Facoltativo. Se si verifica un errore durante il controllo della policy, l'operazione non va a buon fine e il guardrail non viene attivato. |
allowShortUtterance |
Facoltativo. Per impostazione predefinita, il controllo delle policy LLM viene ignorato per gli enunciati brevi. Se attivi questa impostazione, il controllo delle policy viene applicato a tutti gli enunciati, inclusi quelli che normalmente verrebbero ignorati. |
ModelSettings
| Rappresentazione JSON |
|---|
{ "model": string, "thinkingLevel": enum ( |
| Campi | |
|---|---|
model |
Facoltativo. Il modello LLM che l'agente deve utilizzare. Se non viene impostato, l'agente erediterà il modello dall'agente parent. |
thinkingLevel |
Facoltativo. Il livello di ragionamento del modello. |
Campo unione
|
|
temperature |
Facoltativo. Se impostata, questa temperatura verrà utilizzata per il modello LLM. La temperatura controlla la casualità delle risposte del modello. Le temperature più basse producono risposte più prevedibili. Temperature più elevate producono risposte più creative. |
ModelSafety
| Rappresentazione JSON |
|---|
{
"safetySettings": [
{
object ( |
| Campi | |
|---|---|
safetySettings[] |
Obbligatorio. Elenco delle impostazioni di sicurezza. |
SafetySetting
| Rappresentazione JSON |
|---|
{ "category": enum ( |
| Campi | |
|---|---|
category |
Obbligatorio. La categoria di danno. |
threshold |
Obbligatorio. La soglia di blocco dei contenuti dannosi. |
CodeCallback
| Rappresentazione JSON |
|---|
{ "beforeAgentCallback": { object ( |
| Campi | |
|---|---|
beforeAgentCallback |
Facoltativo. Il callback da eseguire prima della chiamata dell'agente. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
afterAgentCallback |
Facoltativo. Il callback da eseguire dopo la chiamata dell'agente. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
beforeModelCallback |
Facoltativo. Il callback da eseguire prima della chiamata del modello. Se il modello viene chiamato più volte, il callback verrà eseguito più volte. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
afterModelCallback |
Facoltativo. Il callback da eseguire dopo la chiamata del modello. Se il modello viene chiamato più volte, il callback verrà eseguito più volte. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
Callback
| Rappresentazione JSON |
|---|
{ "description": string, "disabled": boolean, "proactiveExecutionEnabled": boolean, // Union field |
| Campi | |
|---|---|
description |
Facoltativo. Descrizione leggibile del callback. |
disabled |
Facoltativo. Indica se il callback è disattivato. I callback disattivati vengono ignorati dall'agente. |
proactiveExecutionEnabled |
Facoltativo. Se abilitato, il callback verrà eseguito anche sugli output intermedi del modello. Questa impostazione influisce solo sul callback dopo il modello. ABILITARE CON CAUTELA. In genere, il callback after_model deve essere eseguito solo dopo aver ricevuto tutte le risposte del modello. L'abilitazione dell'esecuzione proattiva potrebbe avere implicazioni negative sui costi e sulla latenza di esecuzione e deve essere abilitata solo in rare situazioni. |
Campo unione callback. Il callback da eseguire. callback può essere solo uno dei seguenti tipi: |
|
pythonCode |
Obbligatorio. Il codice Python da eseguire per il callback. |
Supervisore
| Rappresentazione JSON |
|---|
{ "type": enum ( |
| Campi | |
|---|---|
type |
Facoltativo. Il tipo di supervisore. |
detectionMode |
Facoltativo. La modalità di rilevamento del supervisore. |
TriggerAction
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione action. L'azione da eseguire. action può essere solo uno dei seguenti tipi: |
|
respondImmediately |
Facoltativo. Rispondi immediatamente con una risposta preconfigurata. |
transferAgent |
Facoltativo. Trasferire la conversazione a un altro agente. |
generativeAnswer |
Facoltativo. Rispondi con una risposta generativa. |
RespondImmediately
| Rappresentazione JSON |
|---|
{
"responses": [
{
object ( |
| Campi | |
|---|---|
responses[] |
Obbligatorio. Le risposte predefinite tra cui l'agente può scegliere. La risposta viene scelta in modo casuale. |
Risposta
| Rappresentazione JSON |
|---|
{ "text": string, "disabled": boolean } |
| Campi | |
|---|---|
text |
Obbligatorio. Testo con cui l'agente deve rispondere. |
disabled |
Facoltativo. Indica se la risposta è disattivata. Le risposte disattivate non vengono utilizzate dall'agente. |
TransferAgent
| Rappresentazione JSON |
|---|
{ "agent": string } |
| Campi | |
|---|---|
agent |
Obbligatorio. Il nome dell'agente a cui trasferire la conversazione. L'agente deve trovarsi nella stessa app dell'agente corrente. Formato: |
GenerativeAnswer
| Rappresentazione JSON |
|---|
{ "prompt": string } |
| Campi | |
|---|---|
prompt |
Obbligatorio. Il prompt da utilizzare per la risposta generativa. |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Rappresenta i secondi dell'ora UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (che corrispondono a un intervallo compreso tra 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z). |
nanos |
Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori dei secondi negativi con frazioni devono comunque avere valori di nanosecondi non negativi che avanzano nel tempo. Deve essere un valore compreso tra 0 e 999.999.999 inclusi. |
FieldMask
| Rappresentazione JSON |
|---|
{ "paths": [ string ] } |
| Campi | |
|---|---|
paths[] |
L'insieme di percorsi della maschera di campo. |
MatchType
Tipo di corrispondenza per il filtro dei contenuti.
| Enum | |
|---|---|
MATCH_TYPE_UNSPECIFIED |
Il tipo di corrispondenza non è specificato. |
SIMPLE_STRING_MATCH |
I contenuti vengono confrontati con le sottostringhe carattere per carattere. |
WORD_BOUNDARY_STRING_MATCH |
I contenuti corrispondono solo se il pattern trovato nel testo è circondato da delimitatori di parole. Le frasi vietate possono contenere anche delimitatori di parole. |
REGEXP_MATCH |
I contenuti vengono abbinati utilizzando la sintassi delle espressioni regolari. |
SENSITIVE_WORDS |
I contenuti vengono confrontati con un elenco di parole e frasi sensibili gestito dal sistema. Se colleghi un guardrail con questo tipo di corrispondenza a un'app o a un agente, il filtro predefinito per le parole sensibili viene sostituito per gli agenti interessati. Disattiva il guardrail per disattivare il filtro predefinito. |
ThinkingLevel
Configurazione del livello di ragionamento per il modello.
| Enum | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
Il livello di ragionamento non è specificato. |
DEFAULT |
Livello di ragionamento predefinito. |
LOW |
Livello di ragionamento basso. |
MEDIUM |
Livello di ragionamento medio. |
HIGH |
Livello di ragionamento elevato. |
PolicyScope
Definisce quando applicare il controllo delle policy durante la conversazione.
| Enum | |
|---|---|
POLICY_SCOPE_UNSPECIFIED |
L'ambito della policy non è specificato. |
USER_QUERY |
Il controllo delle norme viene attivato in base all'input utente. |
AGENT_RESPONSE |
Il controllo delle policy viene attivato in base alla risposta dell'agente. L'applicazione di questo ambito della policy introdurrà una latenza aggiuntiva prima che l'agente possa rispondere. |
USER_QUERY_AND_AGENT_RESPONSE |
Il controllo delle policy viene attivato sia sull'input utente dell'utente che sulla risposta dell'agente. L'applicazione di questo ambito della policy introdurrà una latenza aggiuntiva prima che l'agente possa rispondere. |
HarmCategory
Categoria di danno.
| Enum | |
|---|---|
HARM_CATEGORY_UNSPECIFIED |
La categoria di danno non è specificata. |
HARM_CATEGORY_HATE_SPEECH |
La categoria di danno è l'incitamento all'odio. |
HARM_CATEGORY_DANGEROUS_CONTENT |
La categoria di danno è Contenuti pericolosi. |
HARM_CATEGORY_HARASSMENT |
La categoria di danno è molestie. |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
La categoria di danno è contenuti sessualmente espliciti. |
HARM_CATEGORY_PROFANITY |
La categoria di danno è il linguaggio volgare. |
HARM_CATEGORY_TOXIC |
La categoria di danno è tossica. |
HarmBlockThreshold
Livelli di soglia basati sulla probabilità per il blocco.
| Enum | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Soglia di blocco dei contenuti dannosi non specificata. |
BLOCK_LOW_AND_ABOVE |
Blocca soglia bassa e superiore (ovvero blocca più contenuti). |
BLOCK_MEDIUM_AND_ABOVE |
Blocca soglia media e superiore. |
BLOCK_ONLY_HIGH |
Blocco solo soglia alta (ovvero blocco ridotto). |
BLOCK_NONE |
Nessun blocco. |
OFF |
Disattiva il filtro di sicurezza. |
Tipo
Tipo di supervisore.
| Enum | |
|---|---|
TYPE_UNSPECIFIED |
Il tipo non è specificato. |
INVALID_TEXT |
Tipo di problema di testo non valido. |
LANGUAGE_SHIFT |
Tipo di problema relativo al cambio di lingua. |
SPEAKER_SHIFT |
Tipo di problema di spostamento dello speaker. |
AUDIO_MISMATCH |
Tipo di problema di mancata corrispondenza audio. |
MISSING_TOOL_CALL |
Tipo di problema di chiamata allo strumento mancante. |
CUSTOM |
Tipo di problema personalizzato. |
CHOPPY_AUDIO |
Tipo di problema: audio frammentato. |
PROFANITY |
Tipo di problema relativo al linguaggio volgare dell'agente. |
DetectionMode
Modalità di rilevamento del supervisore.
| Enum | |
|---|---|
DETECTION_MODE_UNSPECIFIED |
La modalità di rilevamento non è specificata. Il valore predefinito è NON_BLOCKING. |
NON_BLOCKING |
Modalità di rilevamento non bloccante. La risposta non viene bloccata quando è in corso il rilevamento del supervisore. |
BLOCKING |
Modalità di rilevamento del blocco. La risposta viene bloccata quando è in corso il rilevamento del supervisore. |
Schema di output
La barriera di protezione contiene un elenco di controlli e bilanciamenti per mantenere gli agenti al sicuro.
Guardrail
| Rappresentazione JSON |
|---|
{ "name": string, "displayName": string, "description": string, "enabled": boolean, "action": { object ( |
| Campi | |
|---|---|
name |
Identificatore. L'identificatore univoco della regola di sicurezza. Formato: |
displayName |
Obbligatorio. Nome visualizzato del guardrail. |
description |
Facoltativo. Descrizione della guardrail. |
enabled |
Facoltativo. Indica se il guardrail è abilitato. |
action |
Facoltativo. Azione da intraprendere quando viene attivato il guardrail. |
createTime |
Solo output. Timestamp della creazione della regola di protezione. 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: |
updateTime |
Solo output. Timestamp dell'ultimo aggiornamento della regola di protezione. 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: |
etag |
Etag utilizzato per garantire che l'oggetto non sia cambiato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee. |
Campo unione guardrail_type. Tipo di guardrail. guardrail_type può essere solo uno dei seguenti tipi: |
|
contentFilter |
Facoltativo. Guardrail che vieta l'utilizzo di determinati contenuti nella conversazione. |
llmPromptSecurity |
Facoltativo. Guardrail che blocca la conversazione se il prompt è considerato non sicuro in base alla classificazione dell'LLM. |
llmPolicy |
Facoltativo. Guardrail che blocca la conversazione se la risposta dell'LLM è considerata in violazione della policy in base alla classificazione dell'LLM. |
modelSafety |
Facoltativo. Guardrail che blocca la conversazione se la risposta dell'LLM è considerata non sicura in base alle impostazioni di sicurezza del modello. |
codeCallback |
Facoltativo. Guardrail che blocca potenzialmente la conversazione in base al risultato dell'esecuzione del callback. |
supervisor |
Facoltativo. Guardrail che esegue l'intervento del supervisore. |
ContentFilter
| Rappresentazione JSON |
|---|
{
"bannedContents": [
string
],
"bannedContentsInUserInput": [
string
],
"bannedContentsInAgentResponse": [
string
],
"matchType": enum ( |
| Campi | |
|---|---|
bannedContents[] |
Facoltativo. Elenco di frasi vietate. Si applica sia agli input degli utenti sia alle risposte degli agenti. |
bannedContentsInUserInput[] |
Facoltativo. Elenco di frasi vietate. Si applica solo agli input degli utenti. |
bannedContentsInAgentResponse[] |
Facoltativo. Elenco di frasi vietate. Si applica solo alle risposte degli agenti. |
matchType |
Obbligatorio. Tipo di corrispondenza per il filtro dei contenuti. |
disregardDiacritics |
Facoltativo. Se impostato su true, i segni diacritici vengono ignorati durante la ricerca di corrispondenze. |
sensitiveWordsExemptions[] |
Facoltativo. Voci dell'elenco di parole sensibili consentite da questo guardrail. Valido solo quando match_type è SENSITIVE_WORDS. Ogni valore deve corrispondere a una voce dell'elenco (senza distinzione tra maiuscole e minuscole, gli spazi vuoti circostanti vengono ignorati); altri valori non hanno alcun effetto. Si applica solo a questa regola di sicurezza. Massimo 1000 voci di massimo 256 caratteri ciascuna. |
LlmPromptSecurity
| Rappresentazione JSON |
|---|
{ "failOpen": boolean, // Union field |
| Campi | |
|---|---|
failOpen |
Facoltativo. Determina il comportamento quando la barriera di protezione rileva un errore LLM. - Se true: il guardrail viene ignorato. - Se il valore è false (predefinito): il guardrail si attiva/blocca. Nota: se viene fornita una policy personalizzata, questo campo viene ignorato a favore della configurazione "fail_open" della policy. |
Campo unione security_config. Definisce la modalità di configurazione della sicurezza. L'utente deve scegliere una delle seguenti configurazioni. security_config può essere solo uno dei seguenti tipi: |
|
defaultSettings |
Facoltativo. Utilizza le impostazioni di sicurezza predefinite del sistema. Per selezionare questa modalità, includi un messaggio "default_settings" vuoto nella richiesta. Il campo "default_prompt_template" all'interno verrà compilato dal server nella risposta. |
customPolicy |
Facoltativo. Utilizza un LlmPolicy definito dall'utente per configurare il guardrail di sicurezza. |
DefaultSecuritySettings
| Rappresentazione JSON |
|---|
{ "defaultPromptTemplate": string } |
| Campi | |
|---|---|
defaultPromptTemplate |
Solo output. Il template di prompt predefinito utilizzato dal sistema. Questo campo serve per mostrare all'utente il prompt utilizzato dal sistema per impostazione predefinita. È OUTPUT_ONLY. |
LlmPolicy
| Rappresentazione JSON |
|---|
{ "maxConversationMessages": integer, "modelSettings": { object ( |
| Campi | |
|---|---|
maxConversationMessages |
Facoltativo. Quando controlli questa policy, considera gli ultimi "n" messaggi della conversazione. Se non viene impostato, verrà utilizzato il valore predefinito 10. |
modelSettings |
Facoltativo. Impostazioni del modello. |
prompt |
Obbligatorio. Prompt delle norme. Supporta i segnaposto delle variabili di sessione ( |
policyScope |
Obbligatorio. Definisce quando applicare il controllo delle policy durante la conversazione. Se impostata su |
failOpen |
Facoltativo. Se si verifica un errore durante il controllo della policy, l'operazione non va a buon fine e il guardrail non viene attivato. |
allowShortUtterance |
Facoltativo. Per impostazione predefinita, il controllo delle policy LLM viene ignorato per gli enunciati brevi. Se attivi questa impostazione, il controllo delle policy viene applicato a tutti gli enunciati, inclusi quelli che normalmente verrebbero ignorati. |
ModelSettings
| Rappresentazione JSON |
|---|
{ "model": string, "thinkingLevel": enum ( |
| Campi | |
|---|---|
model |
Facoltativo. Il modello LLM che l'agente deve utilizzare. Se non viene impostato, l'agente erediterà il modello dall'agente parent. |
thinkingLevel |
Facoltativo. Il livello di ragionamento del modello. |
Campo unione
|
|
temperature |
Facoltativo. Se impostata, questa temperatura verrà utilizzata per il modello LLM. La temperatura controlla la casualità delle risposte del modello. Le temperature più basse producono risposte più prevedibili. Temperature più elevate producono risposte più creative. |
ModelSafety
| Rappresentazione JSON |
|---|
{
"safetySettings": [
{
object ( |
| Campi | |
|---|---|
safetySettings[] |
Obbligatorio. Elenco delle impostazioni di sicurezza. |
SafetySetting
| Rappresentazione JSON |
|---|
{ "category": enum ( |
| Campi | |
|---|---|
category |
Obbligatorio. La categoria di danno. |
threshold |
Obbligatorio. La soglia di blocco dei contenuti dannosi. |
CodeCallback
| Rappresentazione JSON |
|---|
{ "beforeAgentCallback": { object ( |
| Campi | |
|---|---|
beforeAgentCallback |
Facoltativo. Il callback da eseguire prima della chiamata dell'agente. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
afterAgentCallback |
Facoltativo. Il callback da eseguire dopo la chiamata dell'agente. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
beforeModelCallback |
Facoltativo. Il callback da eseguire prima della chiamata del modello. Se il modello viene chiamato più volte, il callback verrà eseguito più volte. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
afterModelCallback |
Facoltativo. Il callback da eseguire dopo la chiamata del modello. Se il modello viene chiamato più volte, il callback verrà eseguito più volte. Ogni funzione di callback deve restituire una struttura (ad es. un dict o un oggetto) contenente almeno: - "decision": "OK" o "TRIGGER". - "reason": una stringa che spiega la decisione. Una decisione "TRIGGER" potrebbe interrompere l'ulteriore elaborazione. |
Callback
| Rappresentazione JSON |
|---|
{ "description": string, "disabled": boolean, "proactiveExecutionEnabled": boolean, // Union field |
| Campi | |
|---|---|
description |
Facoltativo. Descrizione leggibile del callback. |
disabled |
Facoltativo. Indica se il callback è disattivato. I callback disattivati vengono ignorati dall'agente. |
proactiveExecutionEnabled |
Facoltativo. Se abilitato, il callback verrà eseguito anche sugli output intermedi del modello. Questa impostazione influisce solo sul callback dopo il modello. ABILITARE CON CAUTELA. In genere, il callback after_model deve essere eseguito solo dopo aver ricevuto tutte le risposte del modello. L'abilitazione dell'esecuzione proattiva potrebbe avere implicazioni negative sui costi e sulla latenza di esecuzione e deve essere abilitata solo in rare situazioni. |
Campo unione callback. Il callback da eseguire. callback può essere solo uno dei seguenti tipi: |
|
pythonCode |
Obbligatorio. Il codice Python da eseguire per il callback. |
Supervisore
| Rappresentazione JSON |
|---|
{ "type": enum ( |
| Campi | |
|---|---|
type |
Facoltativo. Il tipo di supervisore. |
detectionMode |
Facoltativo. La modalità di rilevamento del supervisore. |
TriggerAction
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione action. L'azione da eseguire. action può essere solo uno dei seguenti tipi: |
|
respondImmediately |
Facoltativo. Rispondi immediatamente con una risposta preconfigurata. |
transferAgent |
Facoltativo. Trasferire la conversazione a un altro agente. |
generativeAnswer |
Facoltativo. Rispondi con una risposta generativa. |
RespondImmediately
| Rappresentazione JSON |
|---|
{
"responses": [
{
object ( |
| Campi | |
|---|---|
responses[] |
Obbligatorio. Le risposte predefinite tra cui l'agente può scegliere. La risposta viene scelta in modo casuale. |
Risposta
| Rappresentazione JSON |
|---|
{ "text": string, "disabled": boolean } |
| Campi | |
|---|---|
text |
Obbligatorio. Testo con cui l'agente deve rispondere. |
disabled |
Facoltativo. Indica se la risposta è disattivata. Le risposte disattivate non vengono utilizzate dall'agente. |
TransferAgent
| Rappresentazione JSON |
|---|
{ "agent": string } |
| Campi | |
|---|---|
agent |
Obbligatorio. Il nome dell'agente a cui trasferire la conversazione. L'agente deve trovarsi nella stessa app dell'agente corrente. Formato: |
GenerativeAnswer
| Rappresentazione JSON |
|---|
{ "prompt": string } |
| Campi | |
|---|---|
prompt |
Obbligatorio. Il prompt da utilizzare per la risposta generativa. |
Timestamp
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Rappresenta i secondi dell'ora UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (che corrispondono a un intervallo compreso tra 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z). |
nanos |
Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori dei secondi negativi con frazioni devono comunque avere valori di nanosecondi non negativi che avanzano nel tempo. Deve essere un valore compreso tra 0 e 999.999.999 inclusi. |
MatchType
Tipo di corrispondenza per il filtro dei contenuti.
| Enum | |
|---|---|
MATCH_TYPE_UNSPECIFIED |
Il tipo di corrispondenza non è specificato. |
SIMPLE_STRING_MATCH |
I contenuti vengono confrontati con le sottostringhe carattere per carattere. |
WORD_BOUNDARY_STRING_MATCH |
I contenuti corrispondono solo se il pattern trovato nel testo è circondato da delimitatori di parole. Le frasi vietate possono contenere anche delimitatori di parole. |
REGEXP_MATCH |
I contenuti vengono abbinati utilizzando la sintassi delle espressioni regolari. |
SENSITIVE_WORDS |
I contenuti vengono confrontati con un elenco di parole e frasi sensibili gestito dal sistema. Se colleghi un guardrail con questo tipo di corrispondenza a un'app o a un agente, il filtro predefinito per le parole sensibili viene sostituito per gli agenti interessati. Disattiva il guardrail per disattivare il filtro predefinito. |
ThinkingLevel
Configurazione del livello di ragionamento per il modello.
| Enum | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
Il livello di ragionamento non è specificato. |
DEFAULT |
Livello di ragionamento predefinito. |
LOW |
Livello di ragionamento basso. |
MEDIUM |
Livello di ragionamento medio. |
HIGH |
Livello di ragionamento elevato. |
PolicyScope
Definisce quando applicare il controllo delle policy durante la conversazione.
| Enum | |
|---|---|
POLICY_SCOPE_UNSPECIFIED |
L'ambito della policy non è specificato. |
USER_QUERY |
Il controllo delle norme viene attivato in base all'input utente. |
AGENT_RESPONSE |
Il controllo delle policy viene attivato in base alla risposta dell'agente. L'applicazione di questo ambito della policy introdurrà una latenza aggiuntiva prima che l'agente possa rispondere. |
USER_QUERY_AND_AGENT_RESPONSE |
Il controllo delle policy viene attivato sia sull'input utente dell'utente che sulla risposta dell'agente. L'applicazione di questo ambito della policy introdurrà una latenza aggiuntiva prima che l'agente possa rispondere. |
HarmCategory
Categoria di danno.
| Enum | |
|---|---|
HARM_CATEGORY_UNSPECIFIED |
La categoria di danno non è specificata. |
HARM_CATEGORY_HATE_SPEECH |
La categoria di danno è l'incitamento all'odio. |
HARM_CATEGORY_DANGEROUS_CONTENT |
La categoria di danno è Contenuti pericolosi. |
HARM_CATEGORY_HARASSMENT |
La categoria di danno è molestie. |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
La categoria di danno è contenuti sessualmente espliciti. |
HARM_CATEGORY_PROFANITY |
La categoria di danno è il linguaggio volgare. |
HARM_CATEGORY_TOXIC |
La categoria di danno è tossica. |
HarmBlockThreshold
Livelli di soglia basati sulla probabilità per il blocco.
| Enum | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Soglia di blocco dei contenuti dannosi non specificata. |
BLOCK_LOW_AND_ABOVE |
Blocca soglia bassa e superiore (ovvero blocca più contenuti). |
BLOCK_MEDIUM_AND_ABOVE |
Blocca soglia media e superiore. |
BLOCK_ONLY_HIGH |
Blocco solo soglia alta (ovvero blocco ridotto). |
BLOCK_NONE |
Nessun blocco. |
OFF |
Disattiva il filtro di sicurezza. |
Tipo
Tipo di supervisore.
| Enum | |
|---|---|
TYPE_UNSPECIFIED |
Il tipo non è specificato. |
INVALID_TEXT |
Tipo di problema di testo non valido. |
LANGUAGE_SHIFT |
Tipo di problema relativo al cambio di lingua. |
SPEAKER_SHIFT |
Tipo di problema di spostamento dello speaker. |
AUDIO_MISMATCH |
Tipo di problema di mancata corrispondenza audio. |
MISSING_TOOL_CALL |
Tipo di problema di chiamata allo strumento mancante. |
CUSTOM |
Tipo di problema personalizzato. |
CHOPPY_AUDIO |
Tipo di problema: audio frammentato. |
PROFANITY |
Tipo di problema relativo al linguaggio volgare dell'agente. |
DetectionMode
Modalità di rilevamento del supervisore.
| Enum | |
|---|---|
DETECTION_MODE_UNSPECIFIED |
La modalità di rilevamento non è specificata. Il valore predefinito è NON_BLOCKING. |
NON_BLOCKING |
Modalità di rilevamento non bloccante. La risposta non viene bloccata quando è in corso il rilevamento del supervisore. |
BLOCKING |
Modalità di rilevamento del blocco. La risposta viene bloccata quando è in corso il rilevamento del supervisore. |
Annotazioni dello strumento
Le annotazioni degli strumenti 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 una richiesta di conferma a un utente.
Oltre alla stringa del titolo, i seguenti suggerimenti booleani sono definiti come segue:
readOnlyHint: se true, lo strumento non modifica il suo ambiente. Valore predefinito: false.destructiveHint: se true, lo strumento può eseguire azioni distruttive. Se è false, lo strumento può eseguire solo azioni additive. Valore predefinito: true.idempotentHint: se true, la chiamata ripetuta dello 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 entità interne. Ad esempio, uno strumento di ricerca web sarebbe open world, mentre uno strumento di memoria non lo sarebbe.
Destructive Hint: ✅ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌