BaruArahkan agen apa pun ke UberLLM — satu key, semua model, harga resmi atau lebih murah.
UberLLM

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[].message yang sama, dengan jumlah token usage yang sama;
  • streaming menggunakan chunks server-sent-events data: yang sama yang diakhiri dengan [DONE];
  • tool / function calling menggunakan fields tool_calls yang 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.


Lanjutkan membaca

FAQ

Apa artinya "OpenAI-compatible"?

Ini berarti endpoint menerima permintaan yang sama dan mengembalikan respons yang sama seperti OpenAI API — skema chat-completions yang sama, format streaming, dan bidang tool-call — sehingga OpenAI SDK berfungsi dengannya hanya dengan mengubah base URL dan key.

Apakah saya perlu mengubah kode saya untuk menggunakan API endpoint yang kompatibel dengan OpenAI?

Hanya base_url dan api_key. Segala sesuatu yang lain dalam kode OpenAI SDK Anda — messages, streaming, tools, usage — tetap sama.

Apakah UberLLM juga kompatibel dengan Anthropic?

Ya. Selain endpoint chat-completions yang kompatibel dengan OpenAI, UberLLM mengekspos endpoint /v1/messages yang kompatibel dengan Anthropic, sehingga Anthropic SDK dan Claude Code berfungsi tanpa perubahan.