MCP Tools Reference: ces.googleapis.com

Outil : create_guardrail

Crée un garde-fou dans l'application spécifiée.

L'exemple de code suivant montre comment utiliser curl pour appeler l'outil MCP create_guardrail.

Requête 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_guardrail",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Schéma d'entrée

Message de requête pour AgentService.CreateGuardrail.

CreateGuardrailRequest

Représentation JSON
{
  "parent": string,
  "guardrailId": string,
  "guardrail": {
    object (Guardrail)
  }
}
Champs
parent

string

Obligatoire. Nom de ressource de l'application dans laquelle créer un garde-fou.

guardrailId

string

Facultatif. ID à utiliser pour le garde-fou, qui constituera le composant final du nom de ressource du garde-fou. Si aucun ID n'est fourni, un ID unique sera automatiquement attribué à la barrière de sécurité.

guardrail

object (Guardrail)

Obligatoire. Garde-fou à créer.

Garde-fou

Représentation JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "enabled": boolean,
  "action": {
    object (TriggerAction)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,

  // Union field guardrail_type can be only one of the following:
  "contentFilter": {
    object (ContentFilter)
  },
  "llmPromptSecurity": {
    object (LlmPromptSecurity)
  },
  "llmPolicy": {
    object (LlmPolicy)
  },
  "modelSafety": {
    object (ModelSafety)
  },
  "codeCallback": {
    object (CodeCallback)
  },
  "supervisor": {
    object (Supervisor)
  }
  // End of list of possible types for union field guardrail_type.
}
Champs
name

string

Identifiant. Identifiant unique du garde-fou. Format : projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

Obligatoire. Nom à afficher de la barrière de sécurité.

description

string

Facultatif. Description de la barrière de sécurité.

enabled

boolean

Facultatif. Indique si le garde-fou est activé.

action

object (TriggerAction)

Facultatif. Action à effectuer lorsque le garde-fou est déclenché.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création du garde-fou.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour du garde-fou.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Etag utilisé pour s'assurer que l'objet n'a pas été modifié lors d'une opération de lecture-modification-écriture. Si l'etag est vide, la mise à jour écrasera toutes les modifications simultanées.

Champ d'union guardrail_type. Type de garde-fou. guardrail_type ne peut être qu'un des éléments suivants :
contentFilter

object (ContentFilter)

Facultatif. Garde-fou qui interdit l'utilisation de certains contenus dans la conversation.

llmPromptSecurity

object (LlmPromptSecurity)

Facultatif. Garde-fou qui bloque la conversation si la requête est considérée comme dangereuse en fonction de la classification du LLM.

llmPolicy

object (LlmPolicy)

Facultatif. Garde-fou qui bloque la conversation si la réponse du LLM est considérée comme enfreignant le règlement en fonction de la classification du LLM.

modelSafety

object (ModelSafety)

Facultatif. Garde-fou qui bloque la conversation si la réponse du LLM est considérée comme non sécurisée en fonction des paramètres de sécurité du modèle.

codeCallback

object (CodeCallback)

Facultatif. Garde-fou qui bloque potentiellement la conversation en fonction du résultat de l'exécution du rappel.

supervisor

object (Supervisor)

Facultatif. Garde-fou qui déclenche une intervention du superviseur.

ContentFilter

Représentation JSON
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
Champs
bannedContents[]

string

Facultatif. Liste des expressions interdites. S'applique aux entrées utilisateur et aux réponses de l'agent.

bannedContentsInUserInput[]

string

Facultatif. Liste des expressions interdites. S'applique uniquement aux entrées utilisateur.

bannedContentsInAgentResponse[]

string

Facultatif. Liste des expressions interdites. Ne s'applique qu'aux réponses des agents.

matchType

enum (MatchType)

Obligatoire. Type de correspondance pour le filtre de contenu.

disregardDiacritics

boolean

Facultatif. Si la valeur est "true", les signes diacritiques sont ignorés lors de la recherche des correspondances.

LlmPromptSecurity

