שמירת מטמון לפי הקשר מאפשרת לשמור אסימוני קלט שחושבו מראש ולהשתמש בהם שוב, למשל כששואלים שאלות שונות על אותו קובץ מדיה. כך אפשר לחסוך בעלויות ובמהירות, בהתאם לשימוש. מבוא מפורט זמין במדריך בנושא אחסון ב-cache של הקשר.
שיטה: cachedContents.create
יצירת משאב CachedContent.
נקודת קצה
פוסטhttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
גוף הבקשה
גוף הבקשה מכיל מופע של CachedContent
.
contents[]
object (Content
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. התוכן שרוצים לשמור במטמון.
tools[]
object (Tool
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. רשימה של Tools
שהמודל עשוי להשתמש בה כדי ליצור את התשובה הבאה
expiration
Union type
expiration
יכול להיות רק אחת מהאפשרויות הבאות:expireTime
string (Timestamp
format)
חותמת זמן לפי שעון UTC של המועד שבו תוקף המשאב הזה פג. הערך הזה תמיד מסופק בפלט, ללא קשר למה שנשלח בקלט.
חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z"
ו-"2014-10-02T15:01:23.045123456Z"
.
ttl
string (Duration
format)
קלט בלבד. TTL חדש למשאב הזה, קלט בלבד.
משך הזמן בשניות, עם עד תשע ספרות עשרוניות, שמסתיימים ב-'s
'. דוגמה: "3.5s"
.
name
string
זה שינוי אופציונלי. מזהה. שם המשאב שמתייחס לתוכן שנשמר במטמון. פורמט: cachedContents/{id}
displayName
string
זה שינוי אופציונלי. לא ניתן לשינוי. שם התצוגה המשמעותי שנוצר על ידי המשתמש של התוכן שנשמר במטמון. 128 תווים לכל היותר ב-Unicode.
model
string
חובה. לא ניתן לשינוי. השם של Model
שישמש לתוכן שנשמר במטמון. פורמט: models/{model}
systemInstruction
object (Content
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. הוראת מערכת שהגדיר המפתח. בשלב הזה אפשר להוסיף רק טקסט.
toolConfig
object (ToolConfig
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. הגדרת הכלי. ההגדרה הזו משותפת לכל הכלים.
בקשה לדוגמה
בסיסית
Python
Node.js
Go
קונכייה
שם השולח
Python
Node.js
Go
מצ'אט
Python
Node.js
Go
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע חדש של CachedContent
.
שיטה: cachedContents.list
הצגת רשימה של CachedContents.
נקודת קצה
gethttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
פרמטרים של שאילתה
pageSize
integer
זה שינוי אופציונלי. המספר המקסימלי של התכנים ששמורים במטמון שיוחזר. יכול להיות שהשירות יחזיר פחות מהערך הזה. אם לא מציינים ערך, המערכת תחזיר מספר פריטים מסוים שמוגדר כברירת מחדל (עד למספר המקסימלי). הערך המקסימלי הוא 1,000. ערכים מעל 1,000 יומרו לערך 1,000.
pageToken
string
זה שינוי אופציונלי. אסימון דף, שהתקבל משיחה קודמת של cachedContents.list
. צריך לספק אותו כדי לאחזר את הדף הבא.
כשמחלקים את הדפים, כל שאר הפרמטרים שסופקו ל-cachedContents.list
חייבים להתאים לקריאה שסיפקה את אסימון הדף.
גוף הבקשה
גוף הבקשה חייב להיות ריק.
גוף התשובה
תגובה עם רשימת CachedContents.
אם הפעולה מצליחה, גוף התגובה מכיל נתונים במבנה הבא:
cachedContents[]
object (CachedContent
)
רשימת התוכן שנשמר במטמון.
nextPageToken
string
אסימון שאפשר לשלוח כ-pageToken
כדי לאחזר את הדף הבא. אם השדה הזה לא יצוין, לא יהיו דפים נוספים.
ייצוג ב-JSON |
---|
{
"cachedContents": [
{
object ( |
שיטה: cachedContents.get
קריאת המשאב CachedContent.
נקודת קצה
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
פרמטרים של נתיב
name
string
חובה. שם המשאב שמתייחס לרשומה במטמון התוכן. פורמט: cachedContents/{id}
הפורמט הוא cachedContents/{cachedcontent}
.
גוף הבקשה
גוף הבקשה חייב להיות ריק.
בקשה לדוגמה
Python
Node.js
Go
קונכייה
גוף התשובה
אם הפעולה מצליחה, גוף התגובה מכיל מופע של CachedContent
.
שיטה: cachedContents.patch
עדכון המשאב CachedContent (אפשר לעדכן רק את התוקף).
נקודת קצה
תיקוןhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}
PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
פרמטרים של נתיב
cachedContent.name
string
זה שינוי אופציונלי. מזהה. שם המשאב שמתייחס לתוכן שנשמר במטמון. פורמט: cachedContents/{id}
הפורמט הוא cachedContents/{cachedcontent}
.
פרמטרים של שאילתה
updateMask
string (FieldMask
format)
רשימת השדות שרוצים לעדכן.
זוהי רשימה של שמות שדות מוגדרים במלואם, שמופרדים בפסיקים. דוגמה: "user.displayName,photo"
גוף הבקשה
גוף הבקשה מכיל מופע של CachedContent
.
expiration
Union type
expiration
יכול להיות רק אחת מהאפשרויות הבאות:expireTime
string (Timestamp
format)
חותמת זמן לפי שעון UTC של המועד שבו תוקף המשאב הזה פג. הערך הזה תמיד מסופק בפלט, ללא קשר למה שנשלח בקלט.
חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z"
ו-"2014-10-02T15:01:23.045123456Z"
.
ttl
string (Duration
format)
קלט בלבד. TTL חדש למשאב הזה, קלט בלבד.
משך הזמן בשניות, עם עד תשע ספרות עשרוניות, שמסתיימים ב-'s
'. דוגמה: "3.5s"
.
name
string
זה שינוי אופציונלי. מזהה. שם המשאב שמתייחס לתוכן שנשמר במטמון. פורמט: cachedContents/{id}
בקשה לדוגמה
Python
Node.js
Go
קונכייה
גוף התשובה
אם הפעולה מצליחה, גוף התגובה מכיל מופע של CachedContent
.
שיטה: cachedContents.delete
מחיקה של משאב CachedContent.
נקודת קצה
מחיקהhttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
כתובת ה-URL משתמשת בתחביר של Transcoding של gRPC.
פרמטרים של נתיב
name
string
חובה. שם המשאב שמפנה לרשומה במטמון התוכן. הפורמט: cachedContents/{id}
. הוא מופיע בפורמט cachedContents/{cachedcontent}
.
גוף הבקשה
גוף הבקשה חייב להיות ריק.
בקשה לדוגמה
Python
Node.js
Go
קונכייה
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יהיה ריק.
משאב REST: cachedContents
- משאב: CachedContent
- תוכן
- חלק
- Blob
- FunctionCall
- FunctionResponse
- FileData
- ExecutableCode
- שפה
- CodeExecutionResult
- תוצאה
- כלי
- FunctionDeclaration
- Schema
- סוג
- GoogleSearchRetrieval
- DynamicRetrievalConfig
- המצב
- CodeExecution
- ToolConfig
- FunctionCallingConfig
- המצב
- UsageMetadata
- שיטות
משאב: CachedContent
תוכן שעבר עיבוד מראש ואפשר להשתמש בו בבקשה הבאה ל-GenerativeService.
אפשר להשתמש בתוכן שנשמר במטמון רק עם המודל שעבורו הוא נוצר.
contents[]
object (Content
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. התוכן שרוצים לשמור במטמון.
tools[]
object (Tool
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. רשימה של Tools
שהמודל עשוי להשתמש בה כדי ליצור את התשובה הבאה
createTime
string (Timestamp
format)
פלט בלבד. מועד היצירה של הרשומה במטמון.
חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z"
ו-"2014-10-02T15:01:23.045123456Z"
.
updateTime
string (Timestamp
format)
פלט בלבד. מועד העדכון האחרון של הרשומה במטמון לפי שעון UTC.
חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z"
ו-"2014-10-02T15:01:23.045123456Z"
.
usageMetadata
object (UsageMetadata
)
פלט בלבד. מטא-נתונים על השימוש בתוכן שנשמר במטמון.
expiration
Union type
expiration
יכול להיות רק אחת מהאפשרויות הבאות:expireTime
string (Timestamp
format)
חותמת זמן לפי שעון UTC של המועד שבו תוקף המשאב הזה פג. הערך הזה תמיד מסופק בפלט, ללא קשר למה שנשלח בקלט.
חותמת זמן בפורמט UTC 'Zulu' של RFC3339, עם רזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z"
ו-"2014-10-02T15:01:23.045123456Z"
.
ttl
string (Duration
format)
קלט בלבד. TTL חדש למשאב הזה, קלט בלבד.
משך הזמן בשניות, עם עד תשע ספרות עשרוניות, שמסתיימים ב-'s
'. דוגמה: "3.5s"
.
name
string
זה שינוי אופציונלי. מזהה. שם המשאב שמתייחס לתוכן שנשמר במטמון. פורמט: cachedContents/{id}
displayName
string
זה שינוי אופציונלי. לא ניתן לשינוי. שם התצוגה המשמעותי שנוצר על ידי המשתמש של התוכן שנשמר במטמון. 128 תווים לכל היותר ב-Unicode.
model
string
חובה. לא ניתן לשינוי. השם של Model
שישמש לתוכן שנשמר במטמון. פורמט: models/{model}
systemInstruction
object (Content
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. הוראת מערכת שהגדיר המפתח. בשלב הזה אפשר להוסיף רק טקסט.
toolConfig
object (ToolConfig
)
זה שינוי אופציונלי. קלט בלבד. לא ניתן לשינוי. הגדרת הכלי. ההגדרה הזו משותפת לכל הכלים.
ייצוג ב-JSON |
---|
{ "contents": [ { object ( |
תוכן
סוג הנתונים המובנה הבסיסי שמכיל תוכן של הודעה שמחולק לכמה חלקים.
Content
כולל שדה role
שמציין את היוצר של Content
ושדה parts
שמכיל נתונים בכמה חלקים שמכילים את תוכן תור ההודעה.
parts[]
object (Part
)
Parts
מסודרים שמרכיבים הודעה אחת. לחלקים יכולים להיות סוגים שונים של MIME.
role
string
זה שינוי אופציונלי. היוצר של התוכן. הערך חייב להיות 'משתמש' או 'מודל'.
כדאי להגדיר את הערך הזה בשיחות עם כמה תורנים. אחרת, אפשר להשאיר את השדה ריק או לא להגדיר אותו.
ייצוג ב-JSON |
---|
{
"parts": [
{
object ( |
חלק
טיפוס נתונים שמכיל מדיה שחלק מתוך הודעה Content
שמכילה כמה חלקים.
Part
מורכב מנתונים שיש להם סוג נתונים משויך. השדה Part
יכול להכיל רק אחד מהסוגים הקבילים ב-Part.data
.
אם השדה inlineData
מלא בייטים גולמיים, ל-Part
חייב להיות סוג MIME קבוע של IANA שמזהה את הסוג ואת תת-הסוג של המדיה.
data
Union type
data
יכול להיות רק אחת מהאפשרויות הבאות:text
string
טקסט בשורת הטקסט.
inlineData
object (Blob
)
בייטים של מדיה בתוך הטקסט.
functionCall
object (FunctionCall
)
הערך המשוער של FunctionCall
שהמודל מחזיר, ומכיל מחרוזת שמייצגת את FunctionDeclaration.name
עם הארגומנטים והערכים שלהם.
functionResponse
object (FunctionResponse
)
הפלט של התוצאה של FunctionCall
שמכיל מחרוזת שמייצגת את FunctionDeclaration.name
ואובייקט JSON מובנה שמכיל את כל הפלט מהפונקציה משמשים כהקשר של המודל.
fileData
object (FileData
)
נתונים שמבוססים על URI.
executableCode
object (ExecutableCode
)
קוד שנוצר על ידי המודל והוא מיועד להרצה.
codeExecutionResult
object (CodeExecutionResult
)
התוצאה של הפעלת ExecutableCode
.
ייצוג ב-JSON |
---|
{ // data "text": string, "inlineData": { object ( |
Blob
ביטים גולמיים של מדיה.
אין לשלוח טקסט כבייט גולמיים, צריך להשתמש בשדה 'text'.
mimeType
string
סוג ה-MIME הסטנדרטי של IANA של נתוני המקור. דוגמאות: - image/png - image/jpeg אם מציינים סוג MIME שאינו נתמך, תוחזר שגיאה. רשימה מלאה של הסוגים הנתמכים זמינה במאמר פורמטים נתמכים של קבצים.
data
string (bytes format)
ביטים גולמיים לפורמטים של מדיה.
מחרוזת בקידוד Base64.
ייצוג ב-JSON |
---|
{ "mimeType": string, "data": string } |
FunctionCall
הערך המשוער של FunctionCall
שהמודל מחזיר, ומכיל מחרוזת שמייצגת את FunctionDeclaration.name
עם הארגומנטים והערכים שלהם.
name
string
חובה. השם של הפונקציה שרוצים להפעיל. השם חייב להכיל את התווים a-z, A-Z, 0-9 או קווים תחתונים ומקפים, באורך מקסימלי של 63 תווים.
args
object (Struct
format)
זה שינוי אופציונלי. הפרמטרים והערכים של הפונקציה בפורמט אובייקט JSON.
ייצוג ב-JSON |
---|
{ "name": string, "args": { object } } |
FunctionResponse
הפלט של התוצאה מ-FunctionCall
שמכיל מחרוזת שמייצגת את FunctionDeclaration.name
ואובייקט JSON מובנה שמכיל את כל הפלט מהפונקציה משמשים כהקשר של המודל. השדה הזה אמור להכיל את התוצאה של FunctionCall
שנוצרה על סמך תחזית המודל.
name
string
חובה. השם של הפונקציה שרוצים להפעיל. השם חייב להכיל את התווים a-z, A-Z, 0-9 או קווים תחתונים ומקפים, באורך מקסימלי של 63 תווים.
response
object (Struct
format)
חובה. תגובת הפונקציה בפורמט של אובייקט JSON.
ייצוג ב-JSON |
---|
{ "name": string, "response": { object } } |
FileData
נתונים שמבוססים על URI.
mimeType
string
זה שינוי אופציונלי. סוג ה-MIME הסטנדרטי של IANA של נתוני המקור.
fileUri
string
חובה. URI.
ייצוג ב-JSON |
---|
{ "mimeType": string, "fileUri": string } |
ExecutableCode
קוד שנוצר על ידי המודל ונועד לביצוע, והתוצאה שמוחזרת למודל.
הקוד נוצר רק כשמשתמשים בכלי CodeExecution
, שבו הקוד יופעל באופן אוטומטי וייווצר גם CodeExecutionResult
תואם.
language
enum (Language
)
חובה. שפת התכנות של ה-code
.
code
string
חובה. הקוד שרוצים להריץ.
ייצוג ב-JSON |
---|
{
"language": enum ( |
שפה
שפות התכנות הנתמכות לקוד שנוצר.
טיפוסים בני מנייה (enum) | |
---|---|
LANGUAGE_UNSPECIFIED |
לא נבחרה שפה. לא צריך להשתמש בערך הזה. |
PYTHON |
Python מגרסה 3.10 ואילך, עם numpy ו-simpy זמינים. |
CodeExecutionResult
התוצאה של הפעלת ExecutableCode
.
הקוד הזה נוצר רק כשמשתמשים ב-CodeExecution
, והוא תמיד מופיע אחרי part
שמכיל את ExecutableCode
.
outcome
enum (Outcome
)
חובה. התוצאה של הרצת הקוד.
output
string
זה שינוי אופציונלי. הפונקציה מכילה את stdout כשהקוד מבוצע בהצלחה, את stderr או תיאור אחר במקרה אחר.
ייצוג ב-JSON |
---|
{
"outcome": enum ( |
תוצאה
ספירה של התוצאות האפשריות של הרצת הקוד.
טיפוסים בני מנייה (enum) | |
---|---|
OUTCOME_UNSPECIFIED |
הסטטוס לא צוין. לא צריך להשתמש בערך הזה. |
OUTCOME_OK |
הקוד הופעל בהצלחה. |
OUTCOME_FAILED |
הרצת הקוד הסתיימה, אבל עם כשל. השדה stderr צריך להכיל את הסיבה. |
OUTCOME_DEADLINE_EXCEEDED |
הרצת הקוד נמשכה יותר מדי זמן והיא בוטלה. יכול להיות שיופיע פלט חלקי או לא. |
כלי
פרטי הכלי שהמודל עשוי להשתמש בהם כדי ליצור תשובה.
Tool
הוא קטע קוד שמאפשר למערכת לקיים אינטראקציה עם מערכות חיצוניות כדי לבצע פעולה או קבוצת פעולות מחוץ לידע ולהיקף של המודל.
functionDeclarations[]
object (FunctionDeclaration
)
זה שינוי אופציונלי. רשימה של FunctionDeclarations
שזמינים למודל ואפשר להשתמש בהם לקריאה לפונקציות.
המודל או המערכת לא מריצים את הפונקציה. במקום זאת, אפשר להחזיר את הפונקציה שהוגדרה כ-FunctionCall
עם ארגומנטים לצד הלקוח לצורך ביצוע. המודל עשוי להחליט לקרוא לקבוצת משנה של הפונקציות האלה על ידי אכלוס FunctionCall
בתגובה. תור השיחה הבא עשוי לכלול FunctionResponse
עם ההקשר של יצירת Content.role
'פונקציה' לתור הבא של המודל.
googleSearchRetrieval
object (GoogleSearchRetrieval
)
זה שינוי אופציונלי. כלי אחזור שמבוסס על חיפוש Google.
codeExecution
object (CodeExecution
)
זה שינוי אופציונלי. מאפשרת למודל להריץ קוד כחלק מהיצירה.
ייצוג ב-JSON |
---|
{ "functionDeclarations": [ { object ( |
FunctionDeclaration
ייצוג מובנה של הצהרת פונקציה כפי שהוגדר במפרט OpenAPI 3.03. ההצהרה הזו כוללת את שם הפונקציה ואת הפרמטרים שלה. FunctionDeclaration הזה מייצג בלוק קוד שאפשר להשתמש בו כ-Tool
על ידי המודל ולהריץ אותו על ידי הלקוח.
name
string
חובה. שם הפונקציה. השם חייב להכיל את התווים a-z, A-Z, 0-9 או קווים תחתונים ומקפים, באורך מקסימלי של 63 תווים.
description
string
חובה. תיאור קצר של הפונקציה.
parameters
object (Schema
)
אופציונלי. תיאור הפרמטרים של הפונקציה הזו. משקף את מפתח המחרוזת של אובייקט הפרמטר ב-Open API 3.03: שם הפרמטר. השמות של הפרמטרים הם תלויי אותיות רישיות. ערך הסכימה: הסכימה שמגדירה את הסוג שבו נעשה שימוש בפרמטר.
ייצוג ב-JSON |
---|
{
"name": string,
"description": string,
"parameters": {
object ( |
סכימה
האובייקט Schema
מאפשר להגדיר את סוגי הנתונים של הקלט והפלט. הסוגים האלה יכולים להיות אובייקטים, אבל גם פריימים ומערכים. מייצג קבוצת משנה נבחרת של אובייקט הסכימה של OpenAPI 3.0.
type
enum (Type
)
חובה. סוג הנתונים.
format
string
זה שינוי אופציונלי. הפורמט של הנתונים. האפשרות הזו משמשת רק לסוגי נתונים פרימיטיביים. הפורמטים הנתמכים: לסוג NUMBER: float, double לסוג INTEGER: int32, int64 לסוג STRING: enum
description
string
זה שינוי אופציונלי. תיאור קצר של הפרמטר. המידע הזה יכול לכלול דוגמאות לשימוש. הפורמט של תיאור הפרמטר יכול להיות Markdown.
nullable
boolean
זה שינוי אופציונלי. מציין אם הערך יכול להיות null.
enum[]
string
זה שינוי אופציונלי. ערכים אפשריים של המרכיב מסוג Type.STRING בפורמט enum. לדוגמה, אפשר להגדיר כיוון של Enum כך : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}
maxItems
string (int64 format)
זה שינוי אופציונלי. המספר המקסימלי של הרכיבים של Type.ARRAY.
minItems
string (int64 format)
זה שינוי אופציונלי. מספר המינימום של הרכיבים עבור Type.ARRAY.
properties
map (key: string, value: object (Schema
))
זה שינוי אופציונלי. מאפיינים של Type.OBJECT.
אובייקט שמכיל רשימה של זוגות "key": value
. דוגמה: { "name": "wrench", "mass": "1.3kg", "count": "3" }
.
required[]
string
זה שינוי אופציונלי. המאפיינים הנדרשים של Type.OBJECT.
items
object (Schema
)
זה שינוי אופציונלי. הסכימה של הרכיבים של Type.ARRAY.
סוג
השדה Type מכיל את רשימת סוגי הנתונים של OpenAPI כפי שהוגדרו במאמר https://spec.openapis.org/oas/v3.0.3#data-types
טיפוסים בני מנייה (enum) | |
---|---|
TYPE_UNSPECIFIED |
לא צוין, אין להשתמש בו. |
STRING |
טיפוס מחרוזת. |
NUMBER |
סוג המספר. |
INTEGER |
טיפוס של מספר שלם. |
BOOLEAN |
טיפוס בוליאני. |
ARRAY |
סוג המערך. |
OBJECT |
סוג האובייקט. |
GoogleSearchRetrieval
כלי לאחזור נתונים ציבוריים מהאינטרנט לצורך אימות, שמופעל על ידי Google.
dynamicRetrievalConfig
object (DynamicRetrievalConfig
)
קובעת את הגדרת אחזור הנתונים הדינמיים של המקור הנתון.
ייצוג ב-JSON |
---|
{
"dynamicRetrievalConfig": {
object ( |
DynamicRetrievalConfig
מצב
המצב של החזוי שישמש לאחזור דינמי.
טיפוסים בני מנייה (enum) | |
---|---|
MODE_UNSPECIFIED |
תמיד מפעילים אחזור. |
MODE_DYNAMIC |
הפעלת אחזור רק כשהמערכת מחליטה שזה נחוץ. |
CodeExecution
אין שדות לסוג הזה.
כלי שמריץ קוד שנוצר על ידי המודל ומחזיר את התוצאה למודל באופן אוטומטי.
אפשר לעיין גם ב-ExecutableCode
וב-CodeExecutionResult
, שנוצרים רק כשמשתמשים בכלי הזה.
ToolConfig
הגדרת הכלי שמכילה פרמטרים לציון השימוש ב-Tool
בבקשה.
functionCallingConfig
object (FunctionCallingConfig
)
זה שינוי אופציונלי. הגדרה של קריאה לפונקציה.
ייצוג ב-JSON |
---|
{
"functionCallingConfig": {
object ( |
FunctionCallingConfig
הגדרה של התנהגות קריאה לפונקציה.
mode
enum (Mode
)
זה שינוי אופציונלי. מציין את המצב שבו צריך להפעיל את קריאת הפונקציה. אם לא יצוין ערך, ערך ברירת המחדל יהיה AUTO.
allowedFunctionNames[]
string
זה שינוי אופציונלי. קבוצה של שמות פונקציות, שמספקת הגבלה על הפונקציות שהמודל יפעיל.
צריך להגדיר את האפשרות הזו רק כשהאפשרות Mode מוגדרת כ-ANY. שמות הפונקציות צריכים להתאים ל-[FunctionDeclaration.name]. כשהמצב מוגדר ל-ANY, המודל ינבא קריאה לפונקציה מתוך קבוצת שמות הפונקציות שסופקו.
ייצוג ב-JSON |
---|
{
"mode": enum ( |
מצב
הגדרת התנהגות הביצוע של קריאת פונקציה על ידי הגדרת מצב הביצוע.
טיפוסים בני מנייה (enum) | |
---|---|
MODE_UNSPECIFIED |
מצב קריאה לא מוגדר של פונקציה. לא צריך להשתמש בערך הזה. |
AUTO |
התנהגות ברירת המחדל של המודל, המודל מחליט לחזות קריאה לפונקציה או תגובה בשפה טבעית. |
ANY |
המודל מוגבל תמיד לחזות קריאה לפונקציה בלבד. אם מוגדרת 'allowedFunctionNames', קריאת הפונקציה הצפויה תהיה מוגבלת לאחת מהפונקציות שמפורטות ב-'allowedFunctionNames'. אחרת, קריאת הפונקציה הצפויה תהיה אחת מהפונקציות שמפורטות ב-'functionDeclarations'. |
NONE |
המודלים לא יחזו קריאות לפונקציות. התנהגות המודל זהה לזו שמתרחשת כשלא מעבירים הצהרות על פונקציות. |
UsageMetadata
מטא-נתונים על השימוש בתוכן שנשמר במטמון.
totalTokenCount
integer
המספר הכולל של האסימונים שהתוכן שנשמר במטמון צורך.
ייצוג ב-JSON |
---|
{ "totalTokenCount": integer } |