MCP Tools Reference: ces.googleapis.com

כלי: create_agent

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

בדוגמת הקוד הבאה מוצג שימוש בפקודה curl כדי להפעיל את הכלי create_agent 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_agent",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

סכימת הקלט

CreateAgentRequest

ייצוג ב-JSON
{
  "parent": string,
  "agentId": string,
  "agent": {
    object (Agent)
  }
}
שדות
parent

string

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

agentId

string

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

agent

object (Agent)

חובה. הסוכן שרוצים ליצור.

סוכן

ייצוג ב-JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "modelSettings": {
    object (ModelSettings)
  },
  "instruction": string,
  "tools": [
    string
  ],
  "childAgents": [
    string
  ],
  "beforeAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "guardrails": [
    string
  ],
  "etag": string,
  "toolsets": [
    {
      object (AgentToolset)
    }
  ],
  "generatedSummary": string,
  "transferRules": [
    {
      object (TransferRule)
    }
  ],
  "validationErrors": [
    string
  ],

  // Union field agent_type can be only one of the following:
  "llmAgent": {
    object (LlmAgent)
  },
  "remoteDialogflowAgent": {
    object (RemoteDialogflowAgent)
  },
  "remoteA2aAgent": {
    object (RemoteA2aAgent)
  }
  // End of list of possible types for union field agent_type.
}
שדות
name

string

מזהה. המזהה הייחודי של הסוכן. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

חובה. השם המוצג של הנציג.

description

string

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

modelSettings

object (ModelSettings)

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

instruction

string

זה שינוי אופציונלי. הוראות למודל שפה גדול (LLM) שמנחות את התנהגות הסוכן.

tools[]

string

זה שינוי אופציונלי. רשימת הכלים הזמינים לסוכן. פורמט: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

childAgents[]

string

זה שינוי אופציונלי. רשימה של סוכני ילדים בעץ הסוכנים. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

beforeAgentCallbacks[]

object (Callback)

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

afterAgentCallbacks[]

object (Callback)

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

beforeModelCallbacks[]

object (Callback)

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

afterModelCallbacks[]

object (Callback)

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

beforeToolCallbacks[]

object (Callback)

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

afterToolCallbacks[]

object (Callback)

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

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".

guardrails[]

string

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

etag

string

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

toolsets[]

object (AgentToolset)

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

generatedSummary

string

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

transferRules[]

object (TransferRule)

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

validationErrors[]

string

פלט בלבד. שגיאות או הגדרות שגויות בסוכן שעלולות להשפיע על איכות הסוכן.

שדה איחוד agent_type. סוג הסוכן. הערך agent_type יכול להיות רק אחד מהבאים:
llmAgent

object (LlmAgent)

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

remoteDialogflowAgent

object (RemoteDialogflowAgent)

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

הערה: אם סוכן Dialogflow נמצא בפרויקט אחר מהאפליקציה, צריך להעניק את ההרשאה roles/dialogflow.client לסוכן שירות ה-CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

remoteA2aAgent

object (RemoteA2aAgent)

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

RemoteDialogflowAgent

ייצוג ב-JSON
{
  "agent": string,
  "flowId": string,
  "environmentId": string,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "respectResponseInterruptionSettings": boolean,
  "languageCodeVariable": string
}
שדות
agent

string

חובה. שם משאב הסוכן ב-Dialogflow. פורמט: projects/{project}/locations/{location}/agents/{agent}

flowId

string

זה שינוי אופציונלי. מזהה ה-Flow של ה-Flow בסוכן Dialogflow.

environmentId

string

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

inputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני האפליקציה לשמות פרמטרים של סשן Dialogflow שיישלחו לסוכן Dialogflow כקלט.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

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

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

respectResponseInterruptionSettings

boolean

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

  • אם הערך הוא false: כל הודעות התגובה מהנציג ב-Dialogflow פועלות לפי הגדרות ההתפרצות ברמת האפליקציה.
  • אם הערך הוא true: אפשר יהיה לקטוע רק הודעות תגובה עם allow_playback_interruption שמוגדר כ-true. כל ההודעות האחרות יפעלו לפי הגדרות ההשתלטות ברמת האפליקציה.