Représentation JSON
{
  "failOpen": boolean,

  // Union field security_config can be only one of the following:
  "defaultSettings": {
    object (DefaultSecuritySettings)
  },
  "customPolicy": {
    object (LlmPolicy)
  }
  // End of list of possible types for union field security_config.
}
Champs
failOpen

boolean

Facultatif. Détermine le comportement lorsque le garde-fou rencontre une erreur LLM. - Si la valeur est "true", le garde-fou est contourné. - Si la valeur est "false" (par défaut), la barrière de sécurité se déclenche/bloque.

Remarque : Si une règle personnalisée est fournie, ce champ est ignoré au profit de la configuration "fail_open" de la règle.

Champ d'union security_config. Définit le mode de configuration de la sécurité. L'utilisateur doit choisir l'une des configurations suivantes. security_config ne peut être qu'un des éléments suivants :
defaultSettings

object (DefaultSecuritySettings)

Facultatif. Utilisez les paramètres de sécurité par défaut prédéfinis du système. Pour sélectionner ce mode, incluez un message "default_settings" vide dans la requête. Le champ "default_prompt_template" sera renseigné par le serveur dans la réponse.

customPolicy

object (LlmPolicy)

Facultatif. Utilisez une LlmPolicy définie par l'utilisateur pour configurer le garde-fou de sécurité.

DefaultSecuritySettings

Représentation JSON
{
  "defaultPromptTemplate": string
}
Champs
defaultPromptTemplate

string

Uniquement en sortie. Modèle de prompt par défaut utilisé par le système. Ce champ est destiné à afficher l'invite que le système utilise par défaut. Il s'agit d'un champ OUTPUT_ONLY.

LlmPolicy

Représentation JSON
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
Champs
maxConversationMessages

integer

Facultatif. Lorsque vous vérifiez le respect de ce règlement, tenez compte des "n" derniers messages de la conversation. Si aucune valeur n'est définie, la valeur par défaut de 10 est utilisée.

modelSettings

object (ModelSettings)

Facultatif. Paramètres du modèle.

prompt

string

Obligatoire. Prompt de règle.

policyScope

enum (PolicyScope)

Obligatoire. Définit le moment où la vérification des règles doit être appliquée pendant la conversation. Si elle est définie sur POLICY_SCOPE_UNSPECIFIED, la règle s'applique à l'entrée utilisateur. Lorsque vous appliquez la règle à la réponse de l'agent, une latence supplémentaire est introduite avant que l'agent puisse répondre.

failOpen

boolean

Facultatif. Si une erreur se produit lors de la vérification des règles, ouvrez le système et ne déclenchez pas le garde-fou.

allowShortUtterance

boolean

Facultatif. Par défaut, la vérification des règles LLM est ignorée pour les énoncés courts. Si vous activez ce paramètre, la vérification des règles s'applique à toutes les expressions, y compris celles qui seraient normalement ignorées.

ModelSettings

Représentation JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Champs
model

string

Facultatif. Modèle LLM que l'agent doit utiliser. Si elle n'est pas définie, l'agent hérite du modèle de son agent parent.

thinkingLevel

enum (ThinkingLevel)

Facultatif. Niveau de réflexion du modèle.

Champ d'union _temperature.

_temperature ne peut être qu'un des éléments suivants :

temperature

number

Facultatif. Si elle est définie, cette température sera utilisée pour le modèle LLM. La température contrôle le caractère aléatoire des réponses du modèle. Les températures plus basses produisent des réponses plus prévisibles. Les températures plus élevées génèrent des réponses plus créatives.

ModelSafety

Représentation JSON
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
Champs
safetySettings[]

object (SafetySetting)

Obligatoire. Liste des paramètres de sécurité.

SafetySetting

Représentation JSON
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
Champs
category

enum (HarmCategory)

Obligatoire. Catégorie de préjudice.

threshold

enum (HarmBlockThreshold)

Obligatoire. Seuil de blocage de préjudice.

CodeCallback

Représentation JSON
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
Champs
beforeAgentCallback

object (Callback)

Facultatif. Rappel à exécuter avant l'appel de l'agent. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

afterAgentCallback

object (Callback)

