MCP Tools Reference: ces.googleapis.com

כלי: create_guardrail

יוצרת אמצעי הגנה חדש באפליקציה הנתונה.

בדוגמת הקוד הבאה מוצג שימוש בפקודה curl כדי להפעיל את הכלי create_guardrail MCP.

בקשת 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
}'

סכימת הקלט

בקשת הודעה עבור AgentService.CreateGuardrail.

CreateGuardrailRequest

ייצוג ב-JSON
{
  "parent": string,
  "guardrailId": string,
  "guardrail": {
    object (Guardrail)
  }
}
שדות
parent

string

חובה. שם המשאב של האפליקציה שבה רוצים ליצור אמצעי בקרה.

guardrailId

string

זה שינוי אופציונלי. המזהה שבו יש להשתמש בשביל אמצעי הבקרה, שיהפוך לרכיב הסופי של שם המשאב של אמצעי הבקרה. אם לא מספקים מזהה, המערכת מקצה באופן אוטומטי מזהה ייחודי לגדר הבטיחות.

guardrail

object (Guardrail)

חובה. הגדרת האבטחה שרוצים ליצור.

שכבת הגנה

ייצוג ב-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.
}
שדות
name

string

מזהה. המזהה הייחודי של אמצעי הבקרה. פורמט: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

חובה. השם המוצג של אמצעי הבקרה.

description

string

זה שינוי אופציונלי. תיאור של אמצעי הבקרה.

enabled

boolean

זה שינוי אופציונלי. האם אמצעי הבקרה מופעל.

action

object (TriggerAction)

זה שינוי אופציונלי. הפעולה שתתבצע כשהגדרת הבטיחות תופעל.

createTime

string (Timestamp format)

פלט בלבד. חותמת הזמן שבה נוצר אמצעי הבקרה.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד העדכון האחרון של אמצעי הבקרה.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

etag

string

תג Etag שמשמש כדי לוודא שהאובייקט לא השתנה במהלך פעולת קריאה-שינוי-כתיבה. אם ה-etag ריק, העדכון יחליף את כל השינויים המקבילים.

שדה איחוד guardrail_type. סוג מעקה הבטיחות. הערך guardrail_type יכול להיות רק אחד מהבאים:
contentFilter

object (ContentFilter)

זה שינוי אופציונלי. אמצעי הגנה שאוסר על שימוש בתוכן מסוים בשיחה.

llmPromptSecurity

object (LlmPromptSecurity)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם ההנחיה נחשבת ללא בטוחה על סמך הסיווג של ה-LLM.

llmPolicy

object (LlmPolicy)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם התשובה של ה-LLM נחשבת להפרה של המדיניות על סמך הסיווג של ה-LLM.

modelSafety

object (ModelSafety)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם התשובה של ה-LLM נחשבת לא בטוחה על סמך הגדרות הבטיחות של המודל.

codeCallback

object (CodeCallback)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה על סמך התוצאה של הפעלת ה-callback.

supervisor

object (Supervisor)

זה שינוי אופציונלי. אמצעי הגנה שמופעלים בהתערבות של מפקח/ת.

ContentFilter

