การแคชบริบทช่วยให้คุณบันทึกและนําโทเค็นอินพุตที่ประมวลผลล่วงหน้าซึ่งต้องการใช้ซ้ำมาใช้ซ้ำได้ เช่น เมื่อถามคําถามที่แตกต่างกันเกี่ยวกับไฟล์สื่อเดียวกัน ซึ่งอาจช่วยประหยัดค่าใช้จ่ายและเวลาได้ ทั้งนี้ขึ้นอยู่กับการใช้งาน สำหรับข้อมูลเบื้องต้นโดยละเอียด โปรดดูคู่มือการแคชบริบท
เมธอด: cachedContents.create
สร้างทรัพยากร CachedContent
ปลายทาง
โพสต์ https://generativelanguage.googleapis.com/v1beta/cachedContentsเนื้อหาของคำขอ
เนื้อความของคำขอมีอินสแตนซ์ของ CachedContent
contents[]
object (Content
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ เนื้อหาที่จะแคช
tools[]
object (Tool
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ รายการ Tools
ที่โมเดลอาจใช้เพื่อสร้างคำตอบถัดไป
expiration
ระบุว่าทรัพยากรนี้จะหมดอายุเมื่อใด expiration
ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
expireTime
string (Timestamp
format)
การประทับเวลาในเขตเวลา UTC ที่ถือว่าทรัพยากรนี้หมดอายุแล้ว ข้อมูลนี้จะแสดงในเอาต์พุตเสมอ ไม่ว่าจะส่งข้อมูลใดในอินพุตก็ตาม
การประทับเวลาในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและทศนิยมสูงสุด 9 หลัก ตัวอย่างเช่น "2014-10-02T15:01:23Z"
และ "2014-10-02T15:01:23.045123456Z"
ttl
string (Duration
format)
อินพุตเท่านั้น TTL ใหม่สำหรับทรัพยากรนี้ ป้อนเท่านั้น
ระยะเวลาเป็นวินาทีที่มีเศษทศนิยมได้สูงสุด 9 หลัก โดยลงท้ายด้วย "s
" เช่น "3.5s"
name
string
ไม่บังคับ ตัวระบุ ชื่อทรัพยากรที่อ้างถึงเนื้อหาที่แคชไว้ รูปแบบ: cachedContents/{id}
displayName
string
ไม่บังคับ เปลี่ยนแปลงไม่ได้ ชื่อที่แสดงที่สื่อความหมายซึ่งผู้ใช้สร้างขึ้นสำหรับเนื้อหาที่แคชไว้ อักขระ Unicode สูงสุด 128 ตัว
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
แสดงรายการเนื้อหาแคช
ปลายทาง
ซื้อ https://generativelanguage.googleapis.com/v1beta/cachedContentsพารามิเตอร์การค้นหา
pageSize
integer
ไม่บังคับ จำนวนสูงสุดของเนื้อหาที่แคชไว้ที่จะแสดง บริการอาจแสดงผลน้อยกว่าค่านี้ หากไม่ระบุ ระบบจะแสดงผลจำนวนรายการเริ่มต้น (ต่ำกว่าจำนวนสูงสุด) ค่าสูงสุดคือ 1,000 ระบบจะบังคับให้ค่าที่มากกว่า 1,000 เป็น 1,000
pageToken
string
ไม่บังคับ โทเค็นของหน้าเว็บที่ได้รับจากการโทร cachedContents.list
ก่อนหน้า ระบุข้อมูลนี้เพื่อเรียกข้อมูลหน้าถัดไป
เมื่อแบ่งหน้าเว็บ พารามิเตอร์อื่นๆ ทั้งหมดที่ระบุให้กับ cachedContents.list
ต้องตรงกับการเรียกที่ให้โทเค็นหน้าเว็บ
เนื้อหาของคำขอ
เนื้อหาของคำขอต้องว่างเปล่า
เนื้อหาการตอบกลับ
การตอบกลับพร้อมรายการ CachedContents
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
cachedContents[]
object (CachedContent
)
รายการเนื้อหาที่แคชไว้
nextPageToken
string
โทเค็น ซึ่งสามารถส่งเป็น pageToken
เพื่อเรียกข้อมูลหน้าถัดไป หากเว้นช่องนี้ไว้ จะไม่มีหน้าลำดับต่อมา
การแสดง JSON |
---|
{
"cachedContents": [
{
object ( |
เมธอด: cacheContents.get
อ่านทรัพยากร CachedContent
ปลายทาง
ซื้อ https://generativelanguage.googleapis.com/v1beta/{name=cachedContents/*}พารามิเตอร์เส้นทาง
name
string
ต้องระบุ ชื่อทรัพยากรที่อ้างถึงรายการแคชเนื้อหา รูปแบบ: cachedContents/{id}
อยู่ในรูปแบบ cachedContents/{cachedcontent}
เนื้อหาของคำขอ
เนื้อหาของคำขอต้องว่างเปล่า
ตัวอย่างคำขอ
Python
Node.js
Go
เปลือกหอย
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ CachedContent
เมธอด: cacheContents.patch
อัปเดตทรัพยากร CachedContent (อัปเดตได้เฉพาะวันหมดอายุ)
ปลายทาง
แพตช์ https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
พารามิเตอร์เส้นทาง
cachedContent.name
string
ไม่บังคับ ตัวระบุ ชื่อทรัพยากรที่อ้างถึงเนื้อหาที่แคชไว้ รูปแบบ: cachedContents/{id}
อยู่ในรูปแบบ cachedContents/{cachedcontent}
พารามิเตอร์การค้นหา
updateMask
string (FieldMask
format)
รายการช่องที่จะอัปเดต
ซึ่งเป็นรายการชื่อที่ตรงตามเกณฑ์ทั้งหมดของช่องที่คั่นด้วยคอมมา ตัวอย่าง: "user.displayName,photo"
เนื้อหาของคำขอ
เนื้อความของคำขอมีอินสแตนซ์ของ CachedContent
expiration
ระบุเวลาที่ทรัพยากรนี้จะหมดอายุ expiration
ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
expireTime
string (Timestamp
format)
การประทับเวลาในเขตเวลา UTC ที่ถือว่าทรัพยากรนี้หมดอายุแล้ว ข้อมูลนี้จะแสดงในเอาต์พุตเสมอ ไม่ว่าจะส่งข้อมูลใดในอินพุตก็ตาม
การประทับเวลาในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและทศนิยมสูงสุด 9 หลัก ตัวอย่างเช่น "2014-10-02T15:01:23Z"
และ "2014-10-02T15:01:23.045123456Z"
ttl
string (Duration
format)
อินพุตเท่านั้น TTL ใหม่สำหรับทรัพยากรนี้ ป้อนเท่านั้น
ระยะเวลาเป็นวินาทีที่มีเศษทศนิยมได้สูงสุด 9 หลัก โดยลงท้ายด้วย "s
" เช่น "3.5s"
name
string
ไม่บังคับ ตัวระบุ ชื่อทรัพยากรที่อ้างอิงถึงเนื้อหาที่แคชไว้ รูปแบบ: cachedContents/{id}
ตัวอย่างคำขอ
Python
Node.js
Go
เปลือกหอย
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ CachedContent
เมธอด: cacheContents.delete
ลบทรัพยากร CachedContent
ปลายทาง
delete https://generativelanguage.googleapis.com/v1beta/{name=cachedContents/*}พารามิเตอร์เส้นทาง
name
string
ต้องระบุ ชื่อทรัพยากรที่อ้างอิงถึงรูปแบบรายการแคชเนื้อหา: cachedContents/{id}
อยู่ในรูปแบบ cachedContents/{cachedcontent}
เนื้อหาของคำขอ
เนื้อหาของคำขอต้องว่างเปล่า
ตัวอย่างคำขอ
Python
Node.js
Go
เปลือกหอย
เนื้อหาการตอบกลับ
หากสำเร็จ เนื้อหาการตอบกลับจะว่างเปล่า
ทรัพยากร REST: cacheContents
- ทรัพยากร: CachedContent
- เนื้อหา
- ส่วน
- Blob
- FunctionCall
- FunctionResponse
- FileData
- ExecutableCode
- ภาษา
- CodeExecutionResult
- ผลลัพธ์
- เครื่องมือ
- FunctionDeclaration
- สคีมา
- ประเภท
- CodeExecution
- ToolConfig
- FunctionCallingConfig
- โหมด
- UsageMetadata
- เมธอด
ทรัพยากร: CachedContent
เนื้อหาที่ประมวลผลล่วงหน้าแล้วและสามารถใช้ในคำขอที่ส่งไปยัง GenerativeService ในภายหลัง
เนื้อหาที่แคชไว้จะใช้ได้กับโมเดลที่สร้างไว้เท่านั้น
contents[]
object (Content
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ เนื้อหาที่จะแคช
tools[]
object (Tool
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ รายการ Tools
ที่โมเดลอาจใช้เพื่อสร้างคำตอบถัดไป
createTime
string (Timestamp
format)
เอาต์พุตเท่านั้น เวลาที่สร้างรายการแคช
การประทับเวลาในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและทศนิยมสูงสุด 9 หลัก ตัวอย่างเช่น "2014-10-02T15:01:23Z"
และ "2014-10-02T15:01:23.045123456Z"
updateTime
string (Timestamp
format)
เอาต์พุตเท่านั้น เวลาอัปเดตรายการแคชครั้งล่าสุดตามเขตเวลา UTC
การประทับเวลาในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและทศนิยมสูงสุด 9 หลัก ตัวอย่าง: "2014-10-02T15:01:23Z"
และ "2014-10-02T15:01:23.045123456Z"
usageMetadata
object (UsageMetadata
)
เอาต์พุตเท่านั้น ข้อมูลเมตาเกี่ยวกับการใช้เนื้อหาที่แคชไว้
expiration
ระบุว่าทรัพยากรนี้จะหมดอายุเมื่อใด expiration
ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
expireTime
string (Timestamp
format)
การประทับเวลาในเขตเวลา UTC ที่ถือว่าทรัพยากรนี้หมดอายุแล้ว ข้อมูลนี้จะแสดงในเอาต์พุตเสมอ ไม่ว่าจะส่งข้อมูลใดในอินพุตก็ตาม
การประทับเวลาในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและทศนิยมสูงสุด 9 หลัก ตัวอย่างเช่น "2014-10-02T15:01:23Z"
และ "2014-10-02T15:01:23.045123456Z"
ttl
string (Duration
format)
อินพุตเท่านั้น TTL ใหม่สำหรับทรัพยากรนี้ ป้อนเท่านั้น
ระยะเวลาเป็นวินาทีที่มีเศษทศนิยมได้สูงสุด 9 หลัก โดยลงท้ายด้วย "s
" เช่น "3.5s"
name
string
ไม่บังคับ ตัวระบุ ชื่อทรัพยากรที่อ้างถึงเนื้อหาที่แคชไว้ รูปแบบ: cachedContents/{id}
displayName
string
ไม่บังคับ เปลี่ยนแปลงไม่ได้ ชื่อที่แสดงที่สื่อความหมายซึ่งผู้ใช้สร้างขึ้นสำหรับเนื้อหาที่แคชไว้ อักขระ Unicode สูงสุด 128 ตัว
model
string
ต้องระบุ เปลี่ยนแปลงไม่ได้ ชื่อของ Model
ที่จะใช้สำหรับเนื้อหาที่แคชไว้ รูปแบบ: models/{model}
systemInstruction
object (Content
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ คำสั่งของระบบชุดนักพัฒนาแอป ปัจจุบันมีเฉพาะข้อความเท่านั้น
toolConfig
object (ToolConfig
)
ไม่บังคับ อินพุตเท่านั้น เปลี่ยนแปลงไม่ได้ การกำหนดค่าเครื่องมือ การกำหนดค่านี้แชร์กับเครื่องมือทั้งหมด
การแสดง JSON |
---|
{ "contents": [ { object ( |
เนื้อหา
ประเภท Structured Data พื้นฐานที่มีเนื้อหาหลายส่วนของข้อความ
Content
ประกอบด้วยช่อง role
ที่ระบุผู้ผลิต Content
และฟิลด์ parts
ที่มีข้อมูลหลายส่วนซึ่งมีเนื้อหาของการเปลี่ยนข้อความ
parts[]
object (Part
)
Parts
ที่มีลําดับซึ่งประกอบกันเป็นข้อความเดียว ชิ้นส่วนต่างๆ อาจมีประเภท MIME แตกต่างกัน
role
string
ไม่บังคับ ผู้สร้างเนื้อหา ต้องเป็น "user" หรือ "model"
มีประโยชน์สำหรับการตั้งค่าการสนทนาแบบหลายรอบ หรือจะเว้นว่างไว้หรือไม่ตั้งค่าก็ได้
การแสดง JSON |
---|
{
"parts": [
{
object ( |
ส่วน
ประเภทข้อมูลที่มีสื่อซึ่งเป็นส่วนหนึ่งของข้อความ Content
ที่มีหลายส่วน
Part
ประกอบด้วยข้อมูลซึ่งมีประเภทข้อมูลที่เชื่อมโยงกัน Part
จะมีประเภทที่ยอมรับใน Part.data
ได้เพียง 1 ประเภทเท่านั้น
Part
ต้องมีประเภท MIME ของ IANA แบบคงที่ซึ่งระบุประเภทและประเภทย่อยของสื่อ หากช่อง inlineData
เต็มไปด้วยไบต์ดิบ
ฟิลด์สหภาพ data
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 |
---|
{ // Union field |
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
สําหรับวลีถัดไปของโมเดล
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: ทศนิยม ประเภท INTEGER: int32, int64 สำหรับประเภท STRING: enum
description
string
ไม่บังคับ คำอธิบายสั้นๆ เกี่ยวกับพารามิเตอร์ ซึ่งอาจรวมถึงตัวอย่างการใช้งาน คำอธิบายพารามิเตอร์อาจอยู่ในรูปแบบมาร์กดาวน์
nullable
boolean
ไม่บังคับ ระบุว่าค่าอาจเป็นค่า Null ได้หรือไม่
enum[]
string
ไม่บังคับ ค่าที่เป็นไปได้ขององค์ประกอบ Type.STRING ในรูปแบบ enum เช่น เราอาจกำหนด Enum Direction เป็น {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 |
ประเภทออบเจ็กต์ |
CodeExecution
ประเภทนี้ไม่มีช่อง
เครื่องมือที่จะเรียกใช้โค้ดที่โมเดลสร้างขึ้น และส่งผลลัพธ์ไปยังโมเดลโดยอัตโนมัติ
โปรดดูหัวข้อExecutableCode
และCodeExecutionResult
ซึ่งสร้างขึ้นเมื่อใช้เครื่องมือนี้เท่านั้น
ToolConfig
การกําหนดค่าเครื่องมือซึ่งมีพารามิเตอร์สําหรับระบุการใช้ Tool
ในคําขอ
functionCallingConfig
object (FunctionCallingConfig
)
ไม่บังคับ การกำหนดค่าการเรียกฟังก์ชัน
การแสดง JSON |
---|
{
"functionCallingConfig": {
object ( |
FunctionCallingConfig
การกำหนดค่าสำหรับการระบุพฤติกรรมการเรียกใช้ฟังก์ชัน
mode
enum (Mode
)
ไม่บังคับ ระบุโหมดที่การเรียกใช้ฟังก์ชันควรดำเนินการ หากไม่ระบุ ค่าเริ่มต้นจะเป็น AUTO
allowedFunctionNames[]
string
ไม่บังคับ ชุดชื่อฟังก์ชันที่จำกัดฟังก์ชันที่โมเดลจะเรียกใช้
ควรตั้งค่าเฉพาะเมื่อโหมดเป็น "ใดก็ได้" ชื่อฟังก์ชันควรตรงกับ [FunctionDeclaration.name] เมื่อตั้งค่าโหมดเป็น "ใดก็ได้" โมเดลจะคาดคะเนการเรียกใช้ฟังก์ชันจากชุดชื่อฟังก์ชันที่ระบุ
การแสดง JSON |
---|
{
"mode": enum ( |
โหมด
กําหนดลักษณะการดําเนินการสําหรับการเรียกใช้ฟังก์ชันโดยกําหนดโหมดการดําเนินการ
Enum | |
---|---|
MODE_UNSPECIFIED |
โหมดการเรียกใช้ฟังก์ชันที่ไม่ระบุ ไม่ควรใช้ค่านี้ |
AUTO |
ลักษณะการทํางานเริ่มต้นของโมเดล โมเดลจะตัดสินใจว่าจะคาดการณ์การเรียกใช้ฟังก์ชันหรือการตอบกลับด้วยภาษาธรรมชาติ |
ANY |
โมเดลถูกจำกัดให้คาดการณ์การเรียกใช้ฟังก์ชันเท่านั้นเสมอ หากตั้งค่า "allowedFunctionNames" การเรียกใช้ฟังก์ชันที่คาดการณ์จะจํากัดอยู่ที่ "allowedFunctionNames" รายการใดรายการหนึ่ง มิเช่นนั้นการเรียกใช้ฟังก์ชันที่คาดการณ์จะเป็น "functionDeclarations" รายการใดรายการหนึ่งที่ให้ไว้ |
NONE |
โมเดลจะไม่คาดการณ์การเรียกใช้ฟังก์ชันใดๆ ลักษณะการทำงานของโมเดลจะเหมือนกับเวลาที่ไม่ส่งการประกาศฟังก์ชันใดๆ |
UsageMetadata
ข้อมูลเมตาเกี่ยวกับการใช้เนื้อหาที่แคชไว้
totalTokenCount
integer
จํานวนโทเค็นทั้งหมดที่เนื้อหาที่แคชไว้ใช้
การแสดง JSON |
---|
{ "totalTokenCount": integer } |