Facultatif. Rappel à exécuter après l'appel de l'agent. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

beforeModelCallback

object (Callback)

Facultatif. Rappel à exécuter avant l'appel du modèle. S'il existe plusieurs appels au modèle, le rappel sera exécuté plusieurs fois. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

afterModelCallback

object (Callback)

Facultatif. Rappel à exécuter après l'appel du modèle. S'il existe plusieurs appels au modèle, le rappel sera exécuté plusieurs fois. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

Rappel

Représentation JSON
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
Champs
description

string

Facultatif. Description lisible du rappel.

disabled

boolean

Facultatif. Indique si le rappel est désactivé. Les rappels désactivés sont ignorés par l'agent.

proactiveExecutionEnabled

boolean

Facultatif. Si elle est activée, le rappel sera également exécuté sur les sorties de modèle intermédiaires. Ce paramètre n'affecte que le rappel "Après le modèle". ACTIVEZ CETTE FONCTIONNALITÉ AVEC PRÉCAUTION. En règle générale, le rappel "après le modèle" ne doit être exécuté qu'après avoir reçu toutes les réponses du modèle. L'activation de l'exécution proactive peut avoir des conséquences négatives sur le coût et la latence de l'exécution. Elle ne doit être activée que dans de rares cas.

Champ d'union callback. Rappel à exécuter. callback ne peut être qu'un des éléments suivants :
pythonCode

string

Obligatoire. Code Python à exécuter pour le rappel.

Superviseur

Représentation JSON
{
  "type": enum (Type),
  "detectionMode": enum (DetectionMode)
}
Champs
type

enum (Type)

Facultatif. Type de superviseur.

detectionMode

enum (DetectionMode)

Facultatif. Mode de détection du superviseur.

TriggerAction

Représentation JSON
{

  // Union field action can be only one of the following:
  "respondImmediately": {
    object (RespondImmediately)
  },
  "transferAgent": {
    object (TransferAgent)
  },
  "generativeAnswer": {
    object (GenerativeAnswer)
  }
  // End of list of possible types for union field action.
}
Champs
Champ d'union action. Action à effectuer. action ne peut être qu'un des éléments suivants :
respondImmediately

object (RespondImmediately)

Facultatif. répondre immédiatement avec une réponse préconfigurée ;

transferAgent

object (TransferAgent)

Facultatif. Transférez la conversation à un autre agent.

generativeAnswer

object (GenerativeAnswer)

Facultatif. Répondez avec une réponse générative.

RespondImmediately

Représentation JSON
{
  "responses": [
    {
      object (Response)
    }
  ]
}
Champs
responses[]

object (Response)

Obligatoire. Réponses prédéfinies parmi lesquelles l'agent peut choisir. La réponse est choisie de manière aléatoire.

Réponse

Représentation JSON
{
  "text": string,
  "disabled": boolean
}
Champs
text

string

Obligatoire. Texte auquel l'agent doit répondre.

disabled

boolean

Facultatif. Indique si la réponse est désactivée. Les réponses désactivées ne sont pas utilisées par l'agent.

TransferAgent

Représentation JSON
{
  "agent": string
}
Champs
agent

string

Obligatoire. Nom de l'agent auquel transférer la conversation. L'agent doit se trouver dans la même application que l'agent actuel. Format : projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

Représentation JSON
{
  "prompt": string
}
Champs
prompt

string

Obligatoire. Requête à utiliser pour la réponse générative.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. Doit être compris entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. Doit être compris entre 0 et 999 999 999 (inclus).

MatchType

Type de correspondance pour le filtre de contenu.

Enums
MATCH_TYPE_UNSPECIFIED Le type de correspondance n'est pas spécifié.
SIMPLE_STRING_MATCH Le contenu est mis en correspondance pour les sous-chaînes caractère par caractère.
WORD_BOUNDARY_STRING_MATCH Le contenu ne correspond que si le motif trouvé dans le texte est entouré de délimiteurs de mots. Les expressions interdites peuvent également contenir des délimiteurs de mots.
REGEXP_MATCH Le contenu est mis en correspondance à l'aide de la syntaxe des expressions régulières.