ייצוג ב-JSON
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
שדות
bannedContents[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה גם על קלט מהמשתמשים וגם על תשובות של סוכנים.

bannedContentsInUserInput[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה רק על קלט משתמש.

bannedContentsInAgentResponse[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה רק על תשובות של סוכנים.

matchType

enum (MatchType)

חובה. סוג ההתאמה של מסנן התוכן.

disregardDiacritics

boolean

זה שינוי אופציונלי. אם הערך הוא true, סימני הניקוד לא נלקחים בחשבון במהלך ההתאמה.

LlmPromptSecurity

ייצוג ב-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.
}
שדות
failOpen

boolean

זה שינוי אופציונלי. קובעת את ההתנהגות כשמנגנון ההגנה נתקל בשגיאה ב-LLM. ‫- אם הערך הוא True: המגבלה עוקפת את המגבלה. ‫- אם הערך הוא false (ברירת מחדל): אמצעי הבקרה מופעל או נחסם.

הערה: אם מסופקת מדיניות בהתאמה אישית, המערכת מתעלמת מהשדה הזה ומשתמשת בהגדרה fail_open של המדיניות.

שדה איחוד security_config. הגדרה של מצב הגדרות האבטחה. המשתמש צריך לבחור אחת מההגדרות הבאות. הערך security_config יכול להיות רק אחד מהבאים:
defaultSettings

object (DefaultSecuritySettings)

זה שינוי אופציונלי. שימוש בהגדרות האבטחה שמוגדרות כברירת מחדל במערכת. כדי לבחור במצב הזה, צריך לכלול בבקשה הודעה ריקה של default_settings. השרת ימלא את השדה default_prompt_template בתגובה.

customPolicy

object (LlmPolicy)

זה שינוי אופציונלי. כדי להגדיר את אמצעי הבטיחות, משתמשים ב-LlmPolicy שהוגדר על ידי המשתמש.

DefaultSecuritySettings

ייצוג ב-JSON
{
  "defaultPromptTemplate": string
}
שדות
defaultPromptTemplate

string

פלט בלבד. תבנית ברירת המחדל של ההנחיה שבה המערכת משתמשת. השדה הזה מיועד לתצוגה בלבד, כדי להראות למשתמש איזו הנחיה המערכת משתמשת כברירת מחדל. הוא OUTPUT_ONLY.

LlmPolicy

ייצוג ב-JSON
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
שדות
maxConversationMessages

integer

זה שינוי אופציונלי. כשבודקים את המדיניות הזו, צריך להתייחס ל-n ההודעות האחרונות בשיחה. אם לא מגדירים ערך ברירת מחדל, המערכת תשתמש בערך ברירת המחדל 10.

modelSettings

object (ModelSettings)

זה שינוי אופציונלי. הגדרות המודל.

prompt

string

חובה. פרומפט מדיניות.

policyScope

enum (PolicyScope)

חובה. הגדרת התנאים שבהם יתבצע אימות המדיניות במהלך השיחה. אם המדיניות מוגדרת לערך POLICY_SCOPE_UNSPECIFIED, היא תחול על קלט של משתמשים. כשמחילים את המדיניות על התגובה של הסוכן, נוסף זמן אחזור לפני שהסוכן יכול להגיב.

failOpen

boolean

זה שינוי אופציונלי. אם מתרחשת שגיאה במהלך בדיקת המדיניות, המערכת לא תפעיל את אמצעי ההגנה ותאפשר גישה.

allowShortUtterance

boolean

זה שינוי אופציונלי. כברירת מחדל, בדיקת המדיניות של LLM לא מתבצעת לגבי ביטויים קצרים. אם מפעילים את ההגדרה הזו, בדיקת המדיניות חלה על כל האמירות, כולל אלה שבדרך כלל היו נדלגות.

ModelSettings

ייצוג ב-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.
}
שדות
model

string

זה שינוי אופציונלי. מודל ה-LLM שהסוכן צריך להשתמש בו. אם לא מגדירים מודל, הסוכן יקבל בירושה את המודל מהסוכן הראשי שלו.

thinkingLevel

enum (ThinkingLevel)

זה שינוי אופציונלי. רמת ההעמקה של המודל.

שדה איחוד _temperature.

הערך _temperature יכול להיות רק אחד מהבאים:

temperature

number

זה שינוי אופציונלי. אם המדיניות הזו מוגדרת, רמת האקראיות הזו תשמש את מודל ה-LLM. רמת האקראיות קובעת את רמת הרנדומיזציה של התשובות של המודל. טמפרטורות נמוכות יותר מפיקות תשובות צפויות יותר. טמפרטורות גבוהות יותר יוצרות תשובות יצירתיות יותר.

ModelSafety

ייצוג ב-JSON
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
שדות
safetySettings[]

object (SafetySetting)

חובה. רשימה של הגדרות הבטיחות.

SafetySetting

ייצוג ב-JSON
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
שדות
category

enum (HarmCategory)

חובה. קטגוריית הנזק.

threshold

enum (HarmBlockThreshold)

חובה. סף החסימה של תוכן מזיק.

CodeCallback

ייצוג ב-JSON
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
שדות
beforeAgentCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע לפני הקריאה לסוכן. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

afterAgentCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע אחרי שהסוכן יתקשר. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

beforeModelCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע לפני הקריאה למודל. אם יש כמה קריאות למודל, הקריאה החוזרת תופעל כמה פעמים. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

afterModelCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת שתופעל אחרי הפעלת המודל. אם יש כמה קריאות למודל, הקריאה החוזרת תופעל כמה פעמים. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

התקשרות חזרה

ייצוג ב-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.
}
שדות
description

string

