Claude OpenAI-kompatibles Format
Fast-Token unterstützt den Aufruf von Anthropic-Claude-Modellen über das OpenAI-API-Protokoll. Wenn Sie bereits Apps mit dem OpenAI SDK oder /v1/chat/completions haben, reicht es meist, base_url und model zu ändern, um Claude anzubinden – ohne Umstellung auf die native Anthropic-Messages-API.
Diese Seite ist vor allem eine Nutzungsanleitung. Request-Bodies, Antwortfelder und Online-Debugging der einzelnen Schnittstellen finden Sie in der ChatGPT-Dokumentation und in den Links der Fähigkeitentabelle unten.
Zwei Integrationswege
| Vergleich | OpenAI-kompatibles Format (diese Seite) | Native Claude-API (andere Docs in diesem Ordner) |
|---|---|---|
| Typischer Pfad | POST /v1/chat/completions | POST /v1/messages |
| Request-Body | OpenAI-Felder wie messages, model, stream | Anthropic-Felder wie messages, system, thinking |
| Geeignet für | Bestehende OpenAI-Clients, Multi-Modell-Gateway, schnelle Migration | Claude-spezifische Funktionen (Extended-Thinking-Budget, Tool Use, PDF, Websuche usw.) |
| Dokumentation | Diese Seite + Abschnitt Chat | API-Seiten unter der Chat-Gruppe dieses Ordners |
Beide Wege nutzen denselben API Key und dieselbe Gateway-URL. Abrechnung nach dem jeweiligen Modell im Modell-Marktplatz.
Einrichtung
Gateway und Authentifizierung
- Base URL:
https://fast-token.com/v1(wie Erste Schritte) - Authentifizierung: Header
Authorization: Bearer <Fast-Token_API_KEY> - Modellname: Modell-ID mit
claudeaus dem Modell-Marktplatz in das Feldmodelkopieren
OpenAI SDK (empfohlen)
base_url des offiziellen SDK auf Fast-Token setzen; der Rest wie bei OpenAI:
from openai import OpenAI
client = OpenAI(
base_url="https://fast-token.com/v1",
api_key="<Fast-Token_API_KEY>",
)
completion = client.chat.completions.create(
model="claude-sonnet-4-20250514", # laut Modell-Marktplatz
messages=[
{"role": "user", "content": "用一句话介绍你自己"},
],
)
print(completion.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://fast-token.com/v1",
apiKey: "<Fast-Token_API_KEY>",
});
const completion = await client.chat.completions.create({
model: "claude-sonnet-4-20250514",
messages: [{ role: "user", content: "用一句话介绍你自己" }],
});
console.log(completion.choices[0].message.content);Für Streaming-Chat stream: true setzen. Siehe Chat-Abschluss erstellen (Streaming).
Überblick Chat-kompatible Fähigkeiten
Die folgenden Fähigkeiten laufen über den OpenAI-kompatiblen Pfad. In Konsole oder Apifox oft als „chat-kompatibles Format“ gruppiert. Praktisch meist derselbe POST /v1/chat/completions, unterschieden durch Modell, Streaming und Nachrichtenstruktur.
| Fähigkeit | Beschreibung | Referenz |
|---|---|---|
| Thinking-Chat erstellen | Dialog mit Modell-„Denk“-Prozess | Streaming (extra_body.enable_thinking) |
| Chat-Abschluss erstellen (Streaming) | Standard-Mehrturn-Textchat, SSE | Chat-Abschluss erstellen (Streaming) |
| Chat-Abschluss erstellen (Non-Streaming) | Mehrturn-Chat, einmalige Antwort | Chat-Abschluss erstellen (Non-Streaming) |
| Chat-Bilderkennung (Streaming) | Bilder hochladen für Verstehen, Beschreibung, Q&A | Chat-Bilderkennung erstellen (Streaming) |
| Chat-Bilderkennung (Non-Streaming) | Bilderkennung, vollständige Non-Streaming-Antwort | Chat-Bilderkennung erstellen (Non-Streaming) |
Modellauswahl
Die Modell-ID pro Szenario steht im Modell-Marktplatz. Probieren Sie Claude-Modelle mit claude im Namen und passender Chat-/Vision-/Thinking-Unterstützung. Bei „Modell nicht gefunden“ oder fehlender Fähigkeit wechseln Sie zu einem anderen Claude-Eintrag für dasselbe Szenario.
Hinweise nach Szenario
Standard-Chat (Streaming / Non-Streaming)
- Endpoint:
POST /v1/chat/completions messages-Array für Mehrturn-Dialog;role:system/user/assistant(wie OpenAI)- Non-Streaming:
stream: falseoderstreamweglassen → Chat-Abschluss erstellen (Non-Streaming) - Streaming:
stream: true→ Chat-Abschluss erstellen (Streaming) - Allgemeine Parameter (
temperature,max_tokens,top_pusw.) wie in der OpenAI-Doku
system-Rolle
Im OpenAI-Format steht der System-Prompt in messages mit role: "system". Die native Claude-API nutzt oft ein Top-Level-Feld system; siehe Chat-Abschluss erstellen (Streaming).
Thinking-Modus
Einige Claude-Thinking-Modelle aktivieren Thinking-Ausgabe in Streaming-Requests über ein Erweiterungsfeld:
{
"model": "claude-sonnet-4-20250514",
"messages": [{ "role": "user", "content": "逐步推导:为什么天空是蓝色的?" }],
"stream": true,
"extra_body": {
"enable_thinking": true
}
}- Die Darstellung von Thinking im kompatiblen Format hängt von Gateway und Modell ab; wählen Sie ein Claude-Modell mit „Thinking“ im Marktplatz
- Für präzise Steuerung des Thinking-Token-Budgets (
thinking.budget_tokens) und getrennte Thinking-/Antwort-Blöcke nutzen Sie die native Erweiterten-Thinking-Chat erstellen (POST /v1/messages)
Bilderkennung (Vision)
Im content der user-Nachricht ein multimodales Array: text + image_url (URL oder Base64).
{
"model": "claude-sonnet-4-20250514",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "描述这张图片中的主要内容" },
{
"type": "image_url",
"image_url": { "url": "https://example.com/photo.jpg" }
}
]
}
],
"stream": true
}- Streaming-Vision:
stream: true— Chat-Bilderkennung erstellen (Streaming) - Non-Streaming:
stream: false— Chat-Bilderkennung erstellen (Non-Streaming) - Base64: Chat-Bilderkennung erstellen (Streaming) Base64
OpenAI-kompatibel vs. native Claude-API
| Anforderung | Empfehlung |
|---|---|
| Schnelle Integration, OpenAI SDK / bestehender Code | OpenAI-kompatibles Format (diese Seite) |
Extended Thinking, budget_tokens, Thinking-Block-SSE | Native API — Erweiterten-Thinking-Chat erstellen |
| Tool Use / Funktionsaufrufe | Native API — Funktionsaufruf erstellen (Streaming) |
| Strukturierte Ausgabe (JSON Schema) | Native API — Strukturierte Ausgaben erstellen |
| PDF, Websuche | Native API — PDF-Unterstützung, Websuche |
| Nur Chat + Vision + Thinking mit OpenAI-Client | OpenAI-kompatibles Format deckt den Hauptpfad ab |
FAQ
F: Warum stimmt es nicht exakt mit der offiziellen OpenAI-Doku überein?
A: Die Kompatibilitätsschicht richtet Request/Antwort an OpenAI aus; darunter läuft Claude. Einige OpenAI-only-Parameter können ignoriert werden – orientieren Sie sich am tatsächlichen Modellsupport.
F: Was in model eintragen?
A: Die vollständige Modell-ID aus dem Marktplatz (meist mit claude). Keine Abkürzungen oder veralteten Namen.
F: Kann ich das offizielle Anthropic-Python-SDK nutzen?
A: Es zielt standardmäßig auf POST /v1/messages. Dafür die native API in diesem Ordner; das OpenAI SDK ist für das Format dieser Seite.
F: Streaming-Antwortformat?
A: SSE, Zeilen data: {...} und abschließend data: [DONE], wie bei OpenAI Streaming Chat Completions. Siehe Chat-Abschluss-Chunk-Objekt.
F: Vollständige JSON-Antwortstruktur?
A: Chat-Abschlussobjekt. Native Messages API: Chat-Abschlussobjekt (Anthropic-Format).
Weiterführend
- Erste Schritte — erster Aufruf und API Key
- API-Kurzanleitung — Base URL und Client
- Modelle auflisten —
GET /v1/models - Weitere Seiten im Ordner — Parameter und Beispiele für die native Claude Messages API