Memanggil Gemini API dengan OpenAI SDK: cara mengatur base_url, nama model, dan harga Gemini 3.5 Flash
14 Juni 2026 · 10 menit baca · Claude / GPT / Gemini

Dokumentasi kompatibel OpenAI dari Google diperbarui pada 2026-05-18 dan secara langsung menyatakan: model Gemini dapat dipanggil melalui OpenAI Python / JavaScript SDK, dengan hanya tiga perubahan inti: api_key, base_url, model (Google). Hari ini 2026-06-14, halaman harga mencantumkan harga tier berbayar standar untuk gemini-3.5-flash sebagai berikut: input $1.50 / 100 万 token, output termasuk token berpikir $9.00 / 100 万 token (Google Pricing).
Penilaian saya sederhana: jika Anda sudah punya proyek OpenAI SDK, jangan buru-buru menulis ulang. Sambungkan dulu Gemini sebagai backend yang kompatibel dengan OpenAI, uji biaya, streaming, dan tool calling, lalu putuskan apakah perlu migrasi ke Gemini SDK native.

1. Perubahan minimal: cukup ganti endpoint dan nama model
Untuk Python, instal dulu OpenAI SDK resmi:
pip install openai
export GEMINI_API_KEY="你的 Gemini API Key"
Lalu ubah klien menjadi seperti ini:
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["GEMINI_API_KEY"],
base_url="https://generativelanguage.googleapis.com/v1beta/openai/",
)
resp = client.chat.completions.create(
model="gemini-3.5-flash",
reasoning_effort="low",
messages=[
{"role": "system", "content": "你是一个直接、准确的代码助手。"},
{"role": "user", "content": "用三句话解释 SSE 流式输出。"},
],
)
print(resp.choices[0].message.content)
Bentuk seperti chat.completions.create, messages, dan tools tetap mengikuti gaya OpenAI Chat Completions; referensi API OpenAI sendiri juga masih mendefinisikan Chat Completions sebagai antarmuka untuk menghasilkan respons berdasarkan daftar pesan (OpenAI). Jadi fokus migrasi bukan pada kode bisnis, melainkan pada lapisan konfigurasi.
2. Jangan hilangkan garis miring terakhir pada base_url
Alamat di dokumentasi Google adalah:
https://generativelanguage.googleapis.com/v1beta/openai/
Jika / terakhir tidak ditulis, beberapa klien bisa mengalami masalah aneh saat menggabungkan path. Dalam kode produksi, sebaiknya ekstrak menjadi variabel lingkungan:
OPENAI_BASE_URL="https://generativelanguage.googleapis.com/v1beta/openai/"
OPENAI_API_KEY="$GEMINI_API_KEY"
OPENAI_MODEL="gemini-3.5-flash"
Jika Anda ingin menghindari kerepotan berpindah-pindah akun, kuota, dan tagihan antar-vendor, onehop adalah jalur yang lebih praktis: ubah base_url menjadi https://api.onehop.ai/v1, lalu panggil Claude, GPT, dan Gemini melalui satu set antarmuka kompatibel OpenAI / Anthropic yang sama. Akun baru mendapat $10, tanpa perlu mengikat kartu; cocok untuk membuat PoC dulu, lalu melihat apakah perlu koneksi langsung ke layanan resmi.
from openai import OpenAI
client = OpenAI(
api_key="你的 onehop key",
base_url="https://api.onehop.ai/v1",
)
resp = client.chat.completions.create(
model="gemini-3.5-flash",
messages=[{"role": "user", "content": "给我一个 FastAPI 健康检查接口"}],
)
print(resp.choices[0].message.content)
Pintunya ada di sini: Panggil Claude dan model lainnya di onehop, Daftar dan langsung dapat kredit uji coba $10.
3. Hitung biaya terlebih dahulu berdasarkan token output
Tier standar gemini-3.5-flash bukan “saking murahnya sampai tidak perlu dipikirkan”. Harga output adalah 6 kali harga input:
| Model | Tier | Input / 1 juta token | Output / 1 juta token |
|---|---|---|---|
gemini-3.5-flash |
Standar | $1.50 |
$9.00 |
gemini-3.5-flash |
Batch | $0.75 |
$4.50 |
gemini-3.5-flash |
Flex | $0.75 |
$4.50 |
Angka untuk Batch dan Flex juga berasal dari halaman harga Google yang sama. Saat menulis aplikasi, batasi max_completion_tokens, terutama untuk ringkasan, pembuatan kode, dan loop tool Agent. Input yang lebih panjang masih bisa di-cache, tetapi output yang tidak terkendali benar-benar akan membakar biaya.