זה שינוי אופציונלי. תיאור קריא של הקריאה החוזרת.

disabled

boolean

זה שינוי אופציונלי. האם ההתקשרות חזרה מושבתת. הסוכן מתעלם מהגדרות של בקשות להחזרת שיחה שהושבתו.

proactiveExecutionEnabled

boolean

זה שינוי אופציונלי. אם האפשרות הזו מופעלת, הקריאה החוזרת מופעלת גם בפלט של מודלים ביניים. ההגדרה הזו משפיעה רק על קריאה חוזרת (callback) של מודל. הפעלה בזהירות. בדרך כלל, צריך להפעיל את הקריאה החוזרת של המודל רק אחרי שמקבלים את כל התשובות של המודל. הפעלת ביצוע פרואקטיבי עלולה להשפיע לרעה על עלות הביצוע ועל זמן האחזור, ולכן מומלץ להפעיל אותה רק במקרים נדירים.

שדה איחוד callback. הפונקציה לקריאה חוזרת שתופעל. הערך callback יכול להיות רק אחד מהבאים:
pythonCode

string

חובה. קוד ה-Python להרצה עבור הקריאה החוזרת.

מפקח/ת

ייצוג ב-JSON
{
  "type": enum (Type),
  "detectionMode": enum (DetectionMode)
}
שדות
type

enum (Type)

זה שינוי אופציונלי. סוג המפקח.

detectionMode

enum (DetectionMode)

זה שינוי אופציונלי. מצב הזיהוי של המפקח.

TriggerAction

ייצוג ב-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.
}
שדות
שדה איחוד action. הפעולה שצריך לבצע. הערך action יכול להיות רק אחד מהבאים:
respondImmediately

object (RespondImmediately)

זה שינוי אופציונלי. לשלוח מיד תשובה שהוגדרה מראש.

transferAgent

object (TransferAgent)

זה שינוי אופציונלי. להעביר את השיחה לנציג אחר.

generativeAnswer

object (GenerativeAnswer)

זה שינוי אופציונלי. לשלוח תשובה גנרטיבית.

RespondImmediately

ייצוג ב-JSON
{
  "responses": [
    {
      object (Response)
    }
  ]
}
שדות
responses[]

object (Response)

חובה. התשובות המוכנות מראש שהסוכן יכול לבחור מתוכן. התשובה נבחרת באופן אקראי.

תשובה

ייצוג ב-JSON
{
  "text": string,
  "disabled": boolean
}
שדות
text

string

חובה. הטקסט שהסוכן צריך להגיב עליו.

disabled

boolean

זה שינוי אופציונלי. האם התשובה מושבתת. התשובות המושבתות לא נמצאות בשימוש של הסוכן.

TransferAgent

ייצוג ב-JSON
{
  "agent": string
}
שדות
agent

string

חובה. השם של הסוכן שאליו רוצים להעביר את השיחה. הסוכן צריך להיות באותו האפליקציה שבה נמצא הסוכן הנוכחי. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

ייצוג ב-JSON
{
  "prompt": string
}
שדות
prompt

string

חובה. הפרומפט שמשמש ליצירת התשובה.

חותמת הזמן

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ‏1970-01-01T00:00:00Z. הערך צריך להיות בין ‎-62135596800 ל-253402300799 כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z).

nanos

integer

שבריר לא שלילי של שנייה ברזולוציית ננו-שנייה. השדה הזה מייצג את החלק של הננו-שנייה במשך הזמן, ולא מהווה חלופה לשניות. ערכים שליליים של שניות עם שברים עדיין צריכים לכלול ערכים חיוביים של ננו-שניות שסופרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל.

MatchType

סוג ההתאמה של מסנן התוכן.

טיפוסים בני מנייה (enum)
MATCH_TYPE_UNSPECIFIED לא צוין סוג התאמה.
SIMPLE_STRING_MATCH התוכן מותאם למחרוזות משנה תו אחר תו.
WORD_BOUNDARY_STRING_MATCH התוכן יתאים רק אם התבנית שנמצאה בטקסט מוקפת בתווים שמפרידים בין מילים. ביטויים אסורים יכולים להכיל גם תווי הפרדה בין מילים.
REGEXP_MATCH התוכן מותאם באמצעות תחביר של ביטויים רגולריים.

ThinkingLevel

הגדרת רמת החשיבה של המודל.

