0% read

Cara Menggunakan API Gemma 4 (Python, cURL & JavaScript)

Apr 7, 2026

Jadi kamu sudah mencoba Gemma 4 di jendela chat dan sekarang ingin membangun sesuatu dengannya. Bagus — di situlah jadi menyenangkan. Ada tiga cara utama memanggil Gemma 4 via API, dan masing-masing cocok untuk situasi berbeda.

Mari kita bahas ketiganya dengan kode nyata yang bisa kamu salin dan jalankan.

Opsi 1: API Lokal Ollama (Gratis, Privat, Tanpa Batas)

Jika kamu sudah menyiapkan Ollama secara lokal, kamu sudah punya server API berjalan di localhost:11434 sekarang. Tidak butuh API key, tanpa rate limit, sepenuhnya gratis.

Python (requests)

import requests

response = requests.post("http://localhost:11434/api/generate", json={
    "model": "gemma4",
    "prompt": "Jelaskan async/await di Python seperti saya berumur 10 tahun",
    "stream": False
})

print(response.json()["response"])

cURL

curl http://localhost:11434/api/generate -d '{
  "model": "gemma4",
  "prompt": "Jelaskan async/await di Python seperti saya berumur 10 tahun",
  "stream": false
}'

JavaScript (fetch)

const response = await fetch("http://localhost:11434/api/generate", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    model: "gemma4",
    prompt: "Jelaskan async/await di Python seperti saya berumur 10 tahun",
    stream: false,
  }),
});

const data = await response.json();
console.log(data.response);

API Chat Ollama (Multi-turn)

Untuk percakapan dengan riwayat pesan, gunakan endpoint chat:

import requests

response = requests.post("http://localhost:11434/api/chat", json={
    "model": "gemma4",
    "messages": [
        {"role": "system", "content": "Kamu adalah tutor coding yang membantu."},
        {"role": "user", "content": "Apa perbedaan antara list dan tuple?"}
    ],
    "stream": False
})

print(response.json()["message"]["content"])

Kelebihan: Tanpa biaya, privasi total, tanpa rate limit, berfungsi offline. Kekurangan: Kecepatan tergantung hardware-mu. Tanpa GPU = lambat.

Opsi 2: API Google AI Studio (Tier Gratis Tersedia)

Google menawarkan Gemma 4 melalui API AI Studio mereka. Kamu mendapat tier gratis yang murah hati dan cepat karena berjalan di infrastruktur TPU Google.

Dapatkan API Key

  1. Buka aistudio.google.com
  2. Klik "Get API Key" di kanan atas
  3. Buat key (butuh 10 detik)

Untuk panduan detail, lihat panduan Google AI Studio kami.

Python (google-generativeai SDK)

pip install google-generativeai
import google.generativeai as genai

genai.configure(api_key="YOUR_API_KEY")

model = genai.GenerativeModel("gemma-4-27b-it")
response = model.generate_content("Tulis decorator Python untuk logika retry")

print(response.text)

cURL

curl "https://generativelanguage.googleapis.com/v1beta/models/gemma-4-27b-it:generateContent?key=YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{"text": "Tulis decorator Python untuk logika retry"}]
    }]
  }'

Batas Tier Gratis

Berikut yang kamu dapat tanpa membayar apa pun:

  • 15 permintaan per menit (RPM)
  • 1.500 permintaan per hari (RPD)
  • 1 juta token per menit

Itu sebenarnya cukup murah hati untuk pengembangan dan proyek kecil. Kamu hanya akan menyentuh batas jika membangun sesuatu dengan traffic pengguna nyata.

Penanganan Error

API mengembalikan kode error spesifik yang harus kamu tangani:

import google.generativeai as genai
from google.api_core import exceptions

genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel("gemma-4-27b-it")

try:
    response = model.generate_content("Prompt kamu di sini")
    print(response.text)
except exceptions.ResourceExhausted:
    print("Rate limit tercapai. Tunggu semenit dan coba lagi.")
except exceptions.InvalidArgument as e:
    print(f"Permintaan buruk: {e}")
except exceptions.NotFound:
    print("Model tidak ditemukan. Periksa nama model.")
except Exception as e:
    print(f"Error tidak terduga: {e}")

Opsi 3: API OpenRouter (Kompatibel OpenAI)

OpenRouter bagus jika kamu ingin berpindah antar model dengan mudah. Menggunakan format yang sama dengan API OpenAI, jadi jika kamu sudah membangun sesuatu dengan GPT, kamu bisa beralih ke Gemma 4 dengan mengubah satu baris.

Dapatkan API Key

  1. Buka openrouter.ai
  2. Daftar dan tambahkan kredit ($5 minimum)
  3. Buat API key dari dashboard

Python

import requests

response = requests.post(
    "https://openrouter.ai/api/v1/chat/completions",
    headers={
        "Authorization": "Bearer YOUR_OPENROUTER_KEY",
        "Content-Type": "application/json",
    },
    json={
        "model": "google/gemma-4-27b-it",
        "messages": [
            {"role": "user", "content": "Bandingkan React dan Vue dalam 5 poin"}
        ],
    },
)

