การฝังคือการแสดงตัวเลขของการป้อนข้อความ ช่วยเปิดกรณีการใช้งานเฉพาะที่หลากหลาย เช่น การจัดกลุ่ม การวัดความคล้ายคลึงกัน และการดึงข้อมูล ดูข้อมูลเบื้องต้นได้ในคู่มือการฝัง
เมธอด: model.embedContent
สร้างเวกเตอร์การฝังข้อความจากอินพุต Content
โดยใช้โมเดลการฝัง Gemini ที่ระบุ
ปลายทาง
โพสต์ https://generativelanguage.googleapis.com/v1beta/{model=models/*}:embedContentพารามิเตอร์เส้นทาง
model
string
ต้องระบุ ชื่อทรัพยากรของโมเดล ซึ่งจะเป็นรหัสสําหรับโมเดลที่จะใช้
ชื่อนี้ควรตรงกับชื่อโมเดลที่แสดงผลโดยเมธอด models.list
รูปแบบ: models/{model}
จะอยู่ในรูปแบบ models/{model}
เนื้อหาของคำขอ
เนื้อหาของคำขอมีข้อมูลที่มีโครงสร้างต่อไปนี้
content
object (Content
)
ต้องระบุ เนื้อหาที่จะฝัง ระบบจะนับเฉพาะช่อง parts.text
เท่านั้น
taskType
enum (TaskType
)
ไม่บังคับ ประเภทงานที่ไม่บังคับซึ่งจะใช้การฝัง ตั้งค่าได้เฉพาะ models/embedding-001
title
string
ไม่บังคับ ชื่อของข้อความ (ไม่บังคับ) ใช้ได้เมื่อ TaskType เป็น RETRIEVAL_DOCUMENT
เท่านั้น
หมายเหตุ: การระบุ title
สำหรับ RETRIEVAL_DOCUMENT
จะทำให้การฝังมีคุณภาพดีขึ้นสำหรับการดึงข้อมูล
outputDimensionality
integer
ไม่บังคับ ขนาดที่ลดลง (ไม่บังคับ) สำหรับการฝังเอาต์พุต หากมีการตั้งค่า ระบบจะตัดทอนค่าที่มากเกินไปในการฝังเอาต์พุตออกจากส่วนท้าย รองรับโดยรุ่นใหม่กว่าตั้งแต่ปี 2024 เท่านั้น คุณไม่สามารถตั้งค่านี้หากใช้รุ่นก่อนหน้า (models/embedding-001
)
ตัวอย่างคำขอ
Python
Node.js
เปลือกหอย
เนื้อหาการตอบกลับ
การตอบกลับ EmbedContentRequest
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
embedding
object (ContentEmbedding
)
เอาต์พุตเท่านั้น เนื้อหาที่ฝังซึ่งสร้างขึ้นจากเนื้อหาอินพุต
การแสดง JSON |
---|
{
"embedding": {
object ( |
เมธอด: models.batchEmbedContents
- ปลายทาง
- พารามิเตอร์เส้นทาง
- เนื้อหาคำขอ
- เนื้อหาการตอบกลับ
- ขอบเขตการให้สิทธิ์
- คําขอตัวอย่าง
- EmbedContentRequest
สร้างเวกเตอร์ที่ฝังหลายรายการจากอินพุต Content
ซึ่งประกอบด้วยกลุ่มสตริงที่แสดงเป็นออบเจ็กต์ EmbedContentRequest
ปลายทาง
โพสต์ https://generativelanguage.googleapis.com/v1beta/{model=models/*}:batchEmbedContentsพารามิเตอร์เส้นทาง
model
string
ต้องระบุ ชื่อทรัพยากรของโมเดล ซึ่งจะเป็นรหัสสําหรับโมเดลที่จะใช้
ชื่อนี้ควรตรงกับชื่อโมเดลที่แสดงผลโดยเมธอด models.list
รูปแบบ: models/{model}
จะอยู่ในรูปแบบ models/{model}
เนื้อหาของคำขอ
เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
requests[]
object (EmbedContentRequest
)
ต้องระบุ คำขอฝังสำหรับกลุ่ม โมเดลในคำขอเหล่านี้แต่ละรายการต้องตรงกับโมเดลที่ระบุ BatchEmbedContentsRequest.model
ตัวอย่างคำขอ
Python
Node.js
เปลือกหอย
เนื้อหาการตอบกลับ
การตอบกลับ BatchEmbedContentsRequest
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
embeddings[]
object (ContentEmbedding
)
เอาต์พุตเท่านั้น ชิ้นงานสําหรับคําขอแต่ละรายการตามลําดับเดียวกับที่ระบุไว้ในคําขอแบบเป็นกลุ่ม
การแสดง JSON |
---|
{
"embeddings": [
{
object ( |
EmbedContentRequest
คำขอที่มี Content
สำหรับโมเดลที่จะฝัง
model
string
ต้องระบุ ชื่อทรัพยากรของโมเดล ซึ่งจะเป็นรหัสสําหรับโมเดลที่จะใช้
ชื่อนี้ควรตรงกับชื่อโมเดลที่แสดงผลโดยเมธอด models.list
รูปแบบ: models/{model}
content
object (Content
)
ต้องระบุ เนื้อหาที่จะฝัง ระบบจะนับเฉพาะช่อง parts.text
เท่านั้น
taskType
enum (TaskType
)
ไม่บังคับ ประเภทงานที่ไม่บังคับซึ่งจะใช้การฝัง ตั้งค่าได้เฉพาะ models/embedding-001
title
string
ไม่บังคับ ชื่อของข้อความ (ไม่บังคับ) ใช้ได้เมื่อ TaskType เป็น RETRIEVAL_DOCUMENT
เท่านั้น
หมายเหตุ: การระบุ title
สำหรับ RETRIEVAL_DOCUMENT
จะทำให้การฝังมีคุณภาพดีขึ้นสำหรับการดึงข้อมูล
outputDimensionality
integer
ไม่บังคับ มิติข้อมูลที่ลดลง (ไม่บังคับ) สําหรับการฝังเอาต์พุต หากตั้งค่าไว้ ระบบจะตัดค่าที่เกินมาในการฝังเอาต์พุตจากส่วนท้าย รองรับเฉพาะรุ่นที่ใหม่กว่าตั้งแต่ปี 2024 เป็นต้นไป คุณไม่สามารถตั้งค่านี้ได้หากใช้รูปแบบก่อนหน้า (models/embedding-001
)
ContentEmbedding
รายการ Float ที่แสดงการฝัง
values[]
number
ค่าที่ฝัง
การแสดง JSON |
---|
{ "values": [ number ] } |
TaskType
ประเภทงานที่จะใช้การฝัง
Enum | |
---|---|
TASK_TYPE_UNSPECIFIED |
ค่าที่ไม่ได้ตั้งค่า ซึ่งจะเป็นค่าเริ่มต้นของค่า enum อื่นๆ |
RETRIEVAL_QUERY |
ระบุว่าข้อความที่ระบุเป็นการค้นหาในการตั้งค่าการค้นหา/การเรียกข้อมูล |
RETRIEVAL_DOCUMENT |
ระบุว่าข้อความที่ระบุเป็นเอกสารจากชุดข้อความที่ค้นหา |
SEMANTIC_SIMILARITY |
ระบุว่าจะใช้ข้อความที่ระบุสำหรับ STS |
CLASSIFICATION |
ระบุว่าข้อความที่ระบุจะได้รับการแยกประเภท |
CLUSTERING |
ระบุว่าจะมีการใช้การฝังสำหรับการจัดคลัสเตอร์ |
QUESTION_ANSWERING |
ระบุว่าจะใช้ข้อความที่ระบุในการตอบคำถาม |
FACT_VERIFICATION |
ระบุว่าจะใช้ข้อความที่ระบุสำหรับการยืนยันข้อเท็จจริง |