טיפוסים בני מנייה (enum)
THINKING_LEVEL_UNSPECIFIED לא צוינה רמת ההעמקה.
DEFAULT רמת ההעמקה שמוגדרת כברירת מחדל.
LOW רמת העמקה נמוכה.
MEDIUM רמת העמקה בינונית.
HIGH רמת העמקה גבוהה.

PolicyScope

הגדרת התנאים שבהם יתבצע אימות המדיניות במהלך השיחה.

טיפוסים בני מנייה (enum)
POLICY_SCOPE_UNSPECIFIED לא צוין היקף המדיניות.
USER_QUERY בדיקת המדיניות מופעלת כשמשתמש מזין קלט.
AGENT_RESPONSE בדיקת המדיניות מופעלת בתגובת הנציג. החלת היקף המדיניות הזה תוביל לזמן אחזור נוסף לפני שהסוכן יוכל להגיב.
USER_QUERY_AND_AGENT_RESPONSE בדיקת המדיניות מופעלת גם כשמשתמש מזין קלט של משתמשים וגם כשסוכן מגיב. החלת היקף המדיניות הזה תוביל לזמן אחזור נוסף לפני שהסוכן יוכל להגיב.

HarmCategory

קטגוריית הנזק.

טיפוסים בני מנייה (enum)
HARM_CATEGORY_UNSPECIFIED לא צוינה קטגוריית הנזק.
HARM_CATEGORY_HATE_SPEECH קטגוריית הנזק היא דברי שטנה.
HARM_CATEGORY_DANGEROUS_CONTENT הקטגוריה של הנזק היא תוכן מסוכן.
HARM_CATEGORY_HARASSMENT קטגוריית הנזק היא הטרדה.
HARM_CATEGORY_SEXUALLY_EXPLICIT קטגוריית הנזק היא תוכן מיני בוטה.
HARM_CATEGORY_PROFANITY קטגוריית הנזק היא שפה גסה.
HARM_CATEGORY_TOXIC קטגוריית הנזק היא רעילה.

HarmBlockThreshold

רמות סף לחסימה שמבוססות על הסתברות.

טיפוסים בני מנייה (enum)
HARM_BLOCK_THRESHOLD_UNSPECIFIED סף חסימה לא מוגדר של תוכן מזיק.
BLOCK_LOW_AND_ABOVE חסימה של סף נמוך ומעלה (כלומר, חסימה של יותר תוכן).
BLOCK_MEDIUM_AND_ABOVE חסימה של סף בינוני ומעלה.
BLOCK_ONLY_HIGH חסימה רק של סף גבוה (כלומר, חסימה פחותה).
BLOCK_NONE לא לחסום אף אחד.
OFF משביתים את מסנן הבטיחות.

סוג

סוג המפקח.

טיפוסים בני מנייה (enum)
TYPE_UNSPECIFIED לא צוין סוג.
INVALID_TEXT סוג הבעיה של הטקסט לא תקין.
LANGUAGE_SHIFT סוג הבעיה של שינוי השפה.
SPEAKER_SHIFT סוג הבעיה של שינוי הדובר.
AUDIO_MISMATCH סוג הבעיה: חוסר התאמה באודיו.
MISSING_TOOL_CALL לא צוין סוג הבעיה של הפעלת הכלי.
CUSTOM סוג בעיה מותאם אישית.
CHOPPY_AUDIO סוג הבעיה: אודיו קטוע.
PROFANITY סוג הבעיה: שפה גסה של הסוכן.

DetectionMode

מצב הזיהוי של המפקח.

טיפוסים בני מנייה (enum)
DETECTION_MODE_UNSPECIFIED מצב הזיהוי לא מוגדר. ברירת המחדל היא NON_BLOCKING.
NON_BLOCKING מצב זיהוי לא חוסם. התגובה לא נחסמת בזמן שהזיהוי של המפקח מתבצע.
BLOCKING מצב זיהוי חסימות. התשובה נחסמת בזמן שהזיהוי של המפקח מתבצע.

סכימת הפלט

הגדרת אמצעי בקרה כוללת רשימה של בדיקות ואיזונים כדי לשמור על בטיחות ועל אבטחה של הסוכנים.

שכבת הגנה

ייצוג ב-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.
}
שדות
name

string

מזהה. המזהה הייחודי של אמצעי הבקרה. פורמט: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

חובה. השם המוצג של אמצעי הבקרה.

description

string

זה שינוי אופציונלי. תיאור של אמצעי הבקרה.