languageCodeVariable

string

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

InputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

OutputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

RemoteA2aAgent

ייצוג ב-JSON
{
  "a2aConfig": {
    object (RemoteA2aConfig)
  }
}
שדות
a2aConfig

object (RemoteA2aConfig)

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

RemoteA2aConfig

ייצוג ב-JSON
{
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "streamingEnabled": boolean,
  "contextId": string,

  // Union field agent_spec can be only one of the following:
  "agentCard": {
    object (AgentCard)
  },
  "agentRegistry": string
  // End of list of possible types for union field agent_spec.
}
שדות
apiAuthentication

object (ApiAuthentication)

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

inputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני הקלט של סוכן מרוחק לשמות משתנים של GECX.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני הפלט של הסוכן המרוחק לשמות משתנים של GECX.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

streamingEnabled

boolean

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

contextId

string

זה שינוי אופציונלי. אם השדה לא ריק, האינטראקציות עם סוכן A2A מרוחק ישתמשו במזהה ההקשר הזה. השדה context_id יכול להתייחס למשתנה של סשן כמו $context.variables.order_agent_session_id.

שדה איחוד agent_spec. מפרט של הסוכן המרוחק. הערך agent_spec יכול להיות רק אחד מהבאים:
agentCard

object (AgentCard)

זה שינוי אופציונלי. כרטיס הסוכן המלא מוגדר בשורה.

agentRegistry

string

זה שינוי אופציונלי. הפניה לסוכן ב-Agent Registry. פורמט: projects/{project}/locations/{location}/agents/{agent}

AgentCard

ייצוג ב-JSON
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
שדות
name

string

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

description

string

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

supportedInterfaces[]

object (AgentInterface)

חובה. רשימה מסודרת של ממשקים נתמכים. עדיף להשתמש ברשומה הראשונה.

version

string

חובה. גרסת הסוכן.

skills[]

object (AgentSkill)

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

AgentInterface

ייצוג ב-JSON
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
שדות
url

string

חובה. כתובת ה-URL שבה הממשק הזה זמין. זו צריכה להיות כתובת URL תקינה מסוג HTTPS בייצור. דוגמה: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a"

protocolBinding

string

חובה. הקישור לפרוטוקול שנתמך בכתובת ה-URL הזו. זהו מחרוזת של טופס פתוח, שאפשר להרחיב אותה בקלות לקישורי פרוטוקול אחרים. הסכימות המרכזיות שנתמכות באופן רשמי הן JSONRPC, ‏ GRPC ו-HTTP+JSON.

tenant

string

מזהה הדייר שישמש בבקשה כשמתקשרים לסוכן.

protocolVersion

string

חובה. הגרסה של פרוטוקול A2A שהממשק הזה חושף. מומלץ להשתמש בגרסה המשנית הנתמכת האחרונה לכל גרסה ראשית. דוגמאות: ‎0.3,‏ ‎1.0

AgentSkill

ייצוג ב-JSON
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
שדות
id

string

חובה. מזהה ייחודי של מיומנות הסוכן.

name

string

חובה. שם המיומנות שקריא לבני אדם.

description

string

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

tags[]

string

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

examples[]

string

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

inputModes[]

string

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

outputModes[]

string

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

ApiAuthentication

ייצוג ב-JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
apiKeyConfig

object (ApiKeyConfig)

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

oauthConfig

object (OAuthConfig)

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

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

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

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

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

bearerTokenConfig

object (BearerTokenConfig)

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

ApiKeyConfig

ייצוג ב-JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
שדות
keyName

string

חובה. שם הפרמטר או שם הכותרת של מפתח ה-API. למשל, אם בקשת ה-API היא "https://example.com/act?X-Api-Key=", שם הפרמטר יהיה "X-Api-Key".

apiKeySecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן מפתח ה-API. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

חובה. מיקום המפתח בבקשה.

OAuthConfig

ייצוג ב-JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
שדות
oauthGrantType

enum (OauthGrantType)

חובה. סוגי הרשאות OAuth.

clientId

string

חובה. מזהה הלקוח מספק OAuth.

clientSecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן סוד הלקוח. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

