Chat Completions API פועל כנקודת קצה (endpoint) שתואמת ל-OpenAI, ומאפשרת להתממשק בקלות עם 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.
מודלים נתמכים
Chat Completions API תומך גם במודלים של Gemini וגם במודלים נבחרים בפריסה עצמית מ-Model Garden.
מודלי Gemini
המודלים הבאים תומכים ב-Chat Completions API:
לחצו כדי להרחיב את רשימת המודלים הנתמכים
מודלים בפריסה עצמית מ-Model Garden
אפשר להשתמש ב-Chat Completions API בקונטיינרים של Hugging Face Text Generation Interface (HF TGI) ושל Agent Platform Model Garden prebuilt vLLM. עם זאת, לא כל מודל שנפרס בקונטיינרים האלה תומך ב-Chat Completions API. בטבלה הבאה מפורטים המודלים הפופולריים ביותר שנתמכים לפי מאגר:
HF TGI |
vLLM |
|---|---|
פרמטרים נתמכים
במודלים של Google, ה-Chat Completions API תומך בפרמטרים הבאים של OpenAI. לתיאור של כל פרמטר, קראו את המאמר Creating chat completions במסמכי התיעוד של 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 שיכיל את כל התכונות הספציפיות של extra_body ב-Gemini.
{
...,
"extra_body": {
"google": {
...,
// Add extra_body features here.
}
}
}
safety_settings |
הערך הזה תואם ל-SafetySetting של Gemini.
|
cached_content |
השדה הזה תואם לשדה generateContent.cached_content ב-Gemini.
|
thinking_config |
הערך הזה תואם ל-GenerationConfig.ThinkingConfig של Gemini.
|
thought_tag_marker |
משמש להפרדת המחשבות של המודל מהתשובות שלו במודלים שבהם התכונה "מעמיק וחושב" זמינה. אם לא מציינים תגים, המודל לא יחזיר תגים סביב תהליך החשיבה שלו. אם הן קיימות, בשאילתות הבאות תגי המחשבה יוסרו והמחשבות יסומנו בהתאם להקשר. כך נשמר ההקשר המתאים לשאילתות הבאות. |
stream_function_call_arguments |
העברת ארגומנטים של בקשה להפעלת פונקציה כקטעי JSON. מידע נוסף זמין במאמר העברת ארגומנטים של בקשה להפעלת פונקציה בסטרימינג. |
tools |
מציינים כלים שדומים ל-`GenerateContent`. מידע נוסף זמין במאמר Tool. |
media_resolution |
מציינים רזולוציית מדיה ברמת הבקשה, בדומה ל-`GenerateContent`. מידע נוסף זמין במאמר
MediaResolution. |
התכונות של extra_content
extra_content מאפשר לכם לציין תוכן ספציפי ל-Gemini שלא צריך להתעלם ממנו.
מוסיפים שדה google שיכיל את כל התכונות הספציפיות של extra_content ב-Gemini.
{
...,
"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.