enabled

boolean

זה שינוי אופציונלי. האם אמצעי הבקרה מופעל.

action

object (TriggerAction)

זה שינוי אופציונלי. הפעולה שתתבצע כשהגדרת הבטיחות תופעל.

createTime

string (Timestamp format)

פלט בלבד. חותמת הזמן שבה נוצר אמצעי הבקרה.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

פלט בלבד. חותמת זמן של מועד העדכון האחרון של אמצעי הבקרה.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z עם 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

etag

string

תג Etag שמשמש כדי לוודא שהאובייקט לא השתנה במהלך פעולת קריאה-שינוי-כתיבה. אם ה-etag ריק, העדכון יחליף את כל השינויים המקבילים.

שדה איחוד guardrail_type. סוג מעקה הבטיחות. הערך guardrail_type יכול להיות רק אחד מהבאים:
contentFilter

object (ContentFilter)

זה שינוי אופציונלי. אמצעי הגנה שאוסר על שימוש בתוכן מסוים בשיחה.

llmPromptSecurity

object (LlmPromptSecurity)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם ההנחיה נחשבת ללא בטוחה על סמך הסיווג של ה-LLM.

llmPolicy

object (LlmPolicy)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם התשובה של ה-LLM נחשבת להפרה של המדיניות על סמך הסיווג של ה-LLM.

modelSafety

object (ModelSafety)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה אם התשובה של ה-LLM נחשבת לא בטוחה על סמך הגדרות הבטיחות של המודל.

codeCallback

object (CodeCallback)

זה שינוי אופציונלי. אמצעי הגנה שחוסם את השיחה על סמך התוצאה של הפעלת ה-callback.

supervisor

object (Supervisor)

זה שינוי אופציונלי. אמצעי הגנה שמופעלים בהתערבות של מפקח/ת.

ContentFilter

ייצוג ב-JSON
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
שדות
bannedContents[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה גם על קלט מהמשתמשים וגם על תשובות של סוכנים.

bannedContentsInUserInput[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה רק על קלט משתמש.

bannedContentsInAgentResponse[]

string

זה שינוי אופציונלי. רשימה של ביטויים אסורים. ההגדרה חלה רק על תשובות של סוכנים.

matchType

enum (MatchType)

חובה. סוג ההתאמה של מסנן התוכן.

disregardDiacritics

boolean

זה שינוי אופציונלי. אם הערך הוא true, סימני הניקוד לא נלקחים בחשבון במהלך ההתאמה.

LlmPromptSecurity

ייצוג ב-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.
}
שדות
failOpen

boolean

זה שינוי אופציונלי. קובעת את ההתנהגות כשמנגנון ההגנה נתקל בשגיאה ב-LLM. ‫- אם הערך הוא True: המגבלה עוקפת את המגבלה. ‫- אם הערך הוא false (ברירת מחדל): אמצעי הבקרה מופעל או נחסם.

הערה: אם מסופקת מדיניות בהתאמה אישית, המערכת מתעלמת מהשדה הזה ומשתמשת בהגדרה fail_open של המדיניות.

שדה איחוד security_config. הגדרה של מצב הגדרות האבטחה. המשתמש צריך לבחור אחת מההגדרות הבאות. הערך security_config יכול להיות רק אחד מהבאים:
defaultSettings

object (DefaultSecuritySettings)

זה שינוי אופציונלי. שימוש בהגדרות האבטחה שמוגדרות כברירת מחדל במערכת. כדי לבחור במצב הזה, צריך לכלול בבקשה הודעה ריקה של default_settings. השרת ימלא את השדה default_prompt_template בתגובה.

customPolicy

object (LlmPolicy)

זה שינוי אופציונלי. כדי להגדיר את אמצעי הבטיחות, משתמשים ב-LlmPolicy שהוגדר על ידי המשתמש.

DefaultSecuritySettings

ייצוג ב-JSON
{
  "defaultPromptTemplate": string
}
שדות
defaultPromptTemplate

string

פלט בלבד. תבנית ברירת המחדל של ההנחיה שבה המערכת משתמשת. השדה הזה מיועד לתצוגה בלבד, כדי להראות למשתמש איזו הנחיה המערכת משתמשת כברירת מחדל. הוא OUTPUT_ONLY.

LlmPolicy

ייצוג ב-JSON
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
שדות
maxConversationMessages

integer

זה שינוי אופציונלי. כשבודקים את המדיניות הזו, צריך להתייחס ל-n ההודעות האחרונות בשיחה. אם לא מגדירים ערך ברירת מחדל, המערכת תשתמש בערך ברירת המחדל 10.

modelSettings

object (ModelSettings)

זה שינוי אופציונלי. הגדרות המודל.

prompt

string

חובה. פרומפט מדיניות.

policyScope

enum (PolicyScope)

חובה. הגדרת התנאים שבהם יתבצע אימות המדיניות במהלך השיחה. אם המדיניות מוגדרת לערך POLICY_SCOPE_UNSPECIFIED, היא תחול על קלט של משתמשים. כשמחילים את המדיניות על התגובה של הסוכן, נוסף זמן אחזור לפני שהסוכן יכול להגיב.

failOpen

boolean

זה שינוי אופציונלי. אם מתרחשת שגיאה במהלך בדיקת המדיניות, המערכת לא תפעיל את אמצעי ההגנה ותאפשר גישה.

allowShortUtterance

boolean

זה שינוי אופציונלי. כברירת מחדל, בדיקת המדיניות של LLM לא מתבצעת לגבי ביטויים קצרים. אם מפעילים את ההגדרה הזו, בדיקת המדיניות חלה על כל האמירות, כולל אלה שבדרך כלל היו נדלגות.

ModelSettings

ייצוג ב-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.
}
שדות
model

