Gemini API, uygulama geliştirme veya prototip oluşturma sürecinde kullanabileceğiniz bir programlama API'si olarak Gemma'ya barındırılan erişim sağlar. Bu API, üretken yapay zeka görevlerini işlemek için kendi yerel Gemma örneğinizi ve web hizmetinizi oluşturmaya uygun bir alternatiftir.
Aşağıdaki örnekte, Gemma'yı Gemini API ile kullanma şekli gösterilmektedir:
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'ye mobil, web ve bulut hizmetleri gibi birçok platformda ve birden fazla programlama diliyle erişebilirsiniz. Gemini API SDK paketleri hakkında daha fazla bilgi için Gemini API SDK indirmeleri sayfasına bakın. Gemini API'ye genel bir giriş için Gemini API hızlı başlangıç başlıklı makaleyi inceleyin.
Düşünen
Gemma 4, çok adımlı akıl yürütmesini optimize eden dahili bir "düşünme süreci" kullanır. Bu sayede, algoritmik kodlama ve gelişmiş matematiksel kanıtlar gibi mantıksal olarak zorlu alanlarda üstün performans sunar.
Gemma 4, bu özelliğin etkinleştirilmesini veya devre dışı bırakılmasını kesin olarak desteklese de düşünme düzeyini "high" olarak ayarlayarak API'de etkinleştirebilirsiniz.
Aşağıdaki örnekte düşünme sürecinin nasıl etkinleştirileceği gösterilmektedir:
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"
}
}
}'
Düşünme hakkında daha fazla bilgi edinin:
- Gemini API ile Düşünme (Genel giriş)
- Gemma Thinking (Gemma'ya özgü özellikler)
Görüntü Anlama
Gemma 4 modelleri, görüntüleri işleyebilir. Bu sayede, geçmişte alana özgü modeller gerektiren birçok yeni geliştirici kullanım alanı mümkün olur.
Aşağıdaki örnekte, Gemini API ile Gemma Image girişlerinin nasıl kullanılacağı gösterilmektedir:
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
Görsel Anlama hakkında daha fazla bilgi edinin:
- Gemini API ile görüntü yorumlama (Genel giriş)
- Gemma ile Resim Yorumlama (Gemma'ya özgü özellikler)