Docs
Kompatibilität

OpenAI-Kompatibilität

Verwenden Sie das OpenAI-SDK mit Ablatic

Richten Sie das offizielle OpenAI-SDK auf Ablatic aus und behalten Sie Ihren Code. Drei Dinge ändern sich: die Base URL, der Key und das Modell.

Was Sie ändern

Behalten Sie das openai-SDK, das Sie bereits verwenden. Dann:

  1. Setzen Sie base_url auf https://api.ablatic.ai/v1.
  2. Setzen Sie api_key auf Ihren Ablatic-Key, der so aussieht: sk-ablatic-....
  3. Setzen Sie model auf talos.

Alles andere bleibt gleich. Die Authentifizierung nutzt den Authorization: Bearer-Header, den das SDK ohnehin schon sendet.

Python

from openai import OpenAI

client = OpenAI(
    base_url="https://api.ablatic.ai/v1",
    api_key="sk-ablatic-...",
)

resp = client.chat.completions.create(
    model="talos",
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.ablatic.ai/v1",
  apiKey: "sk-ablatic-...",
});

const resp = await client.chat.completions.create({
  model: "talos",
  messages: [{ role: "user", content: "Hello" }],
});
console.log(resp.choices[0].message.content);

Streaming

Setzen Sie stream: true und lesen Sie die Token über Server-Sent Events. Der Stream endet mit einer data: [DONE]-Zeile, genau wie bei OpenAI.

stream = client.chat.completions.create(
    model="talos",
    messages=[{"role": "user", "content": "Write a haiku about Linz"}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

Kompatibilitätshinweise

response_format wird auf dieser Schnittstelle unterstützt. Sie können text, json_object oder json_schema anfordern. Dies ist die OpenAI-Schnittstelle, daher funktionieren strukturierte Ausgaben hier. Auf der Anthropic-Schnittstelle ist das nicht der Fall.

Zwei Konventionen sollten Sie kennen, wenn Sie Optionen von einem anderen OpenAI-kompatiblen Anbieter übernehmen:

  • Gehen Sie davon aus, dass n gleich 1 ist. Fordern Sie pro Aufruf eine einzelne Completion an.
  • Sehr hohe temperature-Werte werden konservativ behandelt. Der akzeptierte Bereich liegt zwischen 0 und 2. Halten Sie die Werte moderat, damit das Verhalten vorhersehbar bleibt.

Das Feld model wird nicht streng validiert. Senden Sie model="talos" und setzen Sie den Reasoning-Modus über reasoning_effort: none/minimal (fast), low (knappes thinking), medium (thinking), high/xhigh/max (thinking, größeres Reasoning-Budget). Ein unbekannter Effort-Wert fällt auf thinking zurück, statt zu scheitern.

Nächste Schritte