ThinkingLevel

Niveau de réflexion configuré pour le modèle.

Enums
THINKING_LEVEL_UNSPECIFIED Le niveau de réflexion n'est pas spécifié.
DEFAULT Niveau de réflexion par défaut.
LOW Niveau de réflexion faible.
MEDIUM Niveau de réflexion moyen.
HIGH Niveau de réflexion élevé.

PolicyScope

Définit le moment où la vérification des règles doit être appliquée pendant la conversation.

Enums
POLICY_SCOPE_UNSPECIFIED Le champ d'application de la règle n'est pas spécifié.
USER_QUERY La vérification des règles est déclenchée par l'entrée utilisateur.
AGENT_RESPONSE La vérification des règles est déclenchée par la réponse de l'agent. L'application de ce champ d'application de la règle entraînera une latence supplémentaire avant que l'agent puisse répondre.
USER_QUERY_AND_AGENT_RESPONSE La vérification des règles est déclenchée à la fois sur les entrées utilisateur et sur les réponses de l'agent. L'application de ce champ d'application de la règle entraînera une latence supplémentaire avant que l'agent puisse répondre.

HarmCategory

Catégorie de préjudice.

Enums
HARM_CATEGORY_UNSPECIFIED La catégorie de préjudice n'est pas spécifiée.
HARM_CATEGORY_HATE_SPEECH La catégorie de préjudice est "incitation à la haine".
HARM_CATEGORY_DANGEROUS_CONTENT La catégorie de préjudice est "contenu dangereux".
HARM_CATEGORY_HARASSMENT La catégorie de préjudice est "harcèlement".
HARM_CATEGORY_SEXUALLY_EXPLICIT La catégorie de préjudice est "contenu à caractère sexuel explicite".
HARM_CATEGORY_PROFANITY La catégorie de préjudice est "propos obscènes".
HARM_CATEGORY_TOXIC La catégorie de préjudice est "contenu toxique".

HarmBlockThreshold

Niveaux de seuil de probabilité pour le blocage.

Enums
HARM_BLOCK_THRESHOLD_UNSPECIFIED Seuil de blocage de préjudice non spécifié.
BLOCK_LOW_AND_ABOVE Bloquer les seuils faibles et supérieurs (augmenter le nombre de blocages).
BLOCK_MEDIUM_AND_ABOVE Bloquer les seuils moyens et supérieurs.
BLOCK_ONLY_HIGH Bloquer uniquement les seuils élevés (réduire le nombre de blocage).
BLOCK_NONE Ne rien bloquer.
OFF Désactivez le filtre de sécurité.

Type

Type de responsable.

Enums
TYPE_UNSPECIFIED Le type n'est pas spécifié.
INVALID_TEXT Type de problème de texte non valide.
LANGUAGE_SHIFT Type de problème lié au changement de langue.
SPEAKER_SHIFT Type de problème de décalage de l'intervenant.
AUDIO_MISMATCH Type de problème de non-concordance audio.
MISSING_TOOL_CALL Type de problème d'appel d'outil manquant.
CUSTOM Type de problème personnalisé.
CHOPPY_AUDIO Type de problème de son haché.
PROFANITY Type de problème lié à un langage grossier de l'agent.

DetectionMode

Mode de détection du superviseur.

Enums
DETECTION_MODE_UNSPECIFIED Le mode de détection n'est pas spécifié. La valeur par défaut est NON_BLOCKING.
NON_BLOCKING Mode de détection non bloquant. La réponse n'est pas bloquée lorsque la détection de la supervision est en cours.
BLOCKING Mode de détection du blocage. La réponse est bloquée lorsque la détection de la supervision est en cours.

Schéma de sortie

Les garde-fous contiennent une liste de contrôles et d'équilibres pour assurer la sécurité des agents.

Garde-fou

