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
| Einstellung | Wert |
|---|---|
| Base-URL | https://api14.com/api/v1 |
| API-Schlüssel | Ihr 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-Funktion | api14 |
|---|---|
chat.completions.create inkl. stream, tools, response_format | Unterstützt für jedes Textmodell |
responses.create | Unterstützt |
completions.create | Unterstützt |
embeddings.create | Unterstützt |
images.generate | Unterstützt (/images/generations) |
audio.speech.create | Unterstützt |
audio.transcriptions.create | Unterstützt (multipart) |
models.list / models.retrieve | Unterstü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
- Setzen Sie die Base-URL auf
https://api14.com/api/v1und verwenden Sie Ihren api14-Schlüssel. - Stellen Sie Modellnamen den Anbieter voran: aus
gpt-5-miniwirdopenai/gpt-5-mini, austext-embedding-3-smallwirdopenai/text-embedding-3-small. - 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.5odergoogle/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
- Setzen Sie die Base-URL auf
https://api14.com/api/v1. - Ersetzen Sie Ihren bisherigen API-Schlüssel durch Ihren api14-Schlüssel.
- Modell-IDs verwenden das Format
anbieter/modell(zum Beispielopenai/gpt-5-mini). Unterstützt werden außerdem Varianten (:free,:online,:nitro,:floor),provider-Routing,models-Fallbacks,reasoning,plugins,transformsundusage.
Unterschiede, die Sie kennen sollten:
- Abgerechnet wird über ein USD-Guthaben.
GET /creditslieferttotal_creditsundtotal_usagein USD sowiebalance_usd. Siehe Guthaben & Schlüsselinfo. - Nutzungskosten sind immer enthalten. Das Gateway fordert vom Upstream immer
usage.costan, sodass jede Antwort ihren Preis meldet. - Header wie
HTTP-RefererundX-Titlesetzt 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.