ממשק ה-API של Chat Completions פועל כנקודת קצה שתואמת ל-OpenAI, והוא נועד להקל על האינטראקציה עם Gemini ב-Gemini Enterprise Agent Platform באמצעות ספריות OpenAI ל-Python ול-REST. אם אתם כבר משתמשים בספריות של OpenAI, אתם יכולים להשתמש ב-API הזה כדרך זולה לעבור בין קריאה למודלים של OpenAI לבין קריאה למודלים שמארחים ב-Agent Platform, כדי להשוות בין הפלט, העלות והמדרגיות, בלי לשנות את הקוד הקיים. אם אתם לא משתמשים כבר בספריות של OpenAI, מומלץ להשתמש ב-SDK של Google Gen AI. כדי להעביר את קוד OpenAI SDK הקיים לשימוש ב-Google Gen AI SDK, אפשר לעיין במאמר מעבר מ-OpenAI SDK ל-Google Gen AI SDK.
מודלים נתמכים
ממשק ה-API של השלמות הצ'אט תומך במודלים של 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 |
הפונקציה מעבירה בחזרה את הארגומנטים של הקריאה לפונקציה כקטעים של 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
- מידע נוסף על מעבר מ-Azure OpenAI ל-Gemini API
- כדי להעביר את קוד OpenAI SDK הקיים לשימוש ב-Google Gen AI SDK, אפשר לעיין במאמר מעבר מ-OpenAI SDK ל-Google Gen AI SDK.