Gemini API מספק גישה מארחת ל-Gemma בתור API לתכנות שאפשר להשתמש בו בפיתוח אפליקציות או ביצירת אב טיפוס. ממשק ה-API הזה הוא חלופה נוחה להגדרה של מופע מקומי משלכם של Gemma ושירות אינטרנט לטיפול במשימות של AI גנרטיבי.
מודלים נתמכים
Gemini API תומך במודלים הבאים של Gemma 4:
gemma-4-31b-itgemma-4-26b-a4b-it
בדוגמה הבאה אפשר לראות איך משתמשים ב-Gemma עם Gemini API:
Python
from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
response = client.models.generate_content(
model="gemma-4-31b-it",
contents="Roses are red...",
)
print(response.text)
Node.js
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY"});
const response = await ai.models.generateContent({
model: "gemma-4-31b-it",
contents: "Roses are red...",
});
console.log(response.text);
REST
curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[{"text": "Roses are red..."}]
}]
}'
אפשר לגשת אל Gemini API בפלטפורמות רבות, כמו נייד, אינטרנט ושירותי ענן, וגם בשפות תכנות רבות. מידע נוסף על חבילות SDK של Gemini API זמין בדף הורדות של Gemini API SDK. מבוא כללי ל-Gemini API מופיע במאמר Gemini API quickstart.
העמקה
מודל Gemma 4 משתמש ב "תהליך חשיבה" פנימי שמבצע אופטימיזציה של ההיגיון הרב-שלבי שלו, ומספק ביצועים מעולים בתחומים שדורשים היגיון, כמו קידוד אלגוריתמי והוכחות מתמטיות מתקדמות.
ב-Gemma 4 אפשר רק להפעיל או להשבית את התכונה הזו, אבל כדי להפעיל אותה ב-API צריך להגדיר את רמת החשיבה ל-"high".
בדוגמה הבאה אפשר לראות איך מפעילים את תהליך החשיבה:
Python
from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
response = client.models.generate_content(
model="gemma-4-31b-it",
contents="What is the water formula?",
config=types.GenerateContentConfig(
thinking_config=types.ThinkingConfig(thinking_level="high")
),
)
print(response.text)
Node.js
import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY"});
const response = await ai.models.generateContent({
model: "gemma-4-31b-it",
contents: "What is the water formula?",
config: {
thinkingConfig: {
thinkingLevel: ThinkingLevel.HIGH,
},
},
});
console.log(response.text);
REST
curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[{"text": "What is the water formula?"}]
}],
"generationConfig": {
"thinkingConfig": {
"thinkingLevel": "high"
}
}
}'
מידע נוסף על חשיבה:
- Gemini API Thinking (מבוא כללי)
- Gemma Thinking (יכולות ספציפיות ל-Gemma)
הבנת תמונות
מודלים של Gemma 4 יכולים לעבד תמונות, וכך לאפשר למפתחים להשתמש בהם בתרחישים רבים שבעבר דרשו מודלים ספציפיים לתחום.
בדוגמה הבאה אפשר לראות איך משתמשים בקלט של תמונות Gemma עם Gemini API:
Python
from google import genai
client = genai.Client(api_key="YOUR_API_KEY")
my_file = client.files.upload(file="path/to/sample.jpg")
response = client.models.generate_content(
model="gemma-4-31b-it",
contents=[my_file, "Caption this image."],
)
print(response.text)
Node.js
import {
GoogleGenAI,
createUserContent,
createPartFromUri,
} from "@google/genai";
const ai = new GoogleGenAI({ apiKey: "YOUR_API_KEY" });
const myfile = await ai.files.upload({
file: "path/to/sample.jpg",
config: { mimeType: "image/jpeg" },
});
const response = await ai.models.generateContent({
model: "gemma-4-31b-it",
contents: createUserContent([
createPartFromUri(myfile.uri, myfile.mimeType),
"Caption this image.",
]),
});
console.log(response.text);
```
REST
IMAGE_PATH="cats-and-dogs.jpg"
MIME_TYPE=$(file -b --mime-type "${IMAGE_PATH}")
NUM_BYTES=$(wc -c < "${IMAGE_PATH}")
DISPLAY_NAME=IMAGE
tmp_header_file=upload-header.tmp
# Initial resumable request defining metadata.
# The upload url is in the response headers dump them to a file.
curl "https://generativelanguage.googleapis.com/upload/v1beta/files?key=YOUR_API_KEY" \
-D upload-header.tmp \
-H "X-Goog-Upload-Protocol: resumable" \
-H "X-Goog-Upload-Command: start" \
-H "X-Goog-Upload-Header-Content-Length: ${NUM_BYTES}" \
-H "X-Goog-Upload-Header-Content-Type: ${MIME_TYPE}" \
-H "Content-Type: application/json" \
-d "{'file': {'display_name': '${DISPLAY_NAME}'}}" 2> /dev/null
upload_url=$(grep -i "x-goog-upload-url: " "${tmp_header_file}" | cut -d" " -f2 | tr -d "\r")
rm "${tmp_header_file}"
# Upload the actual bytes.
curl "${upload_url}" \
-H "Content-Length: ${NUM_BYTES}" \
-H "X-Goog-Upload-Offset: 0" \
-H "X-Goog-Upload-Command: upload, finalize" \
--data-binary "@${IMAGE_PATH}" 2> /dev/null > file_info.json
file_uri=$(jq -r ".file.uri" file_info.json)
echo file_uri=$file_uri
# Now generate content using that file
curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-31b-it:generateContent?key=YOUR_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts":[
{"file_data":{"mime_type": "'"${MIME_TYPE}"'", "file_uri": "'"${file_uri}"'"}},
{"text": "Caption this image."}]
}]
}' 2> /dev/null > response.json
cat response.json
echo
jq -r ".candidates[].content.parts[].text" response.json
מידע נוסף על הבנת תמונות:
- הבנת תמונות ב-Gemini API (הקדמה כללית)
- הבנת תמונות באמצעות Gemma (יכולות ספציפיות ל-Gemma)