Apa itu API endpoint yang kompatibel dengan OpenAI?
Sebuah API endpoint yang kompatibel dengan OpenAI adalah yang mengikuti bentuk permintaan dan respons yang persis sama dengan OpenAI API — skema /v1/chat/completions yang sama, format streaming yang sama, field tool-call yang sama — sehingga SDK resmi OpenAI dapat bekerja dengannya hanya dengan mengubah base URL dan key. UberLLM kompatibel dengan OpenAI (dan kompatibel dengan Anthropic di /v1/messages), itulah mengapa beralih ke UberLLM hanya memerlukan perubahan satu baris.
Definisi singkat
Sebuah endpoint "kompatibel dengan OpenAI" ketika ia menerima permintaan HTTP yang sama dan mengembalikan bentuk respons yang sama seperti OpenAI API. Dalam praktiknya, itu berarti:
- request body
POST /v1/chat/completions(model,messages,temperature,tools,stream, …) diterima apa adanya; - responsnya adalah objek
choices[].messageyang sama, dengan jumlah tokenusageyang sama; - streaming menggunakan chunks server-sent-events
data:yang sama yang diakhiri dengan[DONE]; - tool / function calling menggunakan fields
tool_callsyang sama.
Karena kontraknya cocok, OpenAI SDK resmi — dalam Python, JavaScript, atau bahasa apa pun — berfungsi dengan endpoint tersebut ketika Anda mengubah hanya base URL dan API key. Kode aplikasi Anda tidak mengetahui perbedaannya.
Mengapa ini penting
Kompatibilitas OpenAI mengubah API dari satu vendor menjadi standar de-facto. Sebuah endpoint yang kompatibel memungkinkan Anda untuk tetap menggunakan SDK, perkakas, dan integrasi kerangka kerja yang sudah Anda gunakan (LangChain, Vercel AI SDK, LlamaIndex, puluhan kerangka kerja agen) sambil mengubah apa yang ada di baliknya.
Itulah keseluruhan migrasi ke UberLLM:
from openai import OpenAI
client = OpenAI(
base_url="https://api.uberllm.dev/v1", # the only line that changes
api_key="ull_your_key_here",
)
resp = client.chat.completions.create(
model="deepseek/deepseek-v4-flash",
messages=[{"role": "user", "content": "Hello!"}],
stream=True,
)
Lihat dokumen SDK OpenAI] untuk daftar lengkap parameter yang didukung.
Kompatibel vs. drop-in sejati
"Kompatibel" adalah sebuah spektrum. Perhatikan endpoint yang menerima bentuk permintaan tetapi menghilangkan streaming, mengabaikan panggilan alat (tool calls), atau mengembalikan usage yang tidak standar. UberLLM mengimplementasikan kontrak chat-completions termasuk streaming, panggilan alat (tool calls), dan penggunaan token, dan juga mengekspos endpoint yang kompatibel dengan Anthropic di /v1/messages sehingga SDK Anthropic dan Claude Code juga berfungsi tanpa perubahan — dokumen SDK Anthropic.
Apa yang UberLLM tambahkan di balik endpoint standar
Endpoint-nya standar; routing di baliknya tidak. Setiap permintaan dikirim ke penjual sehat termurah untuk model yang Anda sebutkan, kegagalan sebelum output dicoba ulang pada penjual berikutnya, dan harga yang Anda lihat (tanpa biaya tambahan) adalah harga yang Anda bayar. Jelajahi model di /models dan harga langsung di /llm-api-pricing.