חובה. נקודת הקצה של האסימון בספק OAuth להחלפה באסימון גישה.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק.

ServiceAccountAuthConfig

ייצוג ב-JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
שדות
serviceAccount

string

חובה. כתובת האימייל של חשבון השירות שמשמש לאימות. מערכת CES משתמשת בחשבון השירות הזה כדי להחליף אסימון גישה, ואז אסימון הגישה נשלח בכותרת Authorization של הבקשה.

לחשבון השירות צריך להיות מוקצה התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק. אם לא מציינים היקף, המערכת משתמשת בהיקף ברירת המחדל https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

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

string

חובה. טוקן למוכ"ז. חייב להיות בפורמט $context.variables.<name_of_variable>.

InputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

OutputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

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. רמת האקראיות קובעת את רמת הרנדומיזציה של התשובות של המודל. טמפרטורות נמוכות יותר מפיקות תשובות צפויות יותר. טמפרטורות גבוהות יותר יוצרות תשובות יצירתיות יותר.

התקשרות חזרה

ייצוג ב-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
{
  "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, כולל.

AgentToolset

ייצוג ב-JSON
{
  "toolset": string,
  "toolIds": [
    string
  ]
}
שדות
toolset

string

חובה. שם המשאב של ערכת הכלים. פורמט: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolIds[]

string

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

TransferRule

ייצוג ב-JSON
{
  "childAgent": string,
  "direction": enum (Direction),

  // Union field rule_type can be only one of the following:
  "deterministicTransfer": {
    object (DeterministicTransfer)
  },
  "disablePlannerTransfer": {
    object (DisablePlannerTransfer)
  }
  // End of list of possible types for union field rule_type.
}
שדות
childAgent

string

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

direction

enum (Direction)

חובה. כיוון ההעברה.

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

object (DeterministicTransfer)

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

disablePlannerTransfer

object (DisablePlannerTransfer)

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

DeterministicTransfer

ייצוג ב-JSON
{

  // Union field condition_type can be only one of the following:
  "expressionCondition": {
    object (ExpressionCondition)
  },
  "pythonCodeCondition": {
    object (PythonCodeCondition)
  }
  // End of list of possible types for union field condition_type.
}
שדות
שדה איחוד condition_type. התנאי להערכה. הערך condition_type יכול להיות רק אחד מהבאים:
expressionCondition

object (ExpressionCondition)

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

pythonCodeCondition

object (PythonCodeCondition)

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

ExpressionCondition

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

string

חובה. ייצוג המחרוזת של התנאי cloud.api.Expression.

PythonCodeCondition

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

string

חובה. קוד Python להרצה.

DisablePlannerTransfer

ייצוג ב-JSON
{
  "expressionCondition": {
    object (ExpressionCondition)
  }
}
שדות
expressionCondition

object (ExpressionCondition)

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

RequestLocation

המיקום של מפתח ה-API בבקשה.

טיפוסים בני מנייה (enum)
REQUEST_LOCATION_UNSPECIFIED לא צוין. אין להשתמש בערך הזה.
HEADER מייצג את המפתח בכותרת ה-HTTP.
QUERY_STRING מייצג את המפתח במחרוזת של שאילתה.

OauthGrantType

סוגי הרשאות OAuth. יש תמיכה רק ב-client credential grant.

טיפוסים בני מנייה (enum)
OAUTH_GRANT_TYPE_UNSPECIFIED לא צוין. ברירת המחדל היא CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL מייצג את תהליך פרטי הכניסה של הלקוח.

ThinkingLevel

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

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

כיוון

כיוון ההעברה.

טיפוסים בני מנייה (enum)
DIRECTION_UNSPECIFIED כיוון לא מוגדר.
PARENT_TO_CHILD העברה מסוכן ראשי לסוכן הבן.
CHILD_TO_PARENT העברה מסוכן הילד לסוכן הראשי.

סכימת הפלט

סוכן פועל כאבן הבניין הבסיסית שמספקת הוראות למודל שפה גדול (LLM) לביצוע משימות ספציפיות.

סוכן

ייצוג ב-JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "modelSettings": {
    object (ModelSettings)
  },
  "instruction": string,
  "tools": [
    string
  ],
  "childAgents": [
    string
  ],
  "beforeAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "guardrails": [
    string
  ],
  "etag": string,
  "toolsets": [
    {
      object (AgentToolset)
    }
  ],
  "generatedSummary": string,
  "transferRules": [
    {
      object (TransferRule)
    }
  ],
  "validationErrors": [
    string
  ],

  // Union field agent_type can be only one of the following:
  "llmAgent": {
    object (LlmAgent)
  },
  "remoteDialogflowAgent": {
    object (RemoteDialogflowAgent)
  },
  "remoteA2aAgent": {
    object (RemoteA2aAgent)
  }
  // End of list of possible types for union field agent_type.
}
שדות
name