string

זה שינוי אופציונלי. מודל ה-LLM שהסוכן צריך להשתמש בו. אם לא מגדירים מודל, הסוכן יקבל בירושה את המודל מהסוכן הראשי שלו.

thinkingLevel

enum (ThinkingLevel)

זה שינוי אופציונלי. רמת ההעמקה של המודל.

שדה איחוד _temperature.

הערך _temperature יכול להיות רק אחד מהבאים:

temperature

number

זה שינוי אופציונלי. אם המדיניות הזו מוגדרת, רמת האקראיות הזו תשמש את מודל ה-LLM. רמת האקראיות קובעת את רמת הרנדומיזציה של התשובות של המודל. טמפרטורות נמוכות יותר מפיקות תשובות צפויות יותר. טמפרטורות גבוהות יותר יוצרות תשובות יצירתיות יותר.

ModelSafety

ייצוג ב-JSON
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
שדות
safetySettings[]

object (SafetySetting)

חובה. רשימה של הגדרות הבטיחות.

SafetySetting

ייצוג ב-JSON
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
שדות
category

enum (HarmCategory)

חובה. קטגוריית הנזק.

threshold

enum (HarmBlockThreshold)

חובה. סף החסימה של תוכן מזיק.

CodeCallback

ייצוג ב-JSON
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
שדות
beforeAgentCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע לפני הקריאה לסוכן. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

afterAgentCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע אחרי שהסוכן יתקשר. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

beforeModelCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת לביצוע לפני הקריאה למודל. אם יש כמה קריאות למודל, הקריאה החוזרת תופעל כמה פעמים. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

afterModelCallback

object (Callback)

זה שינוי אופציונלי. הקריאה החוזרת שתופעל אחרי הפעלת המודל. אם יש כמה קריאות למודל, הקריאה החוזרת תופעל כמה פעמים. כל פונקציית קריאה חוזרת צריכה להחזיר מבנה (למשל, dict או אובייקט) שמכיל לפחות: ‫- 'decision': הערך 'OK' או 'TRIGGER'. ‫- reason: מחרוזת שמסבירה את ההחלטה. החלטה מסוג TRIGGER (הפעלה) עשויה להפסיק את העיבוד הנוסף.

התקשרות חזרה

ייצוג ב-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.
}
שדות
description

string

זה שינוי אופציונלי. תיאור קריא של הקריאה החוזרת.

disabled

boolean

זה שינוי אופציונלי. האם ההתקשרות חזרה מושבתת. הסוכן מתעלם מהגדרות של בקשות להחזרת שיחה שהושבתו.

proactiveExecutionEnabled

boolean

זה שינוי אופציונלי. אם האפשרות הזו מופעלת, הקריאה החוזרת מופעלת גם בפלט של מודלים ביניים. ההגדרה הזו משפיעה רק על קריאה חוזרת (callback) של מודל. הפעלה בזהירות. בדרך כלל, צריך להפעיל את הקריאה החוזרת של המודל רק אחרי שמקבלים את כל התשובות של המודל. הפעלת ביצוע פרואקטיבי עלולה להשפיע לרעה על עלות הביצוע ועל זמן האחזור, ולכן מומלץ להפעיל אותה רק במקרים נדירים.