Représentation JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "enabled": boolean,
  "action": {
    object (TriggerAction)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,

  // Union field guardrail_type can be only one of the following:
  "contentFilter": {
    object (ContentFilter)
  },
  "llmPromptSecurity": {
    object (LlmPromptSecurity)
  },
  "llmPolicy": {
    object (LlmPolicy)
  },
  "modelSafety": {
    object (ModelSafety)
  },
  "codeCallback": {
    object (CodeCallback)
  },
  "supervisor": {
    object (Supervisor)
  }
  // End of list of possible types for union field guardrail_type.
}
Champs
name

string

Identifiant. Identifiant unique du garde-fou. Format : projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

Obligatoire. Nom à afficher de la barrière de sécurité.

description

string

Facultatif. Description de la barrière de sécurité.

enabled

boolean

Facultatif. Indique si le garde-fou est activé.

action

object (TriggerAction)

Facultatif. Action à effectuer lorsque le garde-fou est déclenché.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création du garde-fou.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour du garde-fou.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Etag utilisé pour s'assurer que l'objet n'a pas été modifié lors d'une opération de lecture-modification-écriture. Si l'etag est vide, la mise à jour écrasera toutes les modifications simultanées.

Champ d'union guardrail_type. Type de garde-fou. guardrail_type ne peut être qu'un des éléments suivants :
contentFilter

object (ContentFilter)

Facultatif. Garde-fou qui interdit l'utilisation de certains contenus dans la conversation.

llmPromptSecurity

object (LlmPromptSecurity)

Facultatif. Garde-fou qui bloque la conversation si la requête est considérée comme dangereuse en fonction de la classification du LLM.

llmPolicy

object (LlmPolicy)

Facultatif. Garde-fou qui bloque la conversation si la réponse du LLM est considérée comme enfreignant le règlement en fonction de la classification du LLM.

modelSafety

object (ModelSafety)

Facultatif. Garde-fou qui bloque la conversation si la réponse du LLM est considérée comme non sécurisée en fonction des paramètres de sécurité du modèle.

codeCallback

object (CodeCallback)

Facultatif. Garde-fou qui bloque potentiellement la conversation en fonction du résultat de l'exécution du rappel.

supervisor

object (Supervisor)

Facultatif. Garde-fou qui déclenche une intervention du superviseur.

ContentFilter

Représentation JSON
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
Champs
bannedContents[]

string

Facultatif. Liste des expressions interdites. S'applique aux entrées utilisateur et aux réponses de l'agent.

bannedContentsInUserInput[]

string

Facultatif. Liste des expressions interdites. S'applique uniquement aux entrées utilisateur.

bannedContentsInAgentResponse[]

string

Facultatif. Liste des expressions interdites. Ne s'applique qu'aux réponses des agents.

matchType

enum (MatchType)

Obligatoire. Type de correspondance pour le filtre de contenu.

disregardDiacritics

boolean

Facultatif. Si la valeur est "true", les signes diacritiques sont ignorés lors de la recherche des correspondances.

LlmPromptSecurity

Représentation JSON
{
  "failOpen": boolean,

  // Union field security_config can be only one of the following:
  "defaultSettings": {
    object (DefaultSecuritySettings)
  },
  "customPolicy": {
    object (LlmPolicy)
  }
  // End of list of possible types for union field security_config.
}
Champs
failOpen

boolean

Facultatif. Détermine le comportement lorsque le garde-fou rencontre une erreur LLM. - Si la valeur est "true", le garde-fou est contourné. - Si la valeur est "false" (par défaut), la barrière de sécurité se déclenche/bloque.

Remarque : Si une règle personnalisée est fournie, ce champ est ignoré au profit de la configuration "fail_open" de la règle.

Champ d'union security_config. Définit le mode de configuration de la sécurité. L'utilisateur doit choisir l'une des configurations suivantes. security_config ne peut être qu'un des éléments suivants :
defaultSettings

object (DefaultSecuritySettings)

Facultatif. Utilisez les paramètres de sécurité par défaut prédéfinis du système. Pour sélectionner ce mode, incluez un message "default_settings" vide dans la requête. Le champ "default_prompt_template" sera renseigné par le serveur dans la réponse.

customPolicy

object (LlmPolicy)

Facultatif. Utilisez une LlmPolicy définie par l'utilisateur pour configurer le garde-fou de sécurité.