string

מזהה. המזהה הייחודי של הסוכן. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

חובה. השם המוצג של הנציג.

description

string

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

modelSettings

object (ModelSettings)

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

instruction

string

זה שינוי אופציונלי. הוראות למודל שפה גדול (LLM) שמנחות את התנהגות הסוכן.

tools[]

string

זה שינוי אופציונלי. רשימת הכלים הזמינים לסוכן. פורמט: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

childAgents[]

string

זה שינוי אופציונלי. רשימה של סוכני ילדים בעץ הסוכנים. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

beforeAgentCallbacks[]

object (Callback)

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

afterAgentCallbacks[]

object (Callback)

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

beforeModelCallbacks[]

object (Callback)

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

afterModelCallbacks[]

object (Callback)

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

beforeToolCallbacks[]

object (Callback)

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

afterToolCallbacks[]

object (Callback)

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

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".

guardrails[]

string

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

etag

string

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

toolsets[]

object (AgentToolset)

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

generatedSummary

string

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

transferRules[]

object (TransferRule)

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

validationErrors[]

string

פלט בלבד. שגיאות או הגדרות שגויות בסוכן שעלולות להשפיע על איכות הסוכן.

שדה איחוד agent_type. סוג הסוכן. הערך agent_type יכול להיות רק אחד מהבאים:
llmAgent

object (LlmAgent)

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

remoteDialogflowAgent

object (RemoteDialogflowAgent)

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

הערה: אם סוכן Dialogflow נמצא בפרויקט אחר מהאפליקציה, צריך להעניק את ההרשאה roles/dialogflow.client לסוכן שירות ה-CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

remoteA2aAgent

object (RemoteA2aAgent)

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

RemoteDialogflowAgent

ייצוג ב-JSON
{
  "agent": string,
  "flowId": string,
  "environmentId": string,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "respectResponseInterruptionSettings": boolean,
  "languageCodeVariable": string
}
שדות
agent

string

חובה. שם משאב הסוכן ב-Dialogflow. פורמט: projects/{project}/locations/{location}/agents/{agent}

flowId

string

זה שינוי אופציונלי. מזהה ה-Flow של ה-Flow בסוכן Dialogflow.

environmentId

string

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

inputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני האפליקציה לשמות פרמטרים של סשן Dialogflow שיישלחו לסוכן Dialogflow כקלט.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

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

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

respectResponseInterruptionSettings

boolean

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

  • אם הערך הוא false: כל הודעות התגובה מהנציג ב-Dialogflow פועלות לפי הגדרות ההתפרצות ברמת האפליקציה.
  • אם הערך הוא true: אפשר יהיה לקטוע רק הודעות תגובה עם allow_playback_interruption שמוגדר כ-true. כל ההודעות האחרות יפעלו לפי הגדרות ההשתלטות ברמת האפליקציה.
languageCodeVariable

string

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

InputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

OutputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

RemoteA2aAgent

ייצוג ב-JSON
{
  "a2aConfig": {
    object (RemoteA2aConfig)
  }
}
שדות
a2aConfig

object (RemoteA2aConfig)

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

RemoteA2aConfig

ייצוג ב-JSON
{
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "streamingEnabled": boolean,
  "contextId": string,

  // Union field agent_spec can be only one of the following:
  "agentCard": {
    object (AgentCard)
  },
  "agentRegistry": string
  // End of list of possible types for union field agent_spec.
}
שדות
apiAuthentication

