Chat Completions API פועל כנקודת קצה שתואמת ל-Open AI, והוא נועד להקל על האינטראקציה עם Gemini ב-Gemini Enterprise Agent Platform באמצעות ספריות OpenAI ל-Python ול-REST. אם אתם כבר משתמשים בספריות של OpenAI, אתם יכולים להשתמש ב-API הזה כדרך זולה לעבור בין קריאה למודלים של OpenAI לבין קריאה למודלים שמארחים ב-Agent Platform, כדי להשוות בין הפלט, העלות וההתאמה לשינויי נפח, בלי לשנות את הקוד הקיים. אם אתם לא משתמשים כבר בספריות של OpenAI, מומלץ להשתמש ב-Google Gen AI SDK. כדי להעביר את הקוד הקיים של OpenAI SDK לשימוש ב-Google Gen AI SDK, אפשר לעיין במאמר מעבר מ-OpenAI SDK ל-Google Gen AI SDK.
מודלים נתמכים
ממשק ה-API של Chat Completions תומך במודלים של Gemini ובמודלים נבחרים שניתן לפרוס באופן עצמאי מ-Model Garden.
המודלים של Gemini
המודלים הבאים תומכים ב-Chat Completions API:
כדי להרחיב את רשימת המודלים הנתמכים, לוחצים כאן
מודלים שפרסתם בעצמכם מ-Model Garden
Hugging Face Text Generation Interface (HF TGI) וקונטיינרים מוכנים מראש של vLLM ב-Agent Platform Model Garden תומכים ב-Chat Completions API. עם זאת, לא כל מודל שמוטמע במאגרי הנתונים האלה תומך ב-Chat Completions API. בטבלה הבאה מפורטים המודלים הנתמכים הכי פופולריים לפי מאגר:
HF TGI |
vLLM |
|---|---|
פרמטרים נתמכים
במודלים של Google, Chat Completions API תומך בפרמטרים הבאים של OpenAI. תיאור של כל פרמטר זמין במסמכי התיעוד של OpenAI בנושא יצירת השלמות של צ'אטים. התמיכה בפרמטרים במודלים של צד שלישי משתנה בהתאם למודל. כדי לראות אילו פרמטרים נתמכים, אפשר לעיין במסמכי התיעוד של המודל.
messages |
|
model |
|
detail |
במודלים ישנים יותר מ-Gemini 3, השדה detail חייב להיות עקבי בכל ההודעות והתכנים (הוא ברמת הבקשה). ב-Gemini 3 ואילך, זה מתאים ל-`media_resolution` ברמת החלק. מידע נוסף זמין במאמר בנושא רזולוציית מדיה.
|
max_completion_tokens |
כינוי ל-max_tokens. |
modalities |
תמיכה בערכים audio, image ו-text. |
max_tokens |
|
n |
|
frequency_penalty |
|
presence_penalty |
|
reasoning_effort |
הגדרת משך הזמן ומספר הטוקנים שמשמשים ליצירת תשובה.
reasoning_effort או extra_body.google.thinking_config.
|
response_format |
|
seed |
תואם ל-GenerationConfig.seed. |
stop |
|
stream |
|
temperature |
|
top_p |
|
tools |
|
tool_choice |
|
web_search_options |
תואם לכלי GoogleSearch. אין תמיכה באפשרויות משנה. |
function_call |
השדה הזה הוצא משימוש, אבל הוא נתמך לצורך תאימות לדורות קודמים. |
functions |
השדה הזה הוצא משימוש, אבל הוא נתמך לצורך תאימות לדורות קודמים. |
אם מעבירים פרמטר לא נתמך, המערכת מתעלמת ממנו.
פרמטרים של קלט מרובה מצבים
ממשק Chat Completions API תומך בקלט מולטימודאלי נבחר.
input_audio |
|
image_url |
|
באופן כללי, הפרמטר data יכול להיות URI או שילוב של סוג MIME ובייטים בקידוד base64 בפורמט "data:<MIME-TYPE>;base64,<BASE64-ENCODED-BYTES>".
רשימה מלאה של סוגי MIME זמינה במאמר GenerateContent.
מידע נוסף על קידוד base64 של OpenAI זמין במסמכי התיעוד שלהם.
דוגמאות לשימוש מופיעות במאמר בנושא קלט מולטי-מודאלי.
פרמטרים ספציפיים ל-Gemini
יש כמה תכונות שנתמכות על ידי Gemini אבל לא זמינות במודלים של OpenAI.
אפשר עדיין להעביר את התכונות האלה כפרמטרים, אבל הן צריכות להיות בתוך התגים extra_content או extra_body, אחרת המערכת תתעלם מהן.
תכונות של extra_body
כוללים google שדה שיכיל תכונות ספציפיות ל-Gemini
extra_body.
{
...,
"extra_body": {
"google": {
...,
// Add extra_body features here.
}
}
}
safety_settings |
ההגדרה הזו תואמת ל-Gemini
SafetySetting.
|
cached_content |
הערך הזה תואם לשדה Gemini
generateContent.cached_content.
|
thinking_config |
ההגדרה הזו תואמת ל-Gemini
GenerationConfig.ThinkingConfig.
|
thought_tag_marker |
משמש להפרדה בין המחשבות של המודל לבין התשובות שלו במודלים עם תכונת החשיבה. אם לא מציינים תגים, לא יוחזרו תגים סביב המחשבות של המודל. אם יש תגי מחשבות, השאילתות הבאות יסירו אותם ויסמנו את המחשבות בהתאם להקשר. כך נשמר ההקשר המתאים לשאילתות הבאות. |
stream_function_call_arguments |
הפונקציה Streams מחזירה את הארגומנטים של הקריאה כקטעים של JSON. מידע נוסף זמין במאמר בנושא העברת ארגומנטים של קריאות לפונקציות בסטרימינג. |
tools |
מציינים כלים דומים ל-`GenerateContent`. מידע נוסף זמין במאמר בנושא Tool. |
media_resolution |
מציינים רזולוציית מדיה ברמת הבקשה, בדומה ל-`GenerateContent`. מידע נוסף זמין במאמר בנושא
MediaResolution. |
תכונות של extra_content
extra_content מאפשרת לכם לציין תוכן ספציפי ל-Gemini שאסור להתעלם ממנו.
כוללים google שדה שיכיל תכונות ספציפיות ל-Gemini
extra_content.
{
...,
"extra_content": {
"google": {
...,
// Add extra_content features here.
}
}
}
thought |
השדה הזה מציין באופן מפורש אם שדה הוא מחשבה, והוא מקבל עדיפות על פני thought_tag_marker. הוא עוזר להבחין בין שלבים שונים בתהליך חשיבה, במיוחד בתרחישי שימוש בכלים שבהם אפשר לטעות ולחשוב ששלבי ביניים הם תשובות סופיות. על ידי תיוג של חלקים ספציפיים בקלט כ'מחשבות', אפשר להנחות את המודל להתייחס אליהם כאל חשיבה רציונלית פנימית ולא כאל תשובות שמוצגות למשתמשים. |
thought_signature |
שדה של בייטים שמספק חתימה של מחשבה לצורך אימות מול מחשבות שהוחזרו על ידי המודל. השדה הזה שונה מ-thought, שהוא שדה בוליאני. מידע נוסף זמין במאמר בנושא חתימות מחשבה. |
parts |
ספציפי להודעה של כלי להעברת חלקים של תשובת פונקציה מרובת-אופנים בחזרה למודל.
מידע נוסף זמין במאמרים
FunctionResponsePart ותגובה פונקציונלית מרובת-אופנים. |
המאמרים הבאים
- מידע נוסף על אימות ומתן הרשאות עם תחביר שתואם ל-OpenAI
- דוגמאות לקריאה ל-Chat Completions API עם תחביר שתואם ל-OpenAI.
- בדוגמאות הבאות מוצגות קריאות ל-Inference API עם תחביר שתואם ל-OpenAI.
- בדוגמאות הבאות מוסבר איך להפעיל את Function Calling API עם תחביר שתואם ל-OpenAI.
- מידע נוסף על Gemini API
- מידע נוסף על מעבר למודלים העדכניים של Gemini
- כדי להעביר את הקוד הקיים של OpenAI SDK לשימוש ב-Google Gen AI SDK, אפשר לעיין במאמר מעבר מ-OpenAI SDK ל-Google Gen AI SDK.