4. Bagaimana reasoning_effort dipetakan
Lapisan kompatibilitas Google menerima reasoning_effort bergaya OpenAI dan memetakannya ke konfigurasi thinking Gemini (Google):
reasoning_effort |
Gemini 3 Flash thinking_level |
|---|---|
minimal |
minimal |
low |
low |
medium |
medium |
high |
high |
Jika tidak dikirim, nilai default model akan digunakan. Dokumentasi Google juga menuliskan satu batasan penting: Gemini 3 tidak bisa mematikan thinking; none hanya berlaku untuk sebagian model 2.5. Saran saya, gunakan default online low, dan naikkan ke medium atau high hanya untuk perencanaan kompleks atau tool calling dengan rantai panjang. Karena harga output mencakup token berpikir, intensitas reasoning bukan tombol gratis.
5. Streaming dan function calling: bisa dipakai, tetapi antisipasi chunk kosong
Panggilan streaming tetap menggunakan gaya OpenAI SDK:
stream = client.chat.completions.create(
model="gemini-3.5-flash",
messages=[{"role": "user", "content": "写一个 Redis 缓存封装"}],
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="", flush=True)
if delta di sini sangat berguna. Dalam respons streaming, bisa ada role, tool call, atau delta kosong; jangan berasumsi setiap chunk pasti berisi teks.
Function calling juga menggunakan tools dan tool_choice="auto". Dokumentasi kompatibilitas Google memberikan contoh fungsi cuaca, dan mengonfirmasi bahwa Gemini API mendukung function calling (Google). Dalam proyek nyata, jangan hanya mencetak respons model; periksa message.tool_calls, jalankan fungsi lokal, lalu masukkan hasil tool sebagai pesan putaran berikutnya kembali ke model.
Kesimpulannya: biaya minimum untuk migrasi ke Gemini hanyalah tiga baris konfigurasi; yang benar-benar perlu diawasi adalah token output, intensitas thinking, chunk kosong pada streaming, dan loop tertutup tool calling. Jika Anda hanya ingin cepat memasukkan Claude, GPT, dan Gemini ke proyek OpenAI SDK yang sama, langsung memakai pintu masuk terpadu onehop akan menghemat cukup banyak waktu konfigurasi: Panggil Claude dan model lainnya di onehop, atau ambil dulu kredit uji coba $10 setelah mendaftar.
Bacaan terkait

Gunakan Groq GPT-OSS 120B dengan OpenAI SDK: Base URL, Harga, dan Caching
Ganti satu base URL OpenAI SDK untuk menjalankan GPT-OSS 120B di Groq, estimasi biaya token cache, dan hindari kejutan biaya tool.
17 Juni 2026 · 26 menit baca

Tutorial Migrasi Memanggil Gemini API dengan OpenAI SDK: Cukup Ubah base_url, API Key, dan Nama Model
Checklist migrasi antarmuka kompatibel Gemini untuk proyek OpenAI SDK, mencakup kode, pemetaan parameter, dan harga.
14 Juni 2026 · 9 menit baca

Menggunakan OpenAI SDK untuk Memanggil Gemini API: Tutorial Integrasi dengan Hanya Mengubah base_url, key, dan Nama Model
Integrasikan kode OpenAI SDK yang sudah ada ke Gemini dengan perubahan minimal pada tiga konfigurasi saja.
14 Juni 2026 · 9 menit baca