object (ApiAuthentication)

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

inputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני הקלט של סוכן מרוחק לשמות משתנים של GECX.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

זה שינוי אופציונלי. מיפוי של שמות משתני הפלט של הסוכן המרוחק לשמות משתנים של GECX.

אובייקט שמכיל רשימה של "key": value זוגות. לדוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

streamingEnabled

boolean

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

contextId

string

זה שינוי אופציונלי. אם השדה לא ריק, האינטראקציות עם סוכן A2A מרוחק ישתמשו במזהה ההקשר הזה. השדה context_id יכול להתייחס למשתנה של סשן כמו $context.variables.order_agent_session_id.

שדה איחוד agent_spec. מפרט של הסוכן המרוחק. הערך agent_spec יכול להיות רק אחד מהבאים:
agentCard

object (AgentCard)

זה שינוי אופציונלי. כרטיס הסוכן המלא מוגדר בשורה.

agentRegistry

string

זה שינוי אופציונלי. הפניה לסוכן ב-Agent Registry. פורמט: projects/{project}/locations/{location}/agents/{agent}

AgentCard

ייצוג ב-JSON
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
שדות
name

string

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

description

string

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

supportedInterfaces[]

object (AgentInterface)

חובה. רשימה מסודרת של ממשקים נתמכים. עדיף להשתמש ברשומה הראשונה.

version

string

חובה. גרסת הסוכן.

skills[]

object (AgentSkill)

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

AgentInterface

ייצוג ב-JSON
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
שדות
url

string

חובה. כתובת ה-URL שבה הממשק הזה זמין. זו צריכה להיות כתובת URL תקינה מסוג HTTPS בייצור. דוגמה: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a"

protocolBinding

string

חובה. הקישור לפרוטוקול שנתמך בכתובת ה-URL הזו. זהו מחרוזת של טופס פתוח, שאפשר להרחיב אותה בקלות לקישורי פרוטוקול אחרים. הסכימות המרכזיות שנתמכות באופן רשמי הן JSONRPC, ‏ GRPC ו-HTTP+JSON.

tenant

string

מזהה הדייר שישמש בבקשה כשמתקשרים לסוכן.

protocolVersion

string

חובה. הגרסה של פרוטוקול A2A שהממשק הזה חושף. מומלץ להשתמש בגרסה המשנית הנתמכת האחרונה לכל גרסה ראשית. דוגמאות: ‎0.3,‏ ‎1.0

AgentSkill

ייצוג ב-JSON
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
שדות
id

string

חובה. מזהה ייחודי של מיומנות הסוכן.

name

string

חובה. שם המיומנות שקריא לבני אדם.

description

string

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

tags[]

string

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

examples[]

string

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

inputModes[]

string

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

outputModes[]

string

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

ApiAuthentication

ייצוג ב-JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
שדות
שדה איחוד auth_config. הגדרת האימות. הערך auth_config יכול להיות רק אחד מהבאים:
apiKeyConfig

object (ApiKeyConfig)

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

oauthConfig

object (OAuthConfig)

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

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

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

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

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

bearerTokenConfig

object (BearerTokenConfig)

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

ApiKeyConfig

ייצוג ב-JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
שדות
keyName

string

חובה. שם הפרמטר או שם הכותרת של מפתח ה-API. למשל, אם בקשת ה-API היא "https://example.com/act?X-Api-Key=", שם הפרמטר יהיה "X-Api-Key".

apiKeySecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן מפתח ה-API. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

חובה. מיקום המפתח בבקשה.

OAuthConfig

ייצוג ב-JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
שדות
oauthGrantType

enum (OauthGrantType)

חובה. סוגי הרשאות OAuth.

clientId

string

חובה. מזהה הלקוח מספק OAuth.

clientSecretVersion

string

חובה. השם של משאב גרסת הסוד ב-SecretManager שבו מאוחסן סוד הלקוח. פורמט: projects/{project}/secrets/{secret}/versions/{version}

הערה: צריך להקצות את התפקיד roles/secretmanager.secretAccessor לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

חובה. נקודת הקצה של האסימון בספק OAuth להחלפה באסימון גישה.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק.