print(response.json()["choices"][0]["message"]["content"])

cURL

curl https://openrouter.ai/api/v1/chat/completions \
  -H "Authorization: Bearer YOUR_OPENROUTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "google/gemma-4-27b-it",
    "messages": [
      {"role": "user", "content": "Bandingkan React dan Vue dalam 5 poin"}
    ]
  }'

Menggunakan OpenAI Python SDK

Karena OpenRouter kompatibel dengan OpenAI, kamu bisa menggunakan SDK resmi OpenAI:

from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key="YOUR_OPENROUTER_KEY",
)

response = client.chat.completions.create(
    model="google/gemma-4-27b-it",
    messages=[
        {"role": "user", "content": "Jelaskan monad dalam bahasa sederhana"}
    ],
)

print(response.choices[0].message.content)

Ini sangat bagus karena kamu bisa beralih antara Gemma 4, Claude, GPT, Llama, dan lainnya hanya dengan mengubah string model. Ingin model bisa memanggil tool dan API eksternal? Lihat panduan function calling kami.

Respons Streaming

Tidak ada yang mau menunggu 30 detik untuk dinding teks. Streaming menampilkan token saat dihasilkan — UX jauh lebih baik. Berikut cara melakukannya dengan setiap metode.

Streaming Ollama (Python)

import requests
import json

response = requests.post("http://localhost:11434/api/generate", json={
    "model": "gemma4",
    "prompt": "Tulis cerita pendek tentang sesi debugging jam 3 pagi",
    "stream": True
}, stream=True)

for line in response.iter_lines():
    if line:
        chunk = json.loads(line)
        print(chunk.get("response", ""), end="", flush=True)

Streaming Google AI Studio (Python)

import google.generativeai as genai

genai.configure(api_key="YOUR_API_KEY")
model = genai.GenerativeModel("gemma-4-27b-it")

response = model.generate_content(
    "Tulis cerita pendek tentang sesi debugging jam 3 pagi",
    stream=True
)

for chunk in response:
    print(chunk.text, end="", flush=True)

Streaming OpenRouter (Python)

from openai import OpenAI

client = OpenAI(
    base_url="https://openrouter.ai/api/v1",
    api_key="YOUR_OPENROUTER_KEY",
)

stream = client.chat.completions.create(
    model="google/gemma-4-27b-it",
    messages=[{"role": "user", "content": "Tulis cerita pendek tentang sesi debugging jam 3 pagi"}],
    stream=True,
)

for chunk in stream:
    content = chunk.choices[0].delta.content
    if content:
        print(content, end="", flush=True)

Perbandingan: API Mana yang Harus Kamu Gunakan?

FiturOllama (Lokal)Google AI StudioOpenRouter
BiayaGratisTier gratis (15 RPM)Bayar per token
KecepatanTergantung hardwareCepat (TPU Google)Cepat
PrivasiPenuh (offline)Data dikirim ke GoogleData dikirim ke provider
Rate LimitTidak ada15 RPM / 1.500 RPDBerdasarkan kredit
SetupInstal Ollama + modelDapatkan API keyDaftar + tambah kredit
Kompatibel OpenAIParsialTidak (SDK sendiri)Ya
Terbaik UntukPrivasi, pengembanganPrototipe gratisProduksi, multi-model

Rekomendasi saya:

  • Membangun proyek sampingan? Mulai dengan tier gratis Google AI Studio. Cepat dan gratis.
  • Privasi penting? Jalankan Ollama secara lokal. Datamu tetap di mesinmu.
  • Aplikasi produksi? OpenRouter memberi fleksibilitas terbanyak dan kemampuan fallback ke model lain.
  • Baru belajar? Ollama. Tanpa API key, tanpa batas, cukup kode.

Masalah Umum

"Connection refused" di Ollama: Pastikan server Ollama berjalan. Di Mac, periksa apakah ikon Ollama ada di menu bar. Di Linux, jalankan ollama serve dulu.

"Model not found" di Google AI Studio: Nama model berubah. Periksa dokumentasi AI Studio untuk ID model terkini.

Respons lambat di Ollama: Kamu mungkin berjalan di CPU. Itu tidak apa-apa — berfungsi, hanya lebih lambat. Lihat panduan hardware kami untuk ekspektasi.

Timeout: Untuk generasi yang berjalan lama, tingkatkan timeout klien HTTP-mu. Model 31B Gemma 4 bisa memakan waktu untuk prompt kompleks.

Langkah Selanjutnya

gemma4 — interact

Stop reading. Start building.

~/gemma4 $ Get hands-on with the models discussed in this guide. No deployment, no friction, 100% free playground.

Launch Playground />
Gemma 4 AI

Gemma 4 AI

Related Guides

Cara Menggunakan API Gemma 4 (Python, cURL & JavaScript) | Blog