DefaultSecuritySettings

Représentation JSON
{
  "defaultPromptTemplate": string
}
Champs
defaultPromptTemplate

string

Uniquement en sortie. Modèle de prompt par défaut utilisé par le système. Ce champ est destiné à afficher l'invite que le système utilise par défaut. Il s'agit d'un champ OUTPUT_ONLY.

LlmPolicy

Représentation JSON
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
Champs
maxConversationMessages

integer

Facultatif. Lorsque vous vérifiez le respect de ce règlement, tenez compte des "n" derniers messages de la conversation. Si aucune valeur n'est définie, la valeur par défaut de 10 est utilisée.

modelSettings

object (ModelSettings)

Facultatif. Paramètres du modèle.

prompt

string

Obligatoire. Prompt de règle.

policyScope

enum (PolicyScope)

Obligatoire. Définit le moment où la vérification des règles doit être appliquée pendant la conversation. Si elle est définie sur POLICY_SCOPE_UNSPECIFIED, la règle s'applique à l'entrée utilisateur. Lorsque vous appliquez la règle à la réponse de l'agent, une latence supplémentaire est introduite avant que l'agent puisse répondre.

failOpen

boolean

Facultatif. Si une erreur se produit lors de la vérification des règles, ouvrez le système et ne déclenchez pas le garde-fou.

allowShortUtterance

boolean

Facultatif. Par défaut, la vérification des règles LLM est ignorée pour les énoncés courts. Si vous activez ce paramètre, la vérification des règles s'applique à toutes les expressions, y compris celles qui seraient normalement ignorées.

ModelSettings

Représentation JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Champs
model

string

Facultatif. Modèle LLM que l'agent doit utiliser. Si elle n'est pas définie, l'agent hérite du modèle de son agent parent.

thinkingLevel

enum (ThinkingLevel)

Facultatif. Niveau de réflexion du modèle.

Champ d'union _temperature.

_temperature ne peut être qu'un des éléments suivants :

temperature

number

Facultatif. Si elle est définie, cette température sera utilisée pour le modèle LLM. La température contrôle le caractère aléatoire des réponses du modèle. Les températures plus basses produisent des réponses plus prévisibles. Les températures plus élevées génèrent des réponses plus créatives.

ModelSafety

Représentation JSON
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
Champs
safetySettings[]

object (SafetySetting)

Obligatoire. Liste des paramètres de sécurité.

SafetySetting

Représentation JSON
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
Champs
category

enum (HarmCategory)

Obligatoire. Catégorie de préjudice.

threshold

enum (HarmBlockThreshold)

Obligatoire. Seuil de blocage de préjudice.

CodeCallback

Représentation JSON
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
Champs
beforeAgentCallback

object (Callback)

Facultatif. Rappel à exécuter avant l'appel de l'agent. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

afterAgentCallback

object (Callback)

Facultatif. Rappel à exécuter après l'appel de l'agent. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

beforeModelCallback

object (Callback)

Facultatif. Rappel à exécuter avant l'appel du modèle. S'il existe plusieurs appels au modèle, le rappel sera exécuté plusieurs fois. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

afterModelCallback

object (Callback)

Facultatif. Rappel à exécuter après l'appel du modèle. S'il existe plusieurs appels au modèle, le rappel sera exécuté plusieurs fois. Chaque fonction de rappel doit renvoyer une structure (par exemple, un dict ou un objet) contenant au moins : - "decision" : "OK" ou "TRIGGER". - "reason" : chaîne expliquant la décision. Une décision "DÉCLENCHEMENT" peut interrompre le traitement.

Rappel

Représentation JSON
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
Champs
description

string

Facultatif. Description lisible du rappel.

disabled

boolean

Facultatif. Indique si le rappel est désactivé. Les rappels désactivés sont ignorés par l'agent.

proactiveExecutionEnabled

boolean

