Message

הודעה בשיחה.

ייצוג JSON
{
  "role": string,
  "chunks": [
    {
      object (Chunk)
    }
  ],
  "eventTime": string
}
שדות
role

string

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

chunks[]

object (Chunk)

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

eventTime

string (Timestamp format)

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

הפלט שנוצר תמיד יהיה בפורמט 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".

חלק

חלק מהתוכן בהודעה.

ייצוג JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "transcript": string,
  "blob": {
    object (Blob)
  },
  "payload": {
    object
  },
  "image": {
    object (Image)
  },
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "defaultVariables": {
    object
  }
  // End of list of possible types for union field data.
}
שדות
שדה איחוד data. לחלק את הנתונים לחלקים. הערך data יכול להיות רק אחד מהבאים:
text

string

זה שינוי אופציונלי. נתוני טקסט.

transcript

string

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

blob

object (Blob)

זה שינוי אופציונלי. נתוני Blob.

payload

object (Struct format)

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

image

object (Image)

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

toolCall

object (ToolCall)

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

toolResponse

object (ToolResponse)

זה שינוי אופציונלי. תשובה להרצת הכלי.

agentTransfer

object (AgentTransfer)

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

updatedVariables

object (Struct format)

מבנה נתונים מייצג משתנים שעודכנו בשיחה, עם מפתחות לפי שמות המשתנים.

defaultVariables

object (Struct format)

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

Blob

מייצג קלט או פלט של blob בשיחה.

ייצוג JSON
{
  "mimeType": string,
  "data": string
}
שדות
mimeType

string

חובה. סוג ה-MIME התקני של IANA של נתוני המקור.

data

string (bytes format)

חובה. בייטים גולמיים של ה-blob.

מחרוזת בקידוד Base64.

תמונה

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

ייצוג JSON
{
  "mimeType": string,
  "data": string
}
שדות
mimeType

string

חובה. סוג ה-MIME התקני של IANA של נתוני המקור. סוגי התמונות הנתמכים כוללים: * image/png * image/jpeg * image/webp

data

string (bytes format)

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

מחרוזת בקידוד Base64.

ToolCall

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

ייצוג JSON
{
  "id": string,
  "displayName": string,
  "args": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
שדות
id

string

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

displayName

string

פלט בלבד. השם המוצג של הכלי.

args

object (Struct format)

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

parentToolCallId

string

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

agentName

string

פלט בלבד. השם של הסוכן שהנפיק את השיחה הזו, בפורמט שקריא לבני אדם, למשל Contract Architect. השדה ריק אם הסוכן הבסיסי הנפיק את ה-ID.

שדה איחוד tool_identifier. המזהה של הכלי להפעלה. יכול להיות שמדובר בכלי קבוע או בכלי מתוך ערכת כלים. הערך tool_identifier יכול להיות רק אחד מהבאים:
tool

string

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

toolsetTool

object (ToolsetTool)

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

ToolsetTool

כלי שנוצר מתוך ערכת כלים.

ייצוג JSON
{
  "toolset": string,
  "toolId": string
}
שדות
toolset

string

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

toolId

string

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

ToolResponse

תוצאת ההפעלה של כלי ספציפי מהלקוח או מהסוכן.

ייצוג JSON
{
  "id": string,
  "displayName": string,
  "response": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
שדות
id

string

זה שינוי אופציונלי. מזהה התשובה התואם של tool call.

displayName

string

פלט בלבד. השם המוצג של הכלי.

response

object (Struct format)

חובה. תוצאת ההפעלה של הכלי בפורמט אובייקט JSON. משתמשים במפתח 'output' כדי לציין את התגובה של הכלי ובמפתח 'error' כדי לציין את פרטי השגיאה (אם יש). אם לא מציינים את המפתחות 'פלט' ו'שגיאה', המערכת מתייחסת לכל התגובה כתוצאה של הפעלת הכלי.

parentToolCallId

string

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

agentName

string

פלט בלבד. השם של הסוכן שהנפיק את השיחה הזו, בפורמט שקריא לבני אדם, למשל Contract Architect. השדה ריק אם הסוכן הבסיסי הנפיק את ה-ID.

שדה איחוד tool_identifier. המזהה של הכלי שהופעל. יכול להיות שמדובר בכלי קבוע או בכלי מתוך ערכת כלים. הערך tool_identifier יכול להיות רק אחד מהבאים:
tool

string

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

toolsetTool

object (ToolsetTool)

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

AgentTransfer

מייצג אירוע שמציין העברה של שיחה לסוכן אחר.

ייצוג JSON
{
  "targetAgent": string,
  "displayName": string
}
שדות
targetAgent

string

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

displayName

string

פלט בלבד. השם המוצג של הסוכן.