Kami menggunakan cookie. Cookie dan penyimpanan browser menjaga Anda tetap masuk dan mengingat preferensi Anda. Dengan izin Anda, kami juga mengukur cara situs digunakan. Anda dapat kapan saja. Lihat kebijakan cookie kami.

Kompatibilitas OpenAI SDK

Memulai

Kompatibilitas OpenAI SDK

Gunakan SDK resmi OpenAI tanpa perubahan dan bermigrasi dari OpenAI atau API lain yang kompatibel dengan OpenAI cukup dengan mengganti dua nilai.

api14 berbicara dengan API OpenAI. SDK resmi OpenAI mana pun, dan tool apa pun yang menerima base URL OpenAI kustom, bisa langsung dipakai tanpa mengubah kode, Anda hanya mengganti base URL dan API key.

Dua nilai yang perlu diganti

PengaturanNilai
Base URLhttps://api14.com/api/v1
API keykey sk-api14-... Anda
import OpenAI from 'openai'

const client = new OpenAI({
  baseURL: 'https://api14.com/api/v1',
  apiKey: process.env.API14_API_KEY,
})
import os
from openai import OpenAI

client = OpenAI(base_url="https://api14.com/api/v1", api_key=os.environ["API14_API_KEY"])

Banyak SDK juga membaca environment variable OPENAI_BASE_URL dan OPENAI_API_KEY, sehingga Anda bisa beralih tanpa menyentuh kode sama sekali.

Apa saja yang kompatibel

Fitur OpenAIapi14
chat.completions.create termasuk stream, tools, response_formatDidukung untuk semua model teks
responses.createDidukung
completions.createDidukung
embeddings.createDidukung
images.generateDidukung (/images/generations)
audio.speech.createDidukung
audio.transcriptions.createDidukung (multipart)
models.list / models.retrieveDidukung, dengan harga dan kategori
Format error { error: { message, type, code } }Sama, SDK melempar APIError seperti biasa

Endpoint yang hanya ada di OpenAI (Assistants, Threads, fine-tuning, files, batches, vector stores, dan moderations) tidak tersedia.

Migrasi dari OpenAI

  1. Atur base URL ke https://api14.com/api/v1 dan gunakan key api14 Anda.
  2. Tambahkan prefiks penyedia pada nama model: gpt-5-mini menjadi openai/gpt-5-mini, text-embedding-3-small menjadi openai/text-embedding-3-small.
  3. Selesai. Sekarang Anda juga bisa beralih ke penyedia lain hanya dengan mengganti model id, misalnya anthropic/claude-sonnet-4.5 atau google/gemini-2.5-pro.
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.chat.completions.create({
  "model": "openai/gpt-5-mini",
  "messages": [
    {
      "role": "user",
      "content": "Explain vector databases in two sentences."
    }
  ]
});
console.log(result.choices[0].message.content);

Migrasi dari API lain yang kompatibel dengan OpenAI

Jika Anda sudah memakai API lain yang kompatibel dengan OpenAI dengan model id berformat provider/model, cukup ganti base URL dan key.

  1. Ganti base URL Anda saat ini dengan https://api14.com/api/v1.
  2. Ganti key Anda saat ini dengan key api14 Anda.
  3. Biarkan semua yang lain: model id, varian (:free, :online, :nitro, :floor), routing provider, fallback models, reasoning, plugins, transforms, dan usage.

Perbedaan yang perlu diketahui:

  • Penagihan memakai saldo USD. GET /credits mengembalikan total_credits dan total_usage dalam USD, ditambah field balance_usd. Lihat Info saldo & key.
  • Biaya pemakaian selalu disertakan. Gateway selalu meminta usage.cost ke upstream, sehingga setiap response melaporkan harganya.
  • Header seperti HTTP-Referer dan X-Title diatur oleh gateway; Anda tidak perlu mengirimnya.
  • URL job video mengarah kembali ke api14 (/api/v1/videos/{id}), tidak pernah ke upstream. Lihat Video.

Parameter tambahan di SDK

Field yang tidak dikenal oleh OpenAI SDK tetap bisa dikirim:

await client.chat.completions.create({
  model: 'openai/gpt-5-mini',
  messages: [{ role: 'user', content: 'Hi' }],
  // @ts-expect-error api14 extension
  provider: { sort: 'price' },
})
client.chat.completions.create(
    model="openai/gpt-5-mini",
    messages=[{"role": "user", "content": "Hi"}],
    extra_body={"provider": {"sort": "price"}},
)

Lihat Provider routing & fallback, Reasoning, dan Pencarian web.