Gemini API รองรับการสร้างเนื้อหาด้วยรูปภาพ เสียง โค้ด เครื่องมือ และอื่นๆ อ่านรายละเอียดเกี่ยวกับฟีเจอร์แต่ละรายการเหล่านี้ต่อและดูโค้ดตัวอย่างที่มุ่งเน้นงาน หรืออ่านคู่มือที่ครอบคลุม
- การสร้างข้อความ
- วิสัยทัศน์
- เสียง
- บริบทแบบยาว
- การเรียกใช้โค้ด
- โหมด JSON
- การเรียกใช้ฟังก์ชัน
- วิธีการของระบบ
เมธอด: models.generateContent
สร้างการตอบสนองของโมเดลที่มีอินพุต GenerateContentRequest
โปรดดูคำแนะนำสำหรับการสร้างข้อความสำหรับข้อมูลการใช้งานโดยละเอียด ความสามารถในการป้อนข้อมูลจะแตกต่างกันไปในแต่ละรุ่น ซึ่งรวมถึงรุ่นที่ปรับแต่งแล้ว ดูรายละเอียดได้ในคู่มือรุ่นและคู่มือการปรับแต่ง
ปลายทาง
โพสต์ https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateContentพารามิเตอร์เส้นทาง
model
string
ต้องระบุ ชื่อของ Model
ที่จะใช้ในการสร้างการเสร็จสมบูรณ์
รูปแบบ: name=models/{model}
โดยจะมีรูปแบบเป็น models/{model}
เนื้อหาของคำขอ
เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
tools[]
object (Tool
)
ไม่บังคับ รายการ Tools
ที่ Model
อาจใช้เพื่อสร้างคำตอบถัดไป
Tool
คือโค้ดที่ช่วยให้ระบบโต้ตอบกับระบบภายนอกเพื่อดำเนินการหรือชุดการดำเนินการที่อยู่นอกเหนือความรู้และขอบเขตของ Model
Tool
ที่รองรับคือ Function
และ codeExecution
ดูข้อมูลเพิ่มเติมได้ที่คู่มือการเรียกใช้ฟังก์ชันและการเรียกใช้โค้ด
toolConfig
object (ToolConfig
)
ไม่บังคับ การกําหนดค่าเครื่องมือสําหรับ Tool
ที่ระบุไว้ในคําขอ ดูตัวอย่างการใช้งานได้ในคู่มือการเรียกใช้ฟังก์ชัน
safetySettings[]
object (SafetySetting
)
ไม่บังคับ รายการอินสแตนซ์ SafetySetting
ที่ไม่ซ้ำกันสำหรับการบล็อกเนื้อหาที่ไม่ปลอดภัย
นโยบายนี้จะบังคับใช้ในวันที่ GenerateContentRequest.contents
และ GenerateContentResponse.candidates
การตั้งค่าสำหรับ SafetyCategory
แต่ละประเภทไม่ควรมีมากกว่า 1 รายการ API จะบล็อกเนื้อหาและการตอบกลับที่ไม่เป็นไปตามเกณฑ์ที่กำหนดโดยการตั้งค่าเหล่านี้ รายการนี้จะลบล้างการตั้งค่าเริ่มต้นสำหรับ SafetyCategory
แต่ละรายการที่ระบุไว้ใน safetySettings หากไม่มี SafetySetting
สำหรับ SafetyCategory
ที่ระบุในรายการ API จะใช้การตั้งค่าความปลอดภัยเริ่มต้นสำหรับหมวดหมู่นั้น ระบบรองรับหมวดหมู่อันตราย HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT ดูข้อมูลโดยละเอียดเกี่ยวกับการตั้งค่าความปลอดภัยที่ใช้ได้ได้จากคู่มือ นอกจากนี้ โปรดดูคำแนะนำด้านความปลอดภัยเพื่อดูวิธีนำข้อควรพิจารณาด้านความปลอดภัยไปใช้กับแอปพลิเคชัน AI ของคุณ
systemInstruction
object (Content
)
ไม่บังคับ นักพัฒนาแอปตั้งค่าคำสั่งของระบบ ปัจจุบันมีเฉพาะข้อความเท่านั้น
generationConfig
object (GenerationConfig
)
ไม่บังคับ ตัวเลือกการกําหนดค่าสําหรับการสร้างโมเดลและเอาต์พุต
cachedContent
string
ไม่บังคับ ชื่อของเนื้อหาที่แคชเพื่อใช้เป็นบริบทในการแสดงการคาดคะเน รูปแบบ: cachedContents/{cachedContent}
ตัวอย่างคำขอ
ข้อความ
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
รูปภาพ
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
เสียง
Python
Node.js
เปลือกหอย
วิดีโอ
Python
Node.js
Go
เปลือกหอย
Python
เปลือกหอย
แชท
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
แคช
Python
Node.js
โมเดลที่ปรับแต่งแล้ว
Python
โหมด JSON
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
การดำเนินการกับโค้ด
Python
Kotlin
Java
การเรียกใช้ฟังก์ชัน
Python
Node.js
เปลือกหอย
Kotlin
Swift
Dart
Java
การกำหนดค่าการสร้าง
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
การตั้งค่าความปลอดภัย
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
วิธีการของระบบ
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีอินสแตนซ์ GenerateContentResponse
เมธอด: models.streamGenerateContent
สร้างคำตอบแบบสตรีมจากโมเดลที่ได้รับอินพุต GenerateContentRequest
ปลายทาง
โพสต์ https://generativelanguage.googleapis.com/v1beta/{model=models/*}:streamGenerateContentพารามิเตอร์เส้นทาง
model
string
ต้องระบุ ชื่อของ Model
ที่จะใช้ในการสร้างการเสร็จสมบูรณ์
รูปแบบ: name=models/{model}
โดยจะมีรูปแบบเป็น models/{model}
เนื้อหาของคำขอ
เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
tools[]
object (Tool
)
ไม่บังคับ รายการของ Tools
ที่ Model
อาจใช้เพื่อสร้างคำตอบถัดไป
Tool
คือโค้ดที่ช่วยให้ระบบโต้ตอบกับระบบภายนอกเพื่อดำเนินการหรือชุดการดำเนินการที่อยู่นอกเหนือความรู้และขอบเขตของ Model
Tool
ที่รองรับคือ Function
และ codeExecution
ดูข้อมูลเพิ่มเติมได้ที่คู่มือการเรียกใช้ฟังก์ชันและการเรียกใช้โค้ด
toolConfig
object (ToolConfig
)
ไม่บังคับ การกําหนดค่าเครื่องมือสําหรับ Tool
ที่ระบุไว้ในคําขอ ดูตัวอย่างการใช้งานได้ที่คู่มือการเรียกใช้ฟังก์ชัน
safetySettings[]
object (SafetySetting
)
ไม่บังคับ รายการอินสแตนซ์ SafetySetting
ที่ไม่ซ้ำกันสำหรับการบล็อกเนื้อหาที่ไม่ปลอดภัย
ซึ่งจะมีผลกับ GenerateContentRequest.contents
และ GenerateContentResponse.candidates
ประเภท SafetyCategory
แต่ละประเภทไม่ควรมีการตั้งค่ามากกว่า 1 รายการ API จะบล็อกเนื้อหาและการตอบกลับที่ไม่เป็นไปตามเกณฑ์ที่กำหนดโดยการตั้งค่าเหล่านี้ รายการนี้จะลบล้างการตั้งค่าเริ่มต้นสำหรับ SafetyCategory
แต่ละรายการที่ระบุไว้ใน safetySettings หากไม่มี SafetySetting
สำหรับ SafetyCategory
ที่ระบุในรายการ API จะใช้การตั้งค่าความปลอดภัยเริ่มต้นสำหรับหมวดหมู่นั้น ระบบรองรับหมวดหมู่อันตราย HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT ดูข้อมูลโดยละเอียดเกี่ยวกับการตั้งค่าความปลอดภัยที่ใช้ได้ได้จากคู่มือ นอกจากนี้ โปรดดูคำแนะนำด้านความปลอดภัยเพื่อดูวิธีนำข้อควรพิจารณาด้านความปลอดภัยไปใช้กับแอปพลิเคชัน AI ของคุณ
systemInstruction
object (Content
)
ไม่บังคับ คำสั่งของระบบที่นักพัฒนาแอปตั้งค่าไว้ ปัจจุบันมีเฉพาะข้อความเท่านั้น
generationConfig
object (GenerationConfig
)
ไม่บังคับ ตัวเลือกการกําหนดค่าสําหรับการสร้างโมเดลและเอาต์พุต
cachedContent
string
ไม่บังคับ ชื่อของเนื้อหาที่แคชไว้เพื่อใช้เป็นบริบทในการแสดงการคาดคะเน รูปแบบ: cachedContents/{cachedContent}
ตัวอย่างคำขอ
ข้อความ
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
รูปภาพ
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
เสียง
Python
เปลือกหอย
วิดีโอ
Python
Node.js
Go
เปลือกหอย
Python
เปลือกหอย
แชท
Python
Node.js
Go
เปลือกหอย
Kotlin
Swift
Dart
Java
เนื้อหาการตอบกลับ
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีสตรีมของอินสแตนซ์ GenerateContentResponse
GenerateContentResponse
การตอบกลับจากโมเดลที่รองรับคำตอบที่เป็นไปได้หลายรายการ
ระบบจะรายงานการจัดประเภทความปลอดภัยและการกรองเนื้อหาสำหรับทั้งพรอมต์ใน GenerateContentResponse.prompt_feedback
และสำหรับผู้สมัครแต่ละรายใน finishReason
และใน safetyRatings
API จะดำเนินการดังนี้ - แสดงผลลัพธ์ทั้งหมดที่ขอหรือไม่แสดงผลลัพธ์ใดๆ เลย - แสดงผลลัพธ์เป็น 0 เฉพาะในกรณีที่พรอมต์ไม่ถูกต้อง (ดู promptFeedback
) - รายงานความคิดเห็นเกี่ยวกับผู้สมัครแต่ละรายใน finishReason
และ safetyRatings
candidates[]
object (Candidate
)
คำตอบสำหรับผู้สมัครจากโมเดล
promptFeedback
object (PromptFeedback
)
แสดงความคิดเห็นของข้อความแจ้งที่เกี่ยวข้องกับตัวกรองเนื้อหา
usageMetadata
object (UsageMetadata
)
เอาต์พุตเท่านั้น ข้อมูลเมตาเกี่ยวกับการใช้โทเค็นของคำขอสร้าง
การแสดง JSON |
---|
{ "candidates": [ { object ( |
PromptFeedback
ชุดข้อมูลเมตาของความคิดเห็นที่พรอมต์ระบุใน GenerateContentRequest.content
blockReason
enum (BlockReason
)
ไม่บังคับ หากตั้งค่าไว้ ระบบจะบล็อกพรอมต์และจะไม่แสดงรายการที่ตรงกัน ปรับเปลี่ยนพรอมต์
safetyRatings[]
object (SafetyRating
)
คะแนนความปลอดภัยของพรอมต์ แต่ละหมวดหมู่มีการจัดประเภทได้ไม่เกิน 1 ประเภท
การแสดง JSON |
---|
{ "blockReason": enum ( |
BlockReason
ระบุเหตุผลที่บล็อกข้อความแจ้ง
Enum | |
---|---|
BLOCK_REASON_UNSPECIFIED |
ค่าเริ่มต้น ค่านี้ไม่ได้ใช้งาน |
SAFETY |
ระบบบล็อกพรอมต์เนื่องจากเหตุผลด้านความปลอดภัย ตรวจสอบ safetyRatings เพื่อดูว่าหมวดหมู่ความปลอดภัยใดบล็อกหมวดหมู่นั้น |
OTHER |
ข้อความแจ้งถูกบล็อกโดยไม่ทราบสาเหตุ |
BLOCKLIST |
ระบบบล็อกพรอมต์เนื่องจากมีคำที่อยู่ในรายการบล็อกคำศัพท์ |
PROHIBITED_CONTENT |
พรอมต์ถูกบล็อกเนื่องจากมีเนื้อหาต้องห้าม |
UsageMetadata
ข้อมูลเมตาเกี่ยวกับการใช้โทเค็นของคำขอการสร้าง
promptTokenCount
integer
จํานวนโทเค็นในพรอมต์ เมื่อตั้งค่า cachedContent
จะเป็นขนาดพรอมต์ที่มีประสิทธิภาพทั้งหมด ซึ่งรวมถึงจำนวนโทเค็นในเนื้อหาที่แคชไว้
cachedContentTokenCount
integer
จํานวนโทเค็นในส่วนที่แคชไว้ของพรอมต์ (เนื้อหาที่แคชไว้)
candidatesTokenCount
integer
จํานวนโทเค็นทั้งหมดของคําตอบที่เป็นไปได้ทั้งหมดที่สร้างขึ้น
totalTokenCount
integer
จำนวนโทเค็นทั้งหมดสำหรับคำขอสร้าง (พรอมต์ + ตัวเลือกคำตอบ)
การแสดง JSON |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "totalTokenCount": integer } |
ผู้สมัคร
- การแสดง JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- เว็บ
- GroundingSupport
- กลุ่ม
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- ผู้สมัคร
ตัวเลือกคำตอบที่สร้างขึ้นจากโมเดล
content
object (Content
)
เอาต์พุตเท่านั้น เนื้อหาที่สร้างขึ้นซึ่งแสดงผลจากโมเดล
finishReason
enum (FinishReason
)
ไม่บังคับ เอาต์พุตเท่านั้น สาเหตุที่โมเดลหยุดสร้างโทเค็น
หากเป็นค่าว่าง แสดงว่าโมเดลยังไม่ได้หยุดสร้างโทเค็น
safetyRatings[]
object (SafetyRating
)
รายการคะแนนความปลอดภัยของคำตอบที่เป็นไปได้
แต่ละหมวดหมู่มีการจัดประเภทได้ไม่เกิน 1 ประเภท
citationMetadata
object (CitationMetadata
)
เอาต์พุตเท่านั้น ข้อมูลการอ้างอิงของผู้สมัครที่โมเดลสร้างขึ้น
ช่องนี้อาจมีข้อมูลการบรรยายสำหรับข้อความที่อยู่ใน content
ข้อความเหล่านี้คือ "การท่อง" จากเนื้อหาที่มีลิขสิทธิ์ในข้อมูลการฝึกอบรมของ LLM พื้นฐาน
tokenCount
integer
เอาต์พุตเท่านั้น จํานวนโทเค็นของรายการนี้
groundingAttributions[]
object (GroundingAttribution
)
เอาต์พุตเท่านั้น ข้อมูลการระบุแหล่งที่มาของแหล่งข้อมูลที่มีส่วนทำให้เกิดคำตอบที่อิงตามข้อมูล
ช่องนี้ระบุค่าไว้สำหรับการโทร GenerateAnswer
ครั้ง
groundingMetadata
object (GroundingMetadata
)
เอาต์พุตเท่านั้น ข้อมูลเมตาพื้นฐานสำหรับผู้สมัคร
ช่องนี้จะแสดงข้อมูลสำหรับสาย GenerateContent
avgLogprobs
number
เอาต์พุตเท่านั้น
logprobsResult
object (LogprobsResult
)
เอาต์พุตเท่านั้น คะแนนความน่าจะเป็นเชิงสถิติสำหรับโทเค็นคำตอบและโทเค็นยอดนิยม
index
integer
เอาต์พุตเท่านั้น ดัชนีของผู้สมัครในรายการผู้สมัครตอบกลับ
การแสดง JSON |
---|
{ "content": { object ( |
FinishReason
ระบุสาเหตุที่โมเดลหยุดสร้างโทเค็น
Enum | |
---|---|
FINISH_REASON_UNSPECIFIED |
ค่าเริ่มต้น ค่านี้ไม่ได้ใช้งาน |
STOP |
จุดสิ้นสุดตามปกติของโมเดลหรือลําดับการหยุดที่ระบุ |
MAX_TOKENS |
มีโทเค็นถึงจำนวนสูงสุดตามที่ระบุไว้ในคำขอแล้ว |
SAFETY |
เนื้อหาที่เป็นไปได้สำหรับคำตอบถูกแจ้งว่าไม่เหมาะสมเนื่องจากเหตุผลด้านความปลอดภัย |
RECITATION |
ระบบแจ้งว่าเนื้อหาของผู้สมัครคำตอบไม่เหมาะสมเนื่องจากเหตุผลในการบรรยาย |
LANGUAGE |
เนื้อหาคำตอบที่เป็นไปได้ถูกแจ้งว่าไม่เหมาะสมเนื่องจากใช้ภาษาที่ไม่รองรับ |
OTHER |
ไม่ทราบสาเหตุ |
BLOCKLIST |
การสร้างโทเค็นหยุดลงเนื่องจากเนื้อหามีคำต้องห้าม |
PROHIBITED_CONTENT |
การสร้างโทเค็นหยุดลงเนื่องจากอาจมีการเผยแพร่เนื้อหาต้องห้าม |
SPII |
ระบบหยุดการสร้างโทเค็นเนื่องจากเนื้อหาอาจมีข้อมูลส่วนบุคคลที่ละเอียดอ่อนและระบุตัวบุคคลนั้นได้ (SPII) |
MALFORMED_FUNCTION_CALL |
การเรียกใช้ฟังก์ชันที่โมเดลสร้างขึ้นไม่ถูกต้อง |
GroundingAttribution
การระบุแหล่งที่มาของแหล่งข้อมูลที่มีส่วนทำให้เกิดคำตอบ
sourceId
object (AttributionSourceId
)
เอาต์พุตเท่านั้น ตัวระบุแหล่งที่มาที่มีส่วนร่วมในการระบุแหล่งที่มานี้
content
object (Content
)
เนื้อหาแหล่งที่มาที่เป็นต้นทางของการระบุแหล่งที่มานี้
การแสดง JSON |
---|
{ "sourceId": { object ( |
AttributionSourceId
ตัวระบุแหล่งที่มาที่มีส่วนร่วมในการระบุแหล่งที่มานี้
ฟิลด์สหภาพ source
source
ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
groundingPassage
object (GroundingPassageId
)
ตัวระบุสำหรับข้อความย่อยในบรรทัด
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
ตัวระบุของ Chunk
ที่ดึงข้อมูลผ่าน Semantic Retriever
การแสดง JSON |
---|
{ // Union field |
GroundingPassageId
ตัวระบุของชิ้นส่วนภายใน GroundingPassage
passageId
string
เอาต์พุตเท่านั้น รหัสข้อความที่ตรงกับ GroundingPassage.id
ของ GenerateAnswerRequest
partIndex
integer
เอาต์พุตเท่านั้น ดัชนีของส่วนภายใน GroundingPassage.content
ของ GenerateAnswerRequest
การแสดง JSON |
---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
ตัวระบุสำหรับ Chunk
ที่ดึงข้อมูลผ่าน Semantic Retriever ที่ระบุไว้ใน GenerateAnswerRequest
โดยใช้ SemanticRetrieverConfig
source
string
เอาต์พุตเท่านั้น ชื่อแหล่งที่มาที่ตรงกับ SemanticRetrieverConfig.source
ของคําขอ ตัวอย่าง: corpora/123
หรือ corpora/123/documents/abc
chunk
string
เอาต์พุตเท่านั้น ชื่อของ Chunk
ที่มีข้อความระบุแหล่งที่มา ตัวอย่าง: corpora/123/documents/abc/chunks/xyz
การแสดง JSON |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
ข้อมูลเมตาที่แสดงผลกับไคลเอ็นต์เมื่อเปิดใช้การกราวด์
groundingChunks[]
object (GroundingChunk
)
รายการข้อมูลอ้างอิงสนับสนุนที่ดึงมาจากแหล่งข้อมูลอ้างอิงที่กำหนด
groundingSupports[]
object (GroundingSupport
)
รายการการรองรับการต่อสายกราวด์
webSearchQueries[]
string
คำค้นหาของ Web Search สำหรับการค้นหาเว็บที่ตามมา
searchEntryPoint
object (SearchEntryPoint
)
ไม่บังคับ รายการการค้นหาของ Google สําหรับการค้นหาเว็บที่ตามมา
retrievalMetadata
object (RetrievalMetadata
)
ข้อมูลเมตาที่เกี่ยวข้องกับการดึงข้อมูลในขั้นตอนการกราวด์
การแสดง JSON |
---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
จุดแรกเข้าของ Google Search
renderedContent
string
ไม่บังคับ ข้อมูลโค้ดเนื้อหาเว็บที่ฝังอยู่ในหน้าเว็บหรือ WebView ของแอปได้
sdkBlob
string (bytes format)
ไม่บังคับ JSON ที่เข้ารหัส Base64 ซึ่งแสดงอาร์เรย์ของคู่ <ข้อความค้นหา, URL ค้นหา>
สตริงที่เข้ารหัส Base64
การแสดง JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Chunk พื้นฐาน
chunk_type
ประเภทข้อมูล chunk_type
ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้
web
object (Web
)
ข้อมูลพื้นฐานจากเว็บ
การแสดง JSON |
---|
{ // Union field |
เว็บ
ข้อมูลบางส่วนจากเว็บ
uri
string
ข้อมูลอ้างอิง URI ของข้อมูล
title
string
ชื่อของกลุ่ม
การแสดง JSON |
---|
{ "uri": string, "title": string } |
GroundingSupport
การสนับสนุนการต่อสายกราวด์
groundingChunkIndices[]
integer
รายการดัชนี (ใน "grounding_chunk") ที่ระบุการอ้างอิงที่เกี่ยวข้องกับการอ้างสิทธิ์ เช่น [1,3,4] หมายความว่า grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] คือเนื้อหาที่ดึงมาซึ่งมีการระบุแหล่งที่มาว่ามาจากการอ้างสิทธิ์
confidenceScores[]
number
คะแนนความเชื่อมั่นของข้อมูลอ้างอิงการสนับสนุน อยู่ในช่วง 0 ถึง 1 โดย 1 คือมั่นใจมากที่สุด รายการนี้ต้องมีขนาดเท่ากับ groundingChunkIndices
segment
object (Segment
)
ส่วนเนื้อหาที่การสนับสนุนนี้เกี่ยวข้อง
การแสดง JSON |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
กลุ่ม
ส่วนของเนื้อหา
partIndex
integer
เอาต์พุตเท่านั้น ดัชนีของออบเจ็กต์ Part ภายในออบเจ็กต์ Content ระดับบนสุด
startIndex
integer
เอาต์พุตเท่านั้น ดัชนีเริ่มต้นในส่วนที่ระบุ ซึ่งวัดเป็นไบต์ ออฟเซ็ตจากจุดเริ่มต้นของพาร์ท รวมด้วย โดยเริ่มต้นที่ 0
endIndex
integer
เอาต์พุตเท่านั้น ดัชนีสิ้นสุดในส่วนที่ระบุ ซึ่งวัดเป็นไบต์ ส่วนต่างจากจุดเริ่มต้นของส่วน โดยเริ่มที่ 0
text
string
เอาต์พุตเท่านั้น ข้อความที่ตรงกับเซกเมนต์จากคำตอบ
การแสดง JSON |
---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
ข้อมูลเมตาที่เกี่ยวข้องกับการดึงข้อมูลในขั้นตอนพื้นฐาน
googleSearchDynamicRetrievalScore
number
ไม่บังคับ คะแนนที่บ่งบอกถึงความเป็นไปได้ที่ข้อมูลจาก Google Search จะช่วยตอบพรอมต์ คะแนนอยู่ในช่วง [0, 1] โดยที่ 0 หมายถึงมีแนวโน้มน้อยที่สุดและ 1 หมายถึงมีแนวโน้มมากที่สุด ระบบจะป้อนข้อมูลคะแนนนี้เมื่อเปิดใช้การเชื่อมโยงกับ Google Search และการดึงข้อมูลแบบไดนามิกเท่านั้น ระบบจะเปรียบเทียบกับเกณฑ์เพื่อพิจารณาว่าจะทริกเกอร์ Google Search หรือไม่
การแสดง JSON |
---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
ผลลัพธ์ Logprobs
topCandidates[]
object (TopCandidates
)
ความยาว = จํานวนขั้นตอนทั้งหมดในการถอดรหัส
chosenCandidates[]
object (Candidate
)
ความยาว = จํานวนขั้นตอนทั้งหมดในการถอดรหัส ผู้สมัครที่เลือกอาจอยู่ใน topCandidates หรือไม่ก็ได้
การแสดง JSON |
---|
{ "topCandidates": [ { object ( |
TopCandidates
ผู้สมัครที่มีความน่าจะเป็นของบันทึกสูงสุดในแต่ละขั้นตอนการถอดรหัส
candidates[]
object (Candidate
)
จัดเรียงตามความน่าจะเป็นเชิงลอจิสติกจากมากไปน้อย
การแสดง JSON |
---|
{
"candidates": [
{
object ( |
ผู้สมัคร
ผู้สมัครสำหรับโทเค็นและคะแนน logprobs
token
string
ค่าสตริงโทเค็นของผู้สมัคร
tokenId
integer
ค่ารหัสโทเค็นของผู้สมัคร
logProbability
number
ความน่าจะเป็นในบันทึกของผู้สมัคร
การแสดง JSON |
---|
{ "token": string, "tokenId": integer, "logProbability": number } |
CitationMetadata
คอลเล็กชันการระบุแหล่งที่มาของเนื้อหาชิ้นหนึ่ง
citationSources[]
object (CitationSource
)
การอ้างอิงแหล่งที่มาของคำตอบที่เฉพาะเจาะจง
การแสดง JSON |
---|
{
"citationSources": [
{
object ( |
CitationSource
การอ้างอิงแหล่งที่มาสำหรับส่วนหนึ่งของคำตอบที่เฉพาะเจาะจง
startIndex
integer
ไม่บังคับ จุดเริ่มต้นของส่วนการตอบกลับที่มาจากแหล่งที่มานี้
ดัชนีระบุจุดเริ่มต้นของกลุ่ม ซึ่งวัดเป็นไบต์
endIndex
integer
ไม่บังคับ สิ้นสุดกลุ่มที่มีการระบุแหล่งที่มา ไม่รวม
uri
string
ไม่บังคับ URI ที่มีการระบุแหล่งที่มาเป็นแหล่งที่มาของข้อความบางส่วน
license
string
ไม่บังคับ ใบอนุญาตสำหรับโปรเจ็กต์ GitHub ที่มีการระบุแหล่งที่มาว่าเป็นแหล่งที่มาของกลุ่ม
คุณต้องระบุข้อมูลใบอนุญาตสำหรับการอ้างอิงโค้ด
การแสดง JSON |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
ตัวเลือกการกําหนดค่าสําหรับการสร้างโมเดลและเอาต์พุต พารามิเตอร์บางรายการอาจกำหนดค่าไม่ได้สำหรับบางรุ่น
stopSequences[]
string
ไม่บังคับ ชุดลำดับอักขระ (สูงสุด 5 ชุด) ที่จะหยุดการสร้างเอาต์พุต หากระบุไว้ API จะหยุดเมื่อ stop_sequence
ปรากฏขึ้นครั้งแรก ลำดับการหยุดจะไม่รวมอยู่ในคำตอบ
responseMimeType
string
ไม่บังคับ ประเภท MIME ของข้อความตัวเลือกที่สร้างขึ้น ประเภท MIME ที่รองรับ ได้แก่ text/plain
: (ค่าเริ่มต้น) เอาต์พุตข้อความ application/json
: การตอบกลับ JSON ในคำตอบที่เป็นไปได้ text/x.enum
: ENUM เป็นการตอบสนองสตริงในตัวเลือกการตอบกลับ โปรดไปที่เอกสารเพื่อดูรายการประเภท MIME ของข้อความที่รองรับทั้งหมด
responseSchema
object (Schema
)
ไม่บังคับ สคีมาเอาต์พุตของข้อความตัวเลือกที่สร้างขึ้น สคีมาต้องเป็นชุดย่อยของสคีมา OpenAPI และอาจเป็นออบเจ็กต์ พรอมต์ หรืออาร์เรย์
หากตั้งค่า responseMimeType
ที่เข้ากันได้ไว้แล้ว ก็จะต้องตั้งค่า responseMimeType
ที่เข้ากันได้ด้วย ประเภท MIME ที่ใช้ร่วมกันได้: application/json
: สคีมาสำหรับการตอบสนอง JSON ดูรายละเอียดเพิ่มเติมได้ที่คู่มือการสร้างข้อความ JSON
candidateCount
integer
ไม่บังคับ จํานวนคำตอบที่สร้างขึ้นที่จะแสดง
ปัจจุบันค่านี้ตั้งได้เพียง 1 เท่านั้น หากไม่ได้ตั้งค่า ค่าเริ่มต้นจะเป็น 1
maxOutputTokens
integer
ไม่บังคับ จำนวนโทเค็นสูงสุดที่จะรวมไว้ในคำตอบที่เป็นไปได้
หมายเหตุ: ค่าเริ่มต้นจะแตกต่างกันไปตามรุ่น โปรดดูแอตทริบิวต์ Model.output_token_limit
ของ Model
ที่แสดงผลจากฟังก์ชัน getModel
temperature
number
ไม่บังคับ ควบคุมความสุ่มของเอาต์พุต
หมายเหตุ: ค่าเริ่มต้นจะแตกต่างกันไปตามรุ่น โปรดดูแอตทริบิวต์ Model.temperature
ของ Model
ที่แสดงผลจากฟังก์ชัน getModel
ค่าที่ใช้ได้อยู่ในช่วง [0.0, 2.0]
topP
number
ไม่บังคับ ความน่าจะเป็นสะสมสูงสุดของโทเค็นที่จะพิจารณาเมื่อสุ่มตัวอย่าง
โมเดลนี้ใช้การสุ่มตัวอย่างแบบ Top-k และ Top-p (นิวเคลียส) รวมกัน
ระบบจะจัดเรียงโทเค็นตามความน่าจะเป็นที่กําหนดไว้เพื่อให้พิจารณาเฉพาะโทเค็นที่มีแนวโน้มมากที่สุดเท่านั้น การสุ่มตัวอย่าง Top-k จะจำกัดจำนวนโทเค็นสูงสุดที่จะพิจารณาโดยตรง ส่วนการสุ่มตัวอย่าง Nucleus จะจำกัดจำนวนโทเค็นตามความน่าจะเป็นสะสม
หมายเหตุ: ค่าเริ่มต้นจะแตกต่างกันไปตาม Model
และระบุโดยแอตทริบิวต์ Model.top_p
ที่แสดงผลจากฟังก์ชัน getModel
แอตทริบิวต์ topK
ที่ว่างเปล่าบ่งบอกว่าโมเดลไม่ได้ใช้การสุ่มตัวอย่าง Top-K และไม่อนุญาตให้ตั้งค่า topK
ในคำขอ
topK
integer
ไม่บังคับ จำนวนโทเค็นสูงสุดที่จะพิจารณาเมื่อสุ่มตัวอย่าง
โมเดล Gemini ใช้การสุ่มตัวอย่าง Top-p (นิวเคลียส) หรือการสุ่มตัวอย่าง Top-k ร่วมกับการสุ่มตัวอย่างนิวเคลียส การสุ่มตัวอย่าง Top-k จะพิจารณาชุดโทเค็นที่เป็นไปได้มากที่สุด topK
รายการ โมเดลที่ทำงานด้วยการสุ่มตัวอย่าง Nucleus ไม่อนุญาตให้ตั้งค่า topK
หมายเหตุ: ค่าเริ่มต้นจะแตกต่างกันไปตาม Model
และระบุโดยแอตทริบิวต์ Model.top_p
ที่แสดงผลจากฟังก์ชัน getModel
แอตทริบิวต์ topK
ที่ว่างเปล่าบ่งบอกว่าโมเดลไม่ได้ใช้การสุ่มตัวอย่าง Top-K และไม่อนุญาตให้ตั้งค่า topK
ในคำขอ
presencePenalty
number
ไม่บังคับ บทลงโทษการปรากฏมีผลกับ logprobs ของโทเค็นถัดไปหากระบบเคยเห็นโทเค็นนั้นในการตอบกลับแล้ว
การลงโทษนี้จะเป็นแบบเปิด/ปิดแบบ 2 ค่า และไม่ขึ้นอยู่กับจำนวนครั้งที่ใช้โทเค็น (หลังจากครั้งแรก) ใช้ frequencyPenalty
เพื่อรับบทลงโทษที่เพิ่มขึ้นสำหรับการใช้งานแต่ละครั้ง
บทลงโทษเชิงบวกจะไม่สนับสนุนการใช้โทเค็นที่ใช้อยู่แล้วในการตอบกลับคำขอ ช่วยเพิ่มคลังศัพท์
บทลงโทษด้านลบจะส่งเสริมให้มีการใช้โทเค็นที่ใช้แล้วในการตอบ ทำให้คลังคำศัพท์ลดลง
frequencyPenalty
number
ไม่บังคับ การลดคะแนนความถี่ที่มีผลกับ logprobs ของโทเค็นถัดไป คูณด้วยจํานวนครั้งที่เห็นโทเค็นแต่ละรายการในการตอบกลับจนถึงตอนนี้
บทลงโทษเชิงบวกจะไม่สนับสนุนการใช้โทเค็นที่ใช้ไปแล้ว ตามสัดส่วนของจำนวนครั้งที่มีการใช้โทเค็น ยิ่งใช้โทเค็นมาก โมเดลก็จะยิ่งใช้โทเค็นดังกล่าวมากขึ้นเมื่อเพิ่มคำศัพท์ในคำตอบ
ข้อควรระวัง: การลดคะแนนเชิงลบจะกระตุ้นให้โมเดลนําโทเค็นมาใช้ซ้ำตามสัดส่วนจํานวนครั้งที่มีการใช้โทเค็น ค่าลบเล็กๆ จะลดคําศัพท์ของคําตอบ ค่าลบที่มากขึ้นจะทำให้โมเดลเริ่มใช้โทเค็นทั่วไปซ้ำๆ จนกว่าจะถึงขีดจำกัด maxOutputTokens
เช่น "...the the the the the..."
responseLogprobs
boolean
ไม่บังคับ หากเป็น "จริง" ระบบจะส่งออกผลลัพธ์ logprobs ในการตอบกลับ
logprobs
integer
ไม่บังคับ ใช้ได้เฉพาะในกรณีที่ responseLogprobs=True
ซึ่งจะตั้งค่าจำนวน logprobs ยอดนิยมที่จะแสดงในแต่ละขั้นตอนการถอดรหัสใน Candidate.logprobs_result
การแสดง JSON |
---|
{
"stopSequences": [
string
],
"responseMimeType": string,
"responseSchema": {
object ( |
HarmCategory
หมวดหมู่ของการจัดประเภท
หมวดหมู่เหล่านี้ครอบคลุมอันตรายหลายประเภทที่นักพัฒนาแอปอาจต้องการปรับเปลี่ยน
Enum | |
---|---|
HARM_CATEGORY_UNSPECIFIED |
ไม่ได้ระบุหมวดหมู่ |
HARM_CATEGORY_DEROGATORY |
PaLM - ความคิดเห็นเชิงลบหรือเป็นอันตรายที่มีเป้าหมายเป็นข้อมูลประจำตัวและ/หรือคุณลักษณะที่ได้รับการคุ้มครอง |
HARM_CATEGORY_TOXICITY |
PaLM - เนื้อหาที่หยาบคาย ไม่เคารพ หรือหยาบคาย |
HARM_CATEGORY_VIOLENCE |
PaLM - อธิบายสถานการณ์ที่แสดงถึงความรุนแรงต่อบุคคลหรือกลุ่มบุคคล หรือคำอธิบายทั่วไปเกี่ยวกับคราบเลือด |
HARM_CATEGORY_SEXUAL |
PaLM - มีการอ้างอิงถึงกิจกรรมทางเพศหรือเนื้อหาลามกอื่นๆ |
HARM_CATEGORY_MEDICAL |
PaLM - โปรโมตคำแนะนำทางการแพทย์ที่ไม่ได้รับการตรวจสอบ |
HARM_CATEGORY_DANGEROUS |
PaLM - เนื้อหาที่เป็นอันตรายซึ่งส่งเสริม สนับสนุน หรือก่อให้เกิดการกระทําที่เป็นอันตราย |
HARM_CATEGORY_HARASSMENT |
Gemini - เนื้อหาการคุกคาม |
HARM_CATEGORY_HATE_SPEECH |
Gemini - วาจาสร้างความเกลียดชังและเนื้อหา |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
Gemini - เนื้อหาเกี่ยวกับเรื่องเพศอย่างโจ่งแจ้ง |
HARM_CATEGORY_DANGEROUS_CONTENT |
Gemini - เนื้อหาที่เป็นอันตราย |
HARM_CATEGORY_CIVIC_INTEGRITY |
Gemini - เนื้อหาที่อาจนำไปใช้เพื่อทำลายความสุจริตของพลเมือง |
SafetyRating
คะแนนความปลอดภัยของเนื้อหา
คะแนนความปลอดภัยประกอบด้วยหมวดหมู่อันตรายและระดับความน่าจะเป็นของอันตรายในหมวดหมู่นั้นสำหรับเนื้อหานั้นๆ เนื้อหาได้รับการจัดประเภทเพื่อความปลอดภัยในหลากหลายหมวดหมู่อันตราย และรวมความน่าจะเป็นของการจัดประเภทอันตรายไว้ที่นี่
category
enum (HarmCategory
)
ต้องระบุ หมวดหมู่ของคะแนนนี้
probability
enum (HarmProbability
)
ต้องระบุ ความน่าจะเป็นที่เนื้อหานี้จะก่อให้เกิดอันตราย
blocked
boolean
เนื้อหานี้ถูกบล็อกเนื่องจากการจัดประเภทนี้ใช่ไหม
การแสดง JSON |
---|
{ "category": enum ( |
HarmProbability
ความเป็นไปได้ที่เนื้อหาหนึ่งๆ จะเป็นอันตราย
ระบบการจัดประเภทจะระบุความน่าจะเป็นที่เนื้อหาจะไม่ปลอดภัย ซึ่งไม่ได้บ่งบอกถึงความรุนแรงของอันตรายในเนื้อหา
Enum | |
---|---|
HARM_PROBABILITY_UNSPECIFIED |
ไม่ได้ระบุความน่าจะเป็น |
NEGLIGIBLE |
เนื้อหามีความเสี่ยงต่ำที่จะไม่ปลอดภัย |
LOW |
เนื้อหามีโอกาสไม่ปลอดภัยต่ำ |
MEDIUM |
เนื้อหามีโอกาสไม่ปลอดภัยปานกลาง |
HIGH |
เนื้อหามีแนวโน้มที่จะไม่ปลอดภัยสูง |
SafetySetting
การตั้งค่าความปลอดภัยที่ส่งผลต่อลักษณะการบล็อกเพื่อความปลอดภัย
การส่งการตั้งค่าความปลอดภัยสำหรับหมวดหมู่หนึ่งๆ จะเปลี่ยนความน่าจะเป็นที่ระบบจะบล็อกเนื้อหา
category
enum (HarmCategory
)
ต้องระบุ หมวดหมู่ของการตั้งค่านี้
threshold
enum (HarmBlockThreshold
)
ต้องระบุ ควบคุมเกณฑ์ความน่าจะเป็นที่ระบบจะบล็อกเนื้อหาที่เป็นอันตราย
การแสดง JSON |
---|
{ "category": enum ( |
HarmBlockThreshold
บล็อกเมื่อถึงและเกินความน่าจะเป็นอันตรายที่ระบุ
Enum | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
ไม่ได้ระบุเกณฑ์ |
BLOCK_LOW_AND_ABOVE |
เนื้อหาที่มีค่า NEGLIGIBLE จะได้รับการอนุญาต |
BLOCK_MEDIUM_AND_ABOVE |
โดยจะอนุญาตให้แสดงเนื้อหาที่มี "ไม่มี" และ "ต่ำ" |
BLOCK_ONLY_HIGH |
เนื้อหาที่มีระดับ "ไม่มีนัยสำคัญ" "ต่ำ" และ "ปานกลาง" จะได้รับการอนุญาต |
BLOCK_NONE |
อนุญาตเนื้อหาทั้งหมด |
OFF |
ปิดตัวกรองความปลอดภัย |