ServiceAccountAuthConfig

ייצוג ב-JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
שדות
serviceAccount

string

חובה. כתובת האימייל של חשבון השירות שמשמש לאימות. מערכת CES משתמשת בחשבון השירות הזה כדי להחליף אסימון גישה, ואז אסימון הגישה נשלח בכותרת Authorization של הבקשה.

לחשבון השירות צריך להיות מוקצה התפקיד roles/iam.serviceAccountTokenCreator לסוכן השירות של CES‏ service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

זה שינוי אופציונלי. היקפי ההרשאות של OAuth שרוצים להעניק. אם לא מציינים היקף, המערכת משתמשת בהיקף ברירת המחדל https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

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

string

חובה. טוקן למוכ"ז. חייב להיות בפורמט $context.variables.<name_of_variable>.

InputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

OutputVariableMappingEntry

ייצוג ב-JSON
{
  "key": string,
  "value": string
}
שדות
key

string

value

string

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. רמת האקראיות קובעת את רמת הרנדומיזציה של התשובות של המודל. טמפרטורות נמוכות יותר מפיקות תשובות צפויות יותר. טמפרטורות גבוהות יותר יוצרות תשובות יצירתיות יותר.

התקשרות חזרה

ייצוג ב-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
{
  "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, כולל.

AgentToolset

ייצוג ב-JSON
{
  "toolset": string,
  "toolIds": [
    string
  ]
}
שדות
toolset

string

חובה. שם המשאב של ערכת הכלים. פורמט: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolIds[]

string

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

TransferRule

ייצוג ב-JSON
{
  "childAgent": string,
  "direction": enum (Direction),

  // Union field rule_type can be only one of the following:
  "deterministicTransfer": {
    object (DeterministicTransfer)
  },
  "disablePlannerTransfer": {
    object (DisablePlannerTransfer)
  }
  // End of list of possible types for union field rule_type.
}
שדות
childAgent

string

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

direction

enum (Direction)

חובה. כיוון ההעברה.

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

object (DeterministicTransfer)

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

disablePlannerTransfer

object (DisablePlannerTransfer)

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

DeterministicTransfer

ייצוג ב-JSON
{

  // Union field condition_type can be only one of the following:
  "expressionCondition": {
    object (ExpressionCondition)
  },
  "pythonCodeCondition": {
    object (PythonCodeCondition)
  }
  // End of list of possible types for union field condition_type.
}
שדות
שדה איחוד condition_type. התנאי להערכה. הערך condition_type יכול להיות רק אחד מהבאים:
expressionCondition

object (ExpressionCondition)

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

pythonCodeCondition

object (PythonCodeCondition)

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

ExpressionCondition

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

string

חובה. ייצוג המחרוזת של התנאי cloud.api.Expression.

PythonCodeCondition

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

string

חובה. קוד Python להרצה.

DisablePlannerTransfer

ייצוג ב-JSON
{
  "expressionCondition": {
    object (ExpressionCondition)
  }
}
שדות
expressionCondition

object (ExpressionCondition)

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

RequestLocation

המיקום של מפתח ה-API בבקשה.

טיפוסים בני מנייה (enum)
REQUEST_LOCATION_UNSPECIFIED לא צוין. אין להשתמש בערך הזה.
HEADER מייצג את המפתח בכותרת ה-HTTP.
QUERY_STRING מייצג את המפתח במחרוזת של שאילתה.

OauthGrantType

סוגי הרשאות OAuth. יש תמיכה רק ב-client credential grant.

טיפוסים בני מנייה (enum)
OAUTH_GRANT_TYPE_UNSPECIFIED לא צוין. ברירת המחדל היא CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL מייצג את תהליך פרטי הכניסה של הלקוח.

ThinkingLevel

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

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

כיוון

כיוון ההעברה.

טיפוסים בני מנייה (enum)
DIRECTION_UNSPECIFIED כיוון לא מוגדר.
PARENT_TO_CHILD העברה מסוכן ראשי לסוכן הבן.
CHILD_TO_PARENT העברה מסוכן הילד לסוכן הראשי.

הערות בכלי

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

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

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

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