AI untuk pemulaPanduan
API yang kompatibel dengan OpenAI: apa itu base_url dan cara beralih
API yang kompatibel dengan OpenAI menerima permintaan yang sama seperti OpenAI. Ubah base_url, kunci, dan id model, dan kode Anda mengirim permintaan pertamanya ke CheapTokens.

Di halaman ini
API yang kompatibel dengan OpenAI adalah API yang menerima permintaan dalam format yang sama dengan Chat Completions API milik OpenAI dan menjawab dalam format yang sama. Untuk memindahkan aplikasi ke penyedia lain, biasanya Anda mengubah tiga nilai: base_url (tujuan permintaan dikirim), kunci API, dan id model. Sisa kode Anda, termasuk daftar pesan dan cara Anda membaca jawaban, tetap seperti semula.
Panduan ini menjelaskan konsepnya dengan kata-kata sederhana dan diakhiri dengan permintaan pertama yang berfungsi ke CheapTokens dalam Python dan curl. Fakta tentang CheapTokens telah diperiksa terhadap dokumentasinya pada 22 Oktober 2026.
Apa arti "kompatibel dengan OpenAI"?#
API adalah seperangkat aturan untuk berkomunikasi dengan layanan melalui internet (jika istilah ini baru bagi Anda, mulailah dengan cara permintaan API pertama Anda bekerja). Format chat OpenAI menjadi standar umum: banyak penyedia dan alat menerima body permintaan yang sama dan mengembalikan bentuk respons yang sama. API semacam itu disebut kompatibel dengan OpenAI.
Dalam praktiknya, itu berarti tiga hal yang sama pada penyedia kompatibel mana pun:
- Permintaan: body JSON dengan field
modeldan daftarmessages, di mana setiap pesan memilikirole(system,useratauassistant) dancontent. - Jalur endpoint:
/, ditambahkan setelah base URL.chat/ completions - Respons: objek JSON di mana teks yang dihasilkan berada di
choices[0]..message. content
Karena formatnya sama, SDK resmi dan banyak aplikasi dapat berkomunikasi dengan penyedia kompatibel mana pun. Mereka hanya perlu tahu ke mana permintaan dikirim.
Apa itu base_url?#
base_url adalah alamat yang menjadi awal setiap permintaan. SDK membangun alamat lengkap dengan menambahkan jalur pemanggilan ke alamat tersebut.
Gulir tabel ke kanan →
| Bagian | Contoh |
|---|---|
base_url |
https:/ |
| Jalur yang ditambahkan oleh SDK | / |
| Alamat lengkap permintaan | https:/ |
Jadi ketika Anda menetapkan base_url yang berbeda, kode yang sama mengirim jenis permintaan yang sama ke server yang berbeda. Base URL CheapTokens adalah https:/. API-nya kompatibel dengan OpenAI Chat Completions dan dengan Anthropic Messages, dan satu saldo prabayar mencakup semua model.
Tiga nilai yang Anda ubah#
Gulir tabel ke kanan →
| Nilai | Apa itu | Dari mana asalnya |
|---|---|---|
base_url |
Alamat API | https:/ |
| Kunci API | Kata sandi rahasia Anda untuk API | Akun CheapTokens Anda. Lihat apa itu kunci API dan cara menyimpannya dengan aman |
| Id model | Nama persis model di field model |
Dokumentasi CheapTokens |
Id model perlu diperhatikan. Penyedia yang berbeda memberikan id berbeda untuk model yang sama, jadi id dari layanan lain tidak akan berfungsi di sini. Ambil id dari dokumentasi CheapTokens. Id yang tersedia saat ini:
Gulir tabel ke kanan →
| Model | Id model | Konteks | Output maksimum per jawaban |
|---|---|---|---|
| GLM-5.3-Flash | zai- |
390K | 8.192 token |
| DeepSeek-V4-Flash | deepseek- |
380K | 32.768 token |
| MiniMax-M2.7 | MiniMaxAI/ |
180K | 8.192 token |
DeepSeek-V4-Flash mengembalikan hingga 32.768 token per jawaban dan memiliki konteks 380K; GLM-5.3-Flash memiliki konteks 390K; MiniMax-M2.7 memiliki konteks 180K. Ketiganya ditagih dari saldo yang sama, jadi beralih di antara mereka berarti hanya mengubah id model.
Permintaan pertama di Python#
Instal paket openai, lalu simpan kunci Anda di variabel lingkungan alih-alih menuliskannya ke dalam kode:
pip install openai
export CHEAPTOKENS_API_KEY="YOUR_CHEAPTOKENS_KEY"Sekarang kodenya. Satu-satunya perbedaan dari contoh OpenAI standar adalah argumen base_url, kunci, dan id model:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1", # 1. where requests go
api_key=os.environ["CHEAPTOKENS_API_KEY"], # 2. your CheapTokens key
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7", # 3. model id from the docs
messages=[
{"role": "system", "content": "You answer briefly."},
{"role": "user", "content": "Explain base_url in one sentence."},
],
)
print(response.choices[0].message.content)Kunci dalam contoh adalah placeholder: ganti YOUR_ dengan kunci Anda sendiri dan jangan pernah melakukan commit kunci asli ke repositori.
Jika aplikasi yang sudah Anda miliki membaca pengaturan dari file konfigurasi atau variabel lingkungan, Anda tidak perlu mengedit kodenya sama sekali. Cari field bernama base URL, API base, atau endpoint, dan isi tiga nilai yang sama di sana.
Permintaan yang sama dengan curl#
curl menunjukkan apa yang dilakukan SDK di balik layar: base URL ditambah jalur, kunci di header Authorization, dan body JSON.
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "MiniMaxAI/MiniMax-M2.7",
"messages": [
{"role": "user", "content": "Explain base_url in one sentence."}
]
}'Apa yang seharusnya Anda lihat#
Ketika semuanya diatur dengan benar, skrip Python mencetak jawaban teks singkat, dan curl mencetak objek JSON. Cari daftar choices: teks jawaban berada di choices[0].. Jika Anda melihatnya, permintaan pertama Anda ke CheapTokens berhasil, dan Anda dapat melanjutkan ke aplikasi nyata Anda.
Berapa biayanya?#
Penagihan berdasarkan token, dihitung terpisah untuk input dan output (lihat token input vs output). Misalnya, MiniMax-M2.7 saat ini berbiaya $0.05 per 1 juta token input dan $0.15 per 1 juta token output. Tabel di bawah selalu menampilkan harga terkini untuk semua model, tanpa biaya tambahan jam sibuk.
| Model | Konteks | Input $/1Jt | Output $/1Jt | OpenRouter in | OpenRouter out |
|---|---|---|---|---|---|
| GLM-5.3-Flash reasoning | 390K | $0.02 | $0.04 | $0.0413 | $0.0758 |
| DeepSeek-V4-Flash | 380K | $0.015 | $0.10 | $0.0475 | $0.1568 |
| MiniMax-M2.7 | 180K | $0.05 | $0.15 | $0.30 | $1.20 |
Harga dalam USD per 1 juta token. Angka OpenRouter ditampilkan sebagai perbandingan dan dapat berubah sewaktu-waktu.
Harga untuk daftar lengkap model juga ada di halaman harga CheapTokens.
Jika tidak berfungsi#
- Kesalahan autentikasi (biasanya 401): kunci tidak ada, salah ketik, atau memiliki spasi tambahan. Periksa bahwa variabel lingkungan diatur di terminal yang sama tempat Anda menjalankan skrip.
- "Not found" (biasanya 404): periksa
base_url. Harus diakhiri dengan/v1, dan Anda tidak boleh menambahkan/sendiri saat menggunakan SDK, atau jalurnya akan menjadi ganda.chat/ completions - Model tidak dikenal: salin id model persis dari tabel di atas atau dari dokumentasi, termasuk huruf kapital dan bagian sebelum garis miring.
- Tidak ada koneksi atau timeout: lihat kesalahan koneksi umum dan cara memperbaikinya.
- Jawaban terpotong di tengah kalimat: batas
max_tokenstercapai, yang dibahas di mengapa jawaban AI berhenti di tengah kalimat.
Langkah selanjutnya#
Setelah permintaan pertama berhasil, Anda dapat menambahkan streaming di Python, memasukkan tiga nilai yang sama ke editor atau agen Anda, atau membaca cara membaca nama model AI. Detail penyiapan dan daftar lengkap model ada di dokumentasi CheapTokens.