שדה איחוד callback. הפונקציה לקריאה חוזרת שתופעל. הערך callback יכול להיות רק אחד מהבאים:
pythonCode

string

חובה. קוד ה-Python להרצה עבור הקריאה החוזרת.

מפקח/ת

ייצוג ב-JSON
{
  "type": enum (Type),
  "detectionMode": enum (DetectionMode)
}
שדות
type

enum (Type)

זה שינוי אופציונלי. סוג המפקח.

detectionMode

enum (DetectionMode)

זה שינוי אופציונלי. מצב הזיהוי של המפקח.

TriggerAction

ייצוג ב-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.
}
שדות
שדה איחוד action. הפעולה שצריך לבצע. הערך action יכול להיות רק אחד מהבאים:
respondImmediately

object (RespondImmediately)

זה שינוי אופציונלי. לשלוח מיד תשובה שהוגדרה מראש.

transferAgent

object (TransferAgent)

זה שינוי אופציונלי. להעביר את השיחה לנציג אחר.

generativeAnswer

object (GenerativeAnswer)

זה שינוי אופציונלי. לשלוח תשובה גנרטיבית.

RespondImmediately

ייצוג ב-JSON
{
  "responses": [
    {
      object (Response)
    }
  ]
}
שדות
responses[]

object (Response)

חובה. התשובות המוכנות מראש שהסוכן יכול לבחור מתוכן. התשובה נבחרת באופן אקראי.

תשובה

ייצוג ב-JSON
{
  "text": string,
  "disabled": boolean
}
שדות
text

string

חובה. הטקסט שהסוכן צריך להגיב עליו.

disabled

boolean

זה שינוי אופציונלי. האם התשובה מושבתת. התשובות המושבתות לא נמצאות בשימוש של הסוכן.

TransferAgent

ייצוג ב-JSON
{
  "agent": string
}
שדות
agent

string

חובה. השם של הסוכן שאליו רוצים להעביר את השיחה. הסוכן צריך להיות באותו האפליקציה שבה נמצא הסוכן הנוכחי. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

ייצוג ב-JSON
{
  "prompt": string
}
שדות
prompt

string

חובה. הפרומפט שמשמש ליצירת התשובה.

חותמת הזמן

ייצוג ב-JSON
{
  "seconds": string,
  "nanos": integer
}
שדות
seconds

string (int64 format)

מייצג את השניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) ‏1970-01-01T00:00:00Z. הערך צריך להיות בין ‎-62135596800 ל-253402300799 כולל (שמתאים לטווח 0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z).

nanos

integer

שבריר לא שלילי של שנייה ברזולוציית ננו-שנייה. השדה הזה מייצג את החלק של הננו-שנייה במשך הזמן, ולא מהווה חלופה לשניות. ערכים שליליים של שניות עם שברים עדיין צריכים לכלול ערכים חיוביים של ננו-שניות שסופרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל.

MatchType

סוג ההתאמה של מסנן התוכן.

טיפוסים בני מנייה (enum)
MATCH_TYPE_UNSPECIFIED לא צוין סוג התאמה.
SIMPLE_STRING_MATCH התוכן מותאם למחרוזות משנה תו אחר תו.
WORD_BOUNDARY_STRING_MATCH התוכן יתאים רק אם התבנית שנמצאה בטקסט מוקפת בתווים שמפרידים בין מילים. ביטויים אסורים יכולים להכיל גם תווי הפרדה בין מילים.
REGEXP_MATCH התוכן מותאם באמצעות תחביר של ביטויים רגולריים.

ThinkingLevel

הגדרת רמת החשיבה של המודל.

טיפוסים בני מנייה (enum)
THINKING_LEVEL_UNSPECIFIED לא צוינה רמת ההעמקה.
DEFAULT רמת ההעמקה שמוגדרת כברירת מחדל.
LOW רמת העמקה נמוכה.
MEDIUM רמת העמקה בינונית.
HIGH רמת העמקה גבוהה.

PolicyScope

הגדרת התנאים שבהם יתבצע אימות המדיניות במהלך השיחה.

