Wir verwenden Cookies. Cookies und Browserspeicher halten Sie angemeldet und merken sich Ihre Einstellungen. Mit Ihrer Zustimmung messen wir außerdem, wie die Website genutzt wird. Sie können jederzeit . Siehe unsere Cookie-Richtlinie.

OpenAI-SDK-Kompatibilität

Erste Schritte

OpenAI-SDK-Kompatibilität

Nutzen Sie die offiziellen OpenAI-SDKs unverändert und migrieren Sie von OpenAI oder einer OpenAI-kompatiblen API, indem Sie nur zwei Werte ändern.

api14 spricht die OpenAI-API. Jedes offizielle OpenAI-SDK und jedes Tool, das eine eigene OpenAI-Base-URL akzeptiert, funktioniert ohne Codeänderungen, Sie ändern nur die Base-URL und den API-Schlüssel.

Die zwei Werte, die Sie ändern

EinstellungWert
Base-URLhttps://api14.com/api/v1
API-SchlüsselIhr sk-api14-...-Schlüssel
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"])

Viele SDKs lesen außerdem die Umgebungsvariablen OPENAI_BASE_URL und OPENAI_API_KEY, sodass Sie wechseln können, ohne den Code überhaupt anzufassen.

Was kompatibel ist

OpenAI-Funktionapi14
chat.completions.create inkl. stream, tools, response_formatUnterstützt für jedes Textmodell
responses.createUnterstützt
completions.createUnterstützt
embeddings.createUnterstützt
images.generateUnterstützt (/images/generations)
audio.speech.createUnterstützt
audio.transcriptions.createUnterstützt (multipart)
models.list / models.retrieveUnterstützt, mit Preisen und Kategorien
Fehlerformat { error: { message, type, code } }Identisch, SDKs werfen ihren üblichen APIError

Endpunkte, die es nur bei OpenAI gibt (Assistants, Threads, Fine-Tuning, Files, Batches, Vector Stores und Moderations) sind nicht verfügbar.

Migration von OpenAI

  1. Setzen Sie die Base-URL auf https://api14.com/api/v1 und verwenden Sie Ihren api14-Schlüssel.
  2. Stellen Sie Modellnamen den Anbieter voran: aus gpt-5-mini wird openai/gpt-5-mini, aus text-embedding-3-small wird openai/text-embedding-3-small.
  3. Das war's. Sie können jetzt auch zu jedem anderen Anbieter wechseln, indem Sie die Modell-ID ändern, zum Beispiel anthropic/claude-sonnet-4.5 oder 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);

Migration von einer anderen OpenAI-kompatiblen API

  1. Setzen Sie die Base-URL auf https://api14.com/api/v1.
  2. Ersetzen Sie Ihren bisherigen API-Schlüssel durch Ihren api14-Schlüssel.
  3. Modell-IDs verwenden das Format anbieter/modell (zum Beispiel openai/gpt-5-mini). Unterstützt werden außerdem Varianten (:free, :online, :nitro, :floor), provider-Routing, models-Fallbacks, reasoning, plugins, transforms und usage.

Unterschiede, die Sie kennen sollten:

  • Abgerechnet wird über ein USD-Guthaben. GET /credits liefert total_credits und total_usage in USD sowie balance_usd. Siehe Guthaben & Schlüsselinfo.
  • Nutzungskosten sind immer enthalten. Das Gateway fordert vom Upstream immer usage.cost an, sodass jede Antwort ihren Preis meldet.
  • Header wie HTTP-Referer und X-Title setzt das Gateway; Sie müssen sie nicht senden.
  • Video-Job-URLs verweisen auf api14 (/api/v1/videos/{id}), niemals auf den Upstream. Siehe Video.

Zusätzliche Parameter in den SDKs

Felder, die das OpenAI-SDK nicht kennt, lassen sich trotzdem senden:

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"}},
)

Siehe Provider-Routing & Fallbacks, Reasoning und Websuche.