Facultatif. Si elle est activée, le rappel sera également exécuté sur les sorties de modèle intermédiaires. Ce paramètre n'affecte que le rappel "Après le modèle". ACTIVEZ CETTE FONCTIONNALITÉ AVEC PRÉCAUTION. En règle générale, le rappel "après le modèle" ne doit être exécuté qu'après avoir reçu toutes les réponses du modèle. L'activation de l'exécution proactive peut avoir des conséquences négatives sur le coût et la latence de l'exécution. Elle ne doit être activée que dans de rares cas.

Champ d'union callback. Rappel à exécuter. callback ne peut être qu'un des éléments suivants :
pythonCode

string

Obligatoire. Code Python à exécuter pour le rappel.

Superviseur

Représentation JSON
{
  "type": enum (Type),
  "detectionMode": enum (DetectionMode)
}
Champs
type

enum (Type)

Facultatif. Type de superviseur.

detectionMode

enum (DetectionMode)

Facultatif. Mode de détection du superviseur.

TriggerAction

Représentation JSON
{

  // Union field action can be only one of the following:
  "respondImmediately": {
    object (RespondImmediately)
  },
  "transferAgent": {
    object (TransferAgent)
  },
  "generativeAnswer": {
    object (GenerativeAnswer)
  }
  // End of list of possible types for union field action.
}
Champs
Champ d'union action. Action à effectuer. action ne peut être qu'un des éléments suivants :
respondImmediately

object (RespondImmediately)

Facultatif. répondre immédiatement avec une réponse préconfigurée ;

transferAgent

object (TransferAgent)

Facultatif. Transférez la conversation à un autre agent.

generativeAnswer

object (GenerativeAnswer)

Facultatif. Répondez avec une réponse générative.

RespondImmediately

Représentation JSON
{
  "responses": [
    {
      object (Response)
    }
  ]
}
Champs
responses[]

object (Response)

Obligatoire. Réponses prédéfinies parmi lesquelles l'agent peut choisir. La réponse est choisie de manière aléatoire.

Réponse

Représentation JSON
{
  "text": string,
  "disabled": boolean
}
Champs
text

string

Obligatoire. Texte auquel l'agent doit répondre.

disabled

boolean

Facultatif. Indique si la réponse est désactivée. Les réponses désactivées ne sont pas utilisées par l'agent.

TransferAgent

Représentation JSON
{
  "agent": string
}
Champs
agent

string

Obligatoire. Nom de l'agent auquel transférer la conversation. L'agent doit se trouver dans la même application que l'agent actuel. Format : projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

Représentation JSON
{
  "prompt": string
}
Champs
prompt

string

Obligatoire. Requête à utiliser pour la réponse générative.

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. Doit être compris entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. Doit être compris entre 0 et 999 999 999 (inclus).

MatchType

Type de correspondance pour le filtre de contenu.

Enums
MATCH_TYPE_UNSPECIFIED Le type de correspondance n'est pas spécifié.
SIMPLE_STRING_MATCH Le contenu est mis en correspondance pour les sous-chaînes caractère par caractère.
WORD_BOUNDARY_STRING_MATCH Le contenu ne correspond que si le motif trouvé dans le texte est entouré de délimiteurs de mots. Les expressions interdites peuvent également contenir des délimiteurs de mots.
REGEXP_MATCH Le contenu est mis en correspondance à l'aide de la syntaxe des expressions régulières.

ThinkingLevel

Niveau de réflexion configuré pour le modèle.

Enums
THINKING_LEVEL_UNSPECIFIED Le niveau de réflexion n'est pas spécifié.
DEFAULT Niveau de réflexion par défaut.
LOW Niveau de réflexion faible.
MEDIUM Niveau de réflexion moyen.
HIGH Niveau de réflexion élevé.

PolicyScope

Définit le moment où la vérification des règles doit être appliquée pendant la conversation.

Enums
POLICY_SCOPE_UNSPECIFIED Le champ d'application de la règle n'est pas spécifié.
USER_QUERY La vérification des règles est déclenchée par l'entrée utilisateur.
AGENT_RESPONSE La vérification des règles est déclenchée par la réponse de l'agent. L'application de ce champ d'application de la règle entraînera une latence supplémentaire avant que l'agent puisse répondre.
USER_QUERY_AND_AGENT_RESPONSE La vérification des règles est déclenchée à la fois sur les entrées utilisateur et sur les réponses de l'agent. L'application de ce champ d'application de la règle entraînera une latence supplémentaire avant que l'agent puisse répondre.