טיפוסים בני מנייה (enum)
POLICY_SCOPE_UNSPECIFIED לא צוין היקף המדיניות.
USER_QUERY בדיקת המדיניות מופעלת כשמשתמש מזין קלט.
AGENT_RESPONSE בדיקת המדיניות מופעלת בתגובת הנציג. החלת היקף המדיניות הזה תוביל לזמן אחזור נוסף לפני שהסוכן יוכל להגיב.
USER_QUERY_AND_AGENT_RESPONSE בדיקת המדיניות מופעלת גם כשמשתמש מזין קלט של משתמשים וגם כשסוכן מגיב. החלת היקף המדיניות הזה תוביל לזמן אחזור נוסף לפני שהסוכן יוכל להגיב.

HarmCategory

קטגוריית הנזק.

טיפוסים בני מנייה (enum)
HARM_CATEGORY_UNSPECIFIED לא צוינה קטגוריית הנזק.
HARM_CATEGORY_HATE_SPEECH קטגוריית הנזק היא דברי שטנה.
HARM_CATEGORY_DANGEROUS_CONTENT הקטגוריה של הנזק היא תוכן מסוכן.
HARM_CATEGORY_HARASSMENT קטגוריית הנזק היא הטרדה.
HARM_CATEGORY_SEXUALLY_EXPLICIT קטגוריית הנזק היא תוכן מיני בוטה.
HARM_CATEGORY_PROFANITY קטגוריית הנזק היא שפה גסה.
HARM_CATEGORY_TOXIC קטגוריית הנזק היא רעילה.

HarmBlockThreshold

רמות סף לחסימה שמבוססות על הסתברות.

טיפוסים בני מנייה (enum)
HARM_BLOCK_THRESHOLD_UNSPECIFIED סף חסימה לא מוגדר של תוכן מזיק.
BLOCK_LOW_AND_ABOVE חסימה של סף נמוך ומעלה (כלומר, חסימה של יותר תוכן).
BLOCK_MEDIUM_AND_ABOVE חסימה של סף בינוני ומעלה.
BLOCK_ONLY_HIGH חסימה רק של סף גבוה (כלומר, חסימה פחותה).
BLOCK_NONE לא לחסום אף אחד.
OFF משביתים את מסנן הבטיחות.

סוג

סוג המפקח.

טיפוסים בני מנייה (enum)
TYPE_UNSPECIFIED לא צוין סוג.
INVALID_TEXT סוג הבעיה של הטקסט לא תקין.
LANGUAGE_SHIFT סוג הבעיה של שינוי השפה.
SPEAKER_SHIFT סוג הבעיה של שינוי הדובר.
AUDIO_MISMATCH סוג הבעיה: חוסר התאמה באודיו.
MISSING_TOOL_CALL לא צוין סוג הבעיה של הפעלת הכלי.
CUSTOM סוג בעיה מותאם אישית.
CHOPPY_AUDIO סוג הבעיה: אודיו קטוע.
PROFANITY סוג הבעיה: שפה גסה של הסוכן.

DetectionMode

מצב הזיהוי של המפקח.

טיפוסים בני מנייה (enum)
DETECTION_MODE_UNSPECIFIED מצב הזיהוי לא מוגדר. ברירת המחדל היא NON_BLOCKING.
NON_BLOCKING מצב זיהוי לא חוסם. התגובה לא נחסמת בזמן שהזיהוי של המפקח מתבצע.
BLOCKING מצב זיהוי חסימות. התשובה נחסמת בזמן שהזיהוי של המפקח מתבצע.

הערות בכלי

הערות על כלי נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כאל רמזים לא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש הנחיה לאישור.

בנוסף למחרוזת הכותרת, מוגדרים הרמזים הבוליאניים הבאים:

  • ‫readOnlyHint: אם הערך הוא true, הכלי לא משנה את הסביבה שלו. ברירת מחדל: false.
  • ‫destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא false, הכלי יכול לבצע רק פעולות של הוספה. ברירת מחדל: true.
  • ‫idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת מחדל: false.
  • ‫openWorldHint: אם הערך הוא true, הכלי יכול ליצור אינטראקציה עם 'עולם פתוח' של ישויות חיצוניות. אם הערך הוא false, הכלי יכול ליצור אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי לחיפוש באינטרנט יהיה עולם פתוח, אבל כלי לזיכרון לא יהיה עולם פתוח.

רמז הרסני: ✅ | רמז אידמפוטנטי: ❌ | רמז לקריאה בלבד: ❌ | רמז לעולם פתוח: ❌