הטמעות הן ייצוג מספרי של קלט טקסט, שמאפשרות מספר תרחישי שימוש ייחודיים, כמו אשכולות, מדידת דמיון ואחזור מידע. למבוא, אפשר לעיין במדריך להטמעות.
בניגוד למודלים של AI גנרטיבי שיוצרים תוכן חדש, מודל ה-Embedding של Gemini נועד רק להמיר את פורמט נתוני הקלט לייצוג מספרי. Google אחראית לספק מודל הטמעה שממיר את הפורמט של נתוני הקלט לפורמט המספרי המבוקש, אבל המשתמשים נושאים באחריות מלאה לנתונים שהם מזינים ולהטמעות שמתקבלות. השימוש במודל Gemini Embedding מבטא את האישור שלכם לכך שיש לכם את הזכויות הנדרשות על התוכן שאתם מעלים. אסור ליצור תוכן שמפר את זכויות הקניין הרוחני או זכויות הפרטיות של אחרים. השימוש בשירות הזה כפוף למדיניות שלנו בנושא שימוש אסור ולתנאים ולהגבלות של Google.
שיטה: models.embedContent
יוצר וקטור הטמעה של טקסט מהקלט Content
באמצעות מודל ההטמעה של Gemini שצוין.
נקודת קצה
posthttps: / /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
Go
קונכייה
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע של EmbedContentResponse
.
שיטה: models.batchEmbedContents
יוצרת כמה וקטורים של הטמעה מהקלט Content
שמורכב מחבילה של מחרוזות שמיוצגות כאובייקטים EmbedContentRequest
.
נקודת קצה
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedContents
פרמטרים של נתיב
model
string
חובה. שם המשאב של המודל. המזהה הזה משמש את המודל.
השם הזה צריך להיות זהה לשם של מודל שמוחזר על ידי השיטה models.list
.
פורמט: models/{model}
הוא מופיע בצורה models/{model}
.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
requests[]
object (EmbedContentRequest
)
חובה. הטמעת בקשות באצווה. המודל בכל אחת מהבקשות האלה צריך להיות זהה למודל שצוין BatchEmbedContentsRequest.model
.
דוגמה לבקשה
Python
Node.js
Go
קונכייה
גוף התשובה
התשובה לBatchEmbedContentsRequest
.
אם הפעולה מצליחה, גוף התגובה מכיל נתונים במבנה הבא:
embeddings[]
object (ContentEmbedding
)
פלט בלבד. ההטמעות של כל בקשה, באותו סדר שבו הן סופקו בבקשה מרובה.
ייצוג ב-JSON |
---|
{
"embeddings": [
{
object ( |
שיטה: models.asyncBatchEmbedContent
הבקשה מוסיפה לאצווה קבוצה של models.embedContent
בקשות לעיבוד באצווה. יש לנו handler ב-models.batchEmbedContents
ב-GenerativeService
, אבל הוא סונכרן. לכן אנחנו נותנים לו את השם Async
כדי למנוע בלבול.
נקודת קצה
posthttps: / /generativelanguage.googleapis.com /v1beta /{batch.model=models /*}:asyncBatchEmbedContent
פרמטרים של נתיב
batch.model
string
חובה. השם של Model
שבו רוצים להשתמש כדי ליצור את ההשלמה.
פורמט: models/{model}
הוא מקבל את הצורה models/{model}
.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
batch.name
string
פלט בלבד. מזהה. שם המשאב של הקבוצה.
פורמט: batches/{batchId}
batch.displayName
string
חובה. השם שהמשתמש נתן לקבוצה הזו.
batch.inputConfig
object (InputEmbedContentConfig
)
חובה. הגדרות הקלט של המופעים שבהם מתבצע עיבוד באצווה.
batch.output
object (EmbedContentBatchOutput
)
פלט בלבד. הפלט של הבקשה באצווה.
batch.createTime
string (Timestamp
format)
פלט בלבד. השעה שבה נוצרה קבוצת הפעולות.
הפונקציה משתמשת ב-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"
.
batch.endTime
string (Timestamp
format)
פלט בלבד. השעה שבה הסתיים עיבוד האצווה.
הפונקציה משתמשת ב-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"
.
batch.updateTime
string (Timestamp
format)
פלט בלבד. השעה שבה הקבוצה עודכנה לאחרונה.
הפונקציה משתמשת ב-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"
.
batch.batchStats
object (EmbedContentBatchStats
)
פלט בלבד. נתונים סטטיסטיים על האצווה.
batch.state
enum (BatchState
)
פלט בלבד. המצב של הקבוצה.
batch.priority
string (int64 format)
אופציונלי. העדיפות של הקבוצה. המערכת תעבד קבוצות עם ערך עדיפות גבוה יותר לפני קבוצות עם ערך עדיפות נמוך יותר. מותרים ערכים שליליים. ברירת המחדל היא 0.
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע של Operation
.
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
).
EmbedContentResponse
התשובה לEmbedContentRequest
.
embedding
object (ContentEmbedding
)
פלט בלבד. ההטמעה שנוצרה מתוכן הקלט.
ייצוג ב-JSON |
---|
{
"embedding": {
object ( |
ContentEmbedding
רשימה של מספרים ממשיים שמייצגים הטמעה.
values[]
number
ערכי ההטמעה.
ייצוג ב-JSON |
---|
{ "values": [ number ] } |
TaskType
סוג המשימה שבה ייעשה שימוש בהטמעה.
טיפוסים בני מנייה (enum) | |
---|---|
TASK_TYPE_UNSPECIFIED |
ערך לא מוגדר, שברירת המחדל שלו תהיה אחד מערכי ה-enum האחרים. |
RETRIEVAL_QUERY |
מציינת שהטקסט שצוין הוא שאילתה בהגדרה של חיפוש או אחזור. |
RETRIEVAL_DOCUMENT |
מציין שהטקסט שצוין הוא מסמך מתוך הקורפוס שמבוצע בו חיפוש. |
SEMANTIC_SIMILARITY |
מציינת שהטקסט שצוין ישמש ל-STS. |
CLASSIFICATION |
מציין שהטקסט הנתון יסווג. |
CLUSTERING |
מציינת שההטמעות ישמשו לאשכולות. |
QUESTION_ANSWERING |
מציין שהטקסט שצוין ישמש למענה על שאלות. |
FACT_VERIFICATION |
המדיניות קובעת שהטקסט שצוין ישמש לאימות עובדות. |
CODE_RETRIEVAL_QUERY |
מציין שהטקסט שצוין ישמש לאחזור קוד. |
EmbedContentBatch
- ייצוג ב-JSON
- InputEmbedContentConfig
- InlinedEmbedContentRequests
- InlinedEmbedContentRequest
- EmbedContentBatchOutput
- InlinedEmbedContentResponses
- InlinedEmbedContentResponse
- EmbedContentBatchStats
משאב שמייצג אצווה של EmbedContent
בקשות.
model
string
חובה. השם של Model
שבו רוצים להשתמש כדי ליצור את ההשלמה.
פורמט: models/{model}
name
string
פלט בלבד. מזהה. שם המשאב של הקבוצה.
פורמט: batches/{batchId}
displayName
string
חובה. השם שהמשתמש נתן לקבוצה הזו.
inputConfig
object (InputEmbedContentConfig
)
חובה. הגדרות הקלט של המופעים שבהם מתבצע עיבוד באצווה.
output
object (EmbedContentBatchOutput
)
פלט בלבד. הפלט של הבקשה באצווה.
createTime
string (Timestamp
format)
פלט בלבד. השעה שבה נוצרה קבוצת הפעולות.
הפונקציה משתמשת ב-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"
.
endTime
string (Timestamp
format)
פלט בלבד. השעה שבה הסתיים עיבוד האצווה.
הפונקציה משתמשת ב-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"
.
updateTime
string (Timestamp
format)
פלט בלבד. השעה שבה הקבוצה עודכנה לאחרונה.
הפונקציה משתמשת ב-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"
.
batchStats
object (EmbedContentBatchStats
)
פלט בלבד. נתונים סטטיסטיים על האצווה.
state
enum (BatchState
)
פלט בלבד. המצב של הקבוצה.
priority
string (int64 format)
אופציונלי. העדיפות של הקבוצה. המערכת תעבד קבוצות עם ערך עדיפות גבוה יותר לפני קבוצות עם ערך עדיפות נמוך יותר. מותרים ערכים שליליים. ברירת המחדל היא 0.
ייצוג ב-JSON |
---|
{ "model": string, "name": string, "displayName": string, "inputConfig": { object ( |
InputEmbedContentConfig
הגדרת הקלט לבקשה באצווה.
source
Union type
source
יכול להיות רק אחד מהערכים הבאים:fileName
string
שם הקטגוריה File
שמכילה את בקשות הקלט.
requests
object (InlinedEmbedContentRequests
)
הבקשות שיעובדו באצווה.
ייצוג ב-JSON |
---|
{
// source
"fileName": string,
"requests": {
object ( |
InlinedEmbedContentRequests
הבקשות שיעובדו באצווה, אם הן סופקו כחלק מבקשת יצירת האצווה.
requests[]
object (InlinedEmbedContentRequest
)
חובה. הבקשות שיעובדו באצווה.
ייצוג ב-JSON |
---|
{
"requests": [
{
object ( |
InlinedEmbedContentRequest
הבקשה שתעובד באצווה.
request
object (EmbedContentRequest
)
חובה. הבקשה שתעובד באצווה.
metadata
object (Struct
format)
אופציונלי. המטא-נתונים שרוצים לשייך לבקשה.
ייצוג ב-JSON |
---|
{
"request": {
object ( |
EmbedContentBatchOutput
הפלט של בקשה באצווה. הערך הזה מוחזר בשדה AsyncBatchEmbedContentResponse
או בשדה EmbedContentBatch.output
.
output
Union type
output
יכול להיות רק אחד מהערכים הבאים:responsesFile
string
פלט בלבד. מזהה הקובץ שמכיל את התשובות. הקובץ יהיה קובץ JSONL עם תגובה אחת בכל שורה. התשובות יהיו EmbedContentResponse
הודעות בפורמט JSON. התשובות ייכתבו באותו סדר של בקשות הקלט.
inlinedResponses
object (InlinedEmbedContentResponses
)
פלט בלבד. התשובות לבקשות באצווה. התשובה הזו מוחזרת כשהאצווה נוצרה באמצעות בקשות מוטמעות. סדר התשובות יהיה זהה לסדר הבקשות שהוזנו.
ייצוג ב-JSON |
---|
{
// output
"responsesFile": string,
"inlinedResponses": {
object ( |
InlinedEmbedContentResponses
התשובות לבקשות באצווה.
inlinedResponses[]
object (InlinedEmbedContentResponse
)
פלט בלבד. התשובות לבקשות באצווה.
ייצוג ב-JSON |
---|
{
"inlinedResponses": [
{
object ( |
InlinedEmbedContentResponse
התשובה לבקשה יחידה באצווה.
metadata
object (Struct
format)
פלט בלבד. המטא-נתונים שמשויכים לבקשה.
output
Union type
output
יכול להיות רק אחד מהערכים הבאים:error
object (Status
)
פלט בלבד. השגיאה שנתקלה במהלך עיבוד הבקשה.
response
object (EmbedContentResponse
)
פלט בלבד. התשובה לבקשה.
ייצוג ב-JSON |
---|
{ "metadata": { object }, // output "error": { object ( |
EmbedContentBatchStats
נתונים סטטיסטיים על האצווה.
requestCount
string (int64 format)
פלט בלבד. מספר הבקשות באצווה.
successfulRequestCount
string (int64 format)
פלט בלבד. מספר הבקשות שעובדו בהצלחה.
failedRequestCount
string (int64 format)
פלט בלבד. מספר הבקשות שלא הצליחו לעבור עיבוד.
pendingRequestCount
string (int64 format)
פלט בלבד. מספר הבקשות שעדיין בהמתנה לעיבוד.
ייצוג ב-JSON |
---|
{ "requestCount": string, "successfulRequestCount": string, "failedRequestCount": string, "pendingRequestCount": string } |