Kembali ke blog

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.

Oleh CheapTokens TeamDiterbitkan Diperbarui 4 menit baca

Tiga nilai yang diubah saat beralih ke API yang kompatibel dengan OpenAI: base_url, kunci API, dan id model
Di halaman ini
  1. Apa arti "kompatibel dengan OpenAI"?
  2. Apa itu base_url?
  3. Tiga nilai yang Anda ubah
  4. Permintaan pertama di Python
  5. Permintaan yang sama dengan curl
  6. Apa yang seharusnya Anda lihat
  7. Berapa biayanya?
  8. Jika tidak berfungsi
  9. Langkah selanjutnya

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 model dan daftar messages, di mana setiap pesan memiliki role (system, user atau assistant) dan content.
  • Jalur endpoint: /chat/completions, ditambahkan setelah base URL.
  • 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.

Bagian Contoh
base_url https://api.cheaptokens.dev/v1
Jalur yang ditambahkan oleh SDK /chat/completions
Alamat lengkap permintaan https://api.cheaptokens.dev/v1/chat/completions

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.cheaptokens.dev/v1. API-nya kompatibel dengan OpenAI Chat Completions dan dengan Anthropic Messages, dan satu saldo prabayar mencakup semua model.

Tiga nilai yang Anda ubah#

Nilai Apa itu Dari mana asalnya
base_url Alamat API https://api.cheaptokens.dev/v1
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:

Model Id model Konteks Output maksimum per jawaban
GLM-5.3-Flash zai-org/GLM-5.3-Flash 390K 8.192 token
DeepSeek-V4-Flash deepseek-ai/DeepSeek-V4-Flash-0731 380K 32.768 token
MiniMax-M2.7 MiniMaxAI/MiniMax-M2.7 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:

bash
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:

python
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_CHEAPTOKENS_KEY 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.

bash
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].message.content. 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 /chat/completions sendiri saat menggunakan SDK, atau jalurnya akan menjadi ganda.
  • 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_tokens tercapai, 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.