HarmCategory

Catégorie de préjudice.

Enums
HARM_CATEGORY_UNSPECIFIED La catégorie de préjudice n'est pas spécifiée.
HARM_CATEGORY_HATE_SPEECH La catégorie de préjudice est "incitation à la haine".
HARM_CATEGORY_DANGEROUS_CONTENT La catégorie de préjudice est "contenu dangereux".
HARM_CATEGORY_HARASSMENT La catégorie de préjudice est "harcèlement".
HARM_CATEGORY_SEXUALLY_EXPLICIT La catégorie de préjudice est "contenu à caractère sexuel explicite".
HARM_CATEGORY_PROFANITY La catégorie de préjudice est "propos obscènes".
HARM_CATEGORY_TOXIC La catégorie de préjudice est "contenu toxique".

HarmBlockThreshold

Niveaux de seuil de probabilité pour le blocage.

Enums
HARM_BLOCK_THRESHOLD_UNSPECIFIED Seuil de blocage de préjudice non spécifié.
BLOCK_LOW_AND_ABOVE Bloquer les seuils faibles et supérieurs (augmenter le nombre de blocages).
BLOCK_MEDIUM_AND_ABOVE Bloquer les seuils moyens et supérieurs.
BLOCK_ONLY_HIGH Bloquer uniquement les seuils élevés (réduire le nombre de blocage).
BLOCK_NONE Ne rien bloquer.
OFF Désactivez le filtre de sécurité.

Type

Type de responsable.

Enums
TYPE_UNSPECIFIED Le type n'est pas spécifié.
INVALID_TEXT Type de problème de texte non valide.
LANGUAGE_SHIFT Type de problème lié au changement de langue.
SPEAKER_SHIFT Type de problème de décalage de l'intervenant.
AUDIO_MISMATCH Type de problème de non-concordance audio.
MISSING_TOOL_CALL Type de problème d'appel d'outil manquant.
CUSTOM Type de problème personnalisé.
CHOPPY_AUDIO Type de problème de son haché.
PROFANITY Type de problème lié à un langage grossier de l'agent.

DetectionMode

Mode de détection du superviseur.

Enums
DETECTION_MODE_UNSPECIFIED Le mode de détection n'est pas spécifié. La valeur par défaut est NON_BLOCKING.
NON_BLOCKING Mode de détection non bloquant. La réponse n'est pas bloquée lorsque la détection de la supervision est en cours.
BLOCKING Mode de détection du blocage. La réponse est bloquée lorsque la détection de la supervision est en cours.

Annotations d'outils

Les annotations d'outil sont envoyées aux clients MCP pour décrire le risque de base d'un outil donné. La plupart des clients traitent ces indices comme non fiables, mais ils peuvent être utilisés pour déterminer quand un message de confirmation peut être envoyé à un utilisateur.

En plus de la chaîne de titre, les indications booléennes suivantes sont définies comme suit :

  • readOnlyHint : si la valeur est "true", l'outil ne modifie pas son environnement. Valeur par défaut : "false".
  • destructiveHint : si la valeur est "true", l'outil peut effectuer des actions destructrices. Si la valeur est "false", l'outil ne peut effectuer que des actions d'ajout. Valeur par défaut : "true".
  • idempotentHint : si la valeur est "true", appeler l'outil à plusieurs reprises avec les mêmes arguments n'aura aucun effet supplémentaire sur son environnement. Valeur par défaut : "false".
  • openWorldHint : si la valeur est "true", l'outil peut interagir avec un "monde ouvert" d'entités externes. Si la valeur est "false", l'outil ne peut interagir qu'avec des entités internes. Par exemple, un outil de recherche Web serait en monde ouvert, tandis qu'un outil de mémoire ne le serait pas.

Indice destructif : ✅ | Indice idempotent : ❌ | Indice en lecture seule : ❌ | Indice Open World : ❌