Outil : update_guardrail
Met à jour le garde-fou spécifié. Veillez à toujours transmettre un masque de mise à jour dans l'entrée.
L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP update_guardrail.
| Requête curl |
|---|
curl --location 'https://ces.[REGION].rep.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 tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schéma d'entrée
Message de requête pour AgentService.UpdateGuardrail.
UpdateGuardrailRequest
| Représentation JSON |
|---|
{
"guardrail": {
object ( |
| Champs | |
|---|---|
guardrail |
Obligatoire. Garde-fou à mettre à jour. |
updateMask |
Facultatif. Le masque de champ permet de contrôler les champs à mettre à jour. Si le masque n'est pas présent, tous les champs seront mis à jour. Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : |
Garde-fou
| Représentation JSON |
|---|
{ "name": string, "displayName": string, "description": string, "enabled": boolean, "action": { object ( |
| Champs | |
|---|---|
name |
Identifiant. Identifiant unique du garde-fou. Format : |
displayName |
Obligatoire. Nom à afficher de la barrière de sécurité. |
description |
Facultatif. Description du garde-fou. |
enabled |
Facultatif. Indique si le garde-fou est activé. |
action |
Facultatif. Action à effectuer lorsque le garde-fou est déclenché. |
createTime |
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 : |
updateTime |
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 : |
etag |
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 |
Facultatif. Garde-fou qui interdit l'utilisation de certains contenus dans la conversation. |
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 |
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 |
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 |
Facultatif. Garde-fou qui bloque potentiellement la conversation en fonction du résultat de l'exécution du rappel. |
ContentFilter
| Représentation JSON |
|---|
{
"bannedContents": [
string
],
"bannedContentsInUserInput": [
string
],
"bannedContentsInAgentResponse": [
string
],
"matchType": enum ( |
| Champs | |
|---|---|
bannedContents[] |
Facultatif. Liste des expressions interdites. S'applique aux entrées utilisateur et aux réponses de l'agent. |
bannedContentsInUserInput[] |
Facultatif. Liste des expressions interdites. Ne s'applique qu'aux entrées utilisateur. |
bannedContentsInAgentResponse[] |
Facultatif. Liste des expressions interdites. Ne s'applique qu'aux réponses des agents. |
matchType |
Obligatoire. Type de correspondance pour le filtre de contenu. |
disregardDiacritics |
Facultatif. Si la valeur est "true", les signes diacritiques sont ignorés lors de la mise en correspondance. |
LlmPromptSecurity
| Représentation JSON |
|---|
{ "failOpen": boolean, // Union field |
| Champs | |
|---|---|
failOpen |
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), le garde-fou 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 |
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 |
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 |
Uniquement en sortie. Modèle de requête par défaut utilisé par le système. Ce champ est destiné à afficher l'invite que le système utilise par défaut. OUTPUT_ONLY. |
LlmPolicy
| Représentation JSON |
|---|
{ "maxConversationMessages": integer, "modelSettings": { object ( |
| Champs | |
|---|---|
maxConversationMessages |
Facultatif. Lorsque vous vérifiez cette règle, 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 |
Facultatif. Paramètres du modèle. |
prompt |
Obligatoire. Invite concernant les règles. |
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 |
failOpen |
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 |
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, // Union field |
| Champs | |
|---|---|
model |
Facultatif. Modèle LLM que l'agent doit utiliser. Si aucune valeur n'est définie, l'agent hérite du modèle de son agent parent. |
Champ d'union
|
|
temperature |
Facultatif. Si cette option 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 produisent des réponses plus créatives. |
ModelSafety
| Représentation JSON |
|---|
{
"safetySettings": [
{
object ( |
| Champs | |
|---|---|
safetySettings[] |
Obligatoire. Liste des paramètres de sécurité. |
SafetySetting
| Représentation JSON |
|---|
{ "category": enum ( |
| Champs | |
|---|---|
category |
Obligatoire. Catégorie de préjudice. |
threshold |
Obligatoire. Seuil de blocage de préjudice. |
CodeCallback
| Représentation JSON |
|---|
{ "beforeAgentCallback": { object ( |
| Champs | |
|---|---|
beforeAgentCallback |
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 |
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 |
Facultatif. Rappel à exécuter avant l'appel du modèle. Si le modèle est appelé plusieurs fois, 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 |
Facultatif. Rappel à exécuter après l'appel du modèle. Si le modèle est appelé plusieurs fois, 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 |
| Champs | |
|---|---|
description |
Facultatif. Description lisible du rappel. |
disabled |
Facultatif. Indique si le rappel est désactivé. Les rappels désactivés sont ignorés par l'agent. |
proactiveExecutionEnabled |
Facultatif. S'il est activé, 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 AVEC PRÉCAUTION. En règle générale, le rappel after_model_callback 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 |
Obligatoire. Code Python à exécuter pour le rappel. |
TriggerAction
| Représentation JSON |
|---|
{ // Union field |
| Champs | |
|---|---|
Champ d'union action. Action à effectuer. action ne peut être qu'un des éléments suivants : |
|
respondImmediately |
Facultatif. Répondez immédiatement avec une réponse préconfigurée. |
transferAgent |
Facultatif. transférer la conversation à un autre agent ; |
generativeAnswer |
Facultatif. Répondez avec une réponse générative. |
RespondImmediately
| Représentation JSON |
|---|
{
"responses": [
{
object ( |
| Champs | |
|---|---|
responses[] |
Obligatoire. Réponses standardisées parmi lesquelles l'agent peut choisir. La réponse est choisie au hasard. |
Réponse
| Représentation JSON |
|---|
{ "text": string, "disabled": boolean } |
| Champs | |
|---|---|
text |
Obligatoire. Texte avec lequel l'agent doit répondre. |
disabled |
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 |
Obligatoire. Nom de l'agent vers lequel transférer la conversation. L'agent doit se trouver dans la même application que l'agent actuel. Format : |
GenerativeAnswer
| Représentation JSON |
|---|
{ "prompt": string } |
| Champs | |
|---|---|
prompt |
Obligatoire. Requête à utiliser pour la réponse générative. |
Horodatage
| Représentation JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Champs | |
|---|---|
seconds |
Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z). |
nanos |
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. La valeur doit être comprise entre 0 et 999 999 999 inclus. |
FieldMask
| Représentation JSON |
|---|
{ "paths": [ string ] } |
| Champs | |
|---|---|
paths[] |
Ensemble des chemins du masque de champ. |
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 ( |
| Champs | |
|---|---|
name |
Identifiant. Identifiant unique du garde-fou. Format : |
displayName |
Obligatoire. Nom à afficher de la barrière de sécurité. |
description |
Facultatif. Description du garde-fou. |
enabled |
Facultatif. Indique si le garde-fou est activé. |
action |
Facultatif. Action à effectuer lorsque le garde-fou est déclenché. |
createTime |
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 : |
updateTime |
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 : |
etag |
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 |
Facultatif. Garde-fou qui interdit l'utilisation de certains contenus dans la conversation. |
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 |
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 |
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 |
Facultatif. Garde-fou qui bloque potentiellement la conversation en fonction du résultat de l'exécution du rappel. |
ContentFilter
| Représentation JSON |
|---|
{
"bannedContents": [
string
],
"bannedContentsInUserInput": [
string
],
"bannedContentsInAgentResponse": [
string
],
"matchType": enum ( |
| Champs | |
|---|---|
bannedContents[] |
Facultatif. Liste des expressions interdites. S'applique aux entrées utilisateur et aux réponses de l'agent. |
bannedContentsInUserInput[] |
Facultatif. Liste des expressions interdites. Ne s'applique qu'aux entrées utilisateur. |
bannedContentsInAgentResponse[] |
Facultatif. Liste des expressions interdites. Ne s'applique qu'aux réponses des agents. |
matchType |
Obligatoire. Type de correspondance pour le filtre de contenu. |
disregardDiacritics |
Facultatif. Si la valeur est "true", les signes diacritiques sont ignorés lors de la mise en correspondance. |
LlmPromptSecurity
| Représentation JSON |
|---|
{ "failOpen": boolean, // Union field |
| Champs | |
|---|---|
failOpen |
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), le garde-fou 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 |
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 |
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 |
Uniquement en sortie. Modèle de requête par défaut utilisé par le système. Ce champ est destiné à afficher l'invite que le système utilise par défaut. OUTPUT_ONLY. |
LlmPolicy
| Représentation JSON |
|---|
{ "maxConversationMessages": integer, "modelSettings": { object ( |
| Champs | |
|---|---|
maxConversationMessages |
Facultatif. Lorsque vous vérifiez cette règle, 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 |
Facultatif. Paramètres du modèle. |
prompt |
Obligatoire. Invite concernant les règles. |
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 |
failOpen |
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 |
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, // Union field |
| Champs | |
|---|---|
model |
Facultatif. Modèle LLM que l'agent doit utiliser. Si aucune valeur n'est définie, l'agent hérite du modèle de son agent parent. |
Champ d'union
|
|
temperature |
Facultatif. Si cette option 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 produisent des réponses plus créatives. |
ModelSafety
| Représentation JSON |
|---|
{
"safetySettings": [
{
object ( |
| Champs | |
|---|---|
safetySettings[] |
Obligatoire. Liste des paramètres de sécurité. |
SafetySetting
| Représentation JSON |
|---|
{ "category": enum ( |
| Champs | |
|---|---|
category |
Obligatoire. Catégorie de préjudice. |
threshold |
Obligatoire. Seuil de blocage de préjudice. |
CodeCallback
| Représentation JSON |
|---|
{ "beforeAgentCallback": { object ( |
| Champs | |
|---|---|
beforeAgentCallback |
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 |
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 |
Facultatif. Rappel à exécuter avant l'appel du modèle. Si le modèle est appelé plusieurs fois, 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 |
Facultatif. Rappel à exécuter après l'appel du modèle. Si le modèle est appelé plusieurs fois, 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 |
| Champs | |
|---|---|
description |
Facultatif. Description lisible du rappel. |
disabled |
Facultatif. Indique si le rappel est désactivé. Les rappels désactivés sont ignorés par l'agent. |
proactiveExecutionEnabled |
Facultatif. S'il est activé, 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 AVEC PRÉCAUTION. En règle générale, le rappel after_model_callback 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 |
Obligatoire. Code Python à exécuter pour le rappel. |
TriggerAction
| Représentation JSON |
|---|
{ // Union field |
| Champs | |
|---|---|
Champ d'union action. Action à effectuer. action ne peut être qu'un des éléments suivants : |
|
respondImmediately |
Facultatif. Répondez immédiatement avec une réponse préconfigurée. |
transferAgent |
Facultatif. transférer la conversation à un autre agent ; |
generativeAnswer |
Facultatif. Répondez avec une réponse générative. |
RespondImmediately
| Représentation JSON |
|---|
{
"responses": [
{
object ( |
| Champs | |
|---|---|
responses[] |
Obligatoire. Réponses standardisées parmi lesquelles l'agent peut choisir. La réponse est choisie au hasard. |
Réponse
| Représentation JSON |
|---|
{ "text": string, "disabled": boolean } |
| Champs | |
|---|---|
text |
Obligatoire. Texte avec lequel l'agent doit répondre. |
disabled |
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 |
Obligatoire. Nom de l'agent vers lequel transférer la conversation. L'agent doit se trouver dans la même application que l'agent actuel. Format : |
GenerativeAnswer
| Représentation JSON |
|---|
{ "prompt": string } |
| Champs | |
|---|---|
prompt |
Obligatoire. Requête à utiliser pour la réponse générative. |
Horodatage
| Représentation JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Champs | |
|---|---|
seconds |
Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z). |
nanos |
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. La valeur doit être comprise entre 0 et 999 999 999 inclus. |
Annotations d'outils
Indication destructive : ✅ | Indication d'idempotence : ❌ | Indication de lecture seule : ❌ | Indication Open World : ❌