Übersicht
TokenLab stellt mehrere API-Formate bereit, sodass gängige Coding-Tools, SDKs und Frameworks mit minimalem Anpassungsaufwand integriert werden können. Diese Seite ist bewusst fokussierter als eine Marketing-Matrix:- Unterstützt (Supported) bedeutet, dass wir einen konkreten Einrichtungspfad dokumentieren und TokenLab das Protokollformat bereitstellt, das dieser Pfad erwartet.
- Starker nativer Pfad (Strong native path) bedeutet, dass das Repository auch direkte Adapter- oder Request-Format-Belege für diese Protokollfamilie enthält.
- Best-effort bedeutet, dass die Integration funktionieren kann, der Upstream-Client diesen benutzerdefinierten Gateway-Workflow jedoch nicht als stabilen Vertrag behandelt.
Nicht unterstützte Felder werden nicht einheitlich behandelt. Auf Kompatibilitätsrouten werden einige Felder ignoriert oder normalisiert. Auf
/v1/responses können nicht unterstützte Felder explizite 400 oder 503 Fehler zurückgeben, wenn die Route das angeforderte Verhalten nicht garantieren kann.Unterstützte API-Formate
| Endpunkt | Format | Anwendungsfall |
|---|---|---|
/v1/chat/completions | OpenAI Chat | Universelle Kompatibilität |
/v1/responses | OpenAI Responses | Zustandsbehaftete Konversationen |
/v1/messages | Anthropic Messages | Native Claude-Funktionen |
/v1beta/models/:model:generateContent | Google Gemini | Native Gemini-Funktionen |
IDE & CLI Kompatibilität
Dokumentierte Tool-Pfade
| Tool | Support-Level | Format | Hinweise |
|---|---|---|---|
| Cursor | Unterstützt mit Einschränkungen | OpenAI-kompatibel | Funktioniert für BYOK-Standard-Chat/Editor-Flows, nicht als Ersatz für Cursor-verwaltete Funktionen wie Tab Completion |
| Claude Code CLI | Starker nativer Pfad | Anthropic | Native /v1/messages-Route mit Adapter-Abdeckung für Thinking und tool_choice |
| Codex CLI | Unterstützt mit Modell-/Pfad-Einschränkungen | OpenAI Responses | Behandeln Sie /v1/responses als erweiterten Pfad für Codex-spezifische Workflows; einige Responses-only-Felder sind nicht über jedes Modell und jeden Pfad garantiert |
| Gemini CLI | Best-effort / experimentell | Gemini | Der benutzerdefinierte TokenLab-Basis-URL-Flow ist keine offizielle Gemini CLI-Integration |
| OpenCode | Unterstützt | OpenAI-kompatibel | Verwenden Sie standardmäßig einen OpenAI-kompatiblen Provider; wechseln Sie nur dann zu einem Responses-basierten Provider, wenn Sie dies explizit benötigen |
| OpenHands | Unterstützt | OpenAI-kompatibel | Verwenden Sie den LiteLLM/OpenAI-kompatiblen Pfad mit openai/<model> und der /v1-Basis-URL von TokenLab |
Andere OpenAI-kompatible Editoren und Agent-Tools funktionieren oft mit demselben Basis-URL-Muster; prüfen Sie die Unterstützung für benutzerdefinierte Provider des jeweiligen Tools, bevor Sie es in der Produktion einsetzen.
Konfigurationsbeispiele
- Cursor
- Claude Code
- OpenCode
- Aider
- OpenAI-Format:
{ type: "function", function: { name, parameters } } - Anthropic-Format:
{ name, input_schema }(kein type-Feld)
SDK Kompatibilität
Dokumentierte SDK- & Framework-Pfade
| SDK / Framework | Sprache | Support-Level | Hinweise |
|---|---|---|---|
| OpenAI SDK | Python/JS/Go | Unterstützter Kernpfad | Kompatibilitätspfad für /v1 Chat Completions und Embeddings; verwenden Sie native Provider-Routen für anbieterspezifisches Verhalten und gehen Sie nicht davon aus, dass Responses-only-Felder bei jedem Modell funktionieren |
| Anthropic SDK | Python/JS | Starker nativer Pfad | Native Messages-Route mit direktem Beleg für Tools, Thinking und Prompt Caching |
| Vercel AI SDK | TypeScript | Empfohlenes Integrationsmuster | Bevorzugen Sie @ai-sdk/openai-compatible; verwenden Sie @ai-sdk/openai nur, wenn Sie explizit Responses-natives Verhalten wünschen |
| LangChain | Python/JS | Unterstützte Standardoberflächen | ChatOpenAI und OpenAIEmbeddings sind der beabsichtigte Umfang; anbieterspezifische Extras liegen außerhalb des Umfangs |
| LlamaIndex | Python | Unterstützt via OpenAILike | Verwenden Sie OpenAILike, nicht die integrierten OpenAI-Klassen, für Gateways von Drittanbietern wie TokenLab |
| OpenAI Agents SDK | Python | Unterstützter Chat-Completions-Pfad | Verwenden Sie AsyncOpenAI(base_url="https://api.tokenlab.sh/v1") mit OpenAIChatCompletionsModel; natives Responses-Verhalten hängt vom gewählten Modell und der Route ab |
| AutoGen | Python | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie OpenAIChatCompletionClient mit base_url: https://api.tokenlab.sh/v1 |
| Semantic Kernel | .NET | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie den benutzerdefinierten Endpunkt des OpenAI Chat Completion Connectors und verweisen Sie auf https://api.tokenlab.sh/v1 |
| CrewAI | Python | Unterstützter benutzerdefinierter Endpunktpfad | Setzen Sie OPENAI_API_BASE oder LLM(base_url=...) auf den /v1-Endpunkt von TokenLab |
| Pydantic AI | Python | Unterstützter OpenAI-kompatibler Provider-Pfad | Verwenden Sie OpenAIChatModel mit OpenAIProvider(base_url="https://api.tokenlab.sh/v1") |
| DSPy | Python | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie dspy.LM("openai/<model>", api_base="https://api.tokenlab.sh/v1") |
| Langflow | Python / Web | Unterstützt mit Einschränkungen | Verwenden Sie das Feld OpenAI API Base der OpenAI-Komponente mit dem /v1-Endpunkt von TokenLab |
| Haystack | Python | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie OpenAIChatGenerator(api_base_url="https://api.tokenlab.sh/v1") |
| Graphiti | Python | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie OpenAIGenericClient mit dem /v1-Endpunkt von TokenLab |
| Dify | - | Unterstützt mit Einschränkungen | Der OpenAI-Provider und Chat-Completions-orientierte Flows sind der beabsichtigte Pfad; nicht geeignet für Codex-spezifische Responses oder WebSocket-Verhalten |
| Flowise | Web / Node | Unterstützt mit Einschränkungen | Verwenden Sie den TokenLab-Chat-Node, falls verfügbar, oder einen ChatOpenAI-kompatiblen Node, der auf https://api.tokenlab.sh/v1 verweist |
| Mem0 | Python | Unterstützter benutzerdefinierter Endpunktpfad | Behalten Sie den OpenAI-Provider bei und setzen Sie openai_base_url auf den /v1-Endpunkt von TokenLab |
| Agno | Python | Unterstützter Pfad | Verwenden Sie den TokenLab-Modell-Wrapper, falls verfügbar, oder den OpenAI-kompatiblen Basis-URL-Pfad |
| Browser Use | Python | Unterstützter benutzerdefinierter Endpunktpfad | Verwenden Sie ChatOpenAILike mit dem /v1-Endpunkt von TokenLab |
| VoltAgent | TypeScript | Unterstützter benutzerdefinierter Endpunktpfad | Übergeben Sie einen AI SDK OpenAI-Provider, der mit baseURL: "https://api.tokenlab.sh/v1" konfiguriert ist |
| Ragas | Python | Unterstützter benutzerdefinierter Endpunktpfad | Übergeben Sie AsyncOpenAI(base_url="https://api.tokenlab.sh/v1") an llm_factory |
| Guardrails | Python | Unterstützter Validierungspfad | Übergeben Sie ein OpenAI SDK Chat Completions Callable, das mit dem /v1-Endpunkt von TokenLab konfiguriert ist |
| Prompt flow | Python / CLI | Unterstützter benutzerdefinierter Endpunktpfad | Erstellen Sie eine OpenAI-Verbindung mit base_url=https://api.tokenlab.sh/v1 |
| Promptfoo | CLI / Node | Unterstützter Pfad | Verwenden Sie OpenAI Chat- oder Responses-Provider mit apiBaseUrl: https://api.tokenlab.sh/v1 |
| Portkey Gateway | Gateway | Unterstützter Pfad | Verwenden Sie TokenLab als Upstream-Provider für OpenAI-kompatiblen Chat- und Responses-Traffic |
| Helicone | Gateway / Observability | Unterstützter Observability-Pfad | Leiten Sie OpenAI-kompatible Anfragen über das Helicone Gateway mit Helicone-Target-Url: https://api.tokenlab.sh |
| Langfuse | Observability | Unterstützter Tracing-Pfad | Konfigurieren Sie die Langfuse OpenAI-Integration mit der /v1-Basis-URL von TokenLab |
| OpenLIT | Observability | Unterstützter Tracing-Pfad | Instrumentieren Sie einen OpenAI SDK-Client, der mit der /v1-Basis-URL von TokenLab konfiguriert ist |
| OpenLLMetry | Observability | Unterstützter Tracing-Pfad | Verwenden Sie die OpenAI SDK-Instrumentierung mit der /v1-Basis-URL von TokenLab |
| Phoenix | Observability | Unterstützter Tracing-Pfad | Auto-instrumentieren Sie den OpenAI SDK-Client, der mit der /v1-Basis-URL von TokenLab konfiguriert ist |
| Opik | Observability | Unterstützter Tracing-Pfad | Umschließen Sie einen OpenAI SDK-Client, der mit der /v1-Basis-URL von TokenLab konfiguriert ist |
| LangBot | Bot Platform | Unterstützter Chat-Pfad | Verwenden Sie den TokenLab-Requester, falls verfügbar, oder konfigurieren Sie einen OpenAI-kompatiblen Requester mit dem /v1-Endpunkt von TokenLab |
| Open WebUI | Web Chat | Unterstützter Chat-App-Pfad | Fügen Sie TokenLab als OpenAI-kompatible API-Verbindung hinzu und aktualisieren Sie die Modellliste |
| Chatbox / DeepChat / Jan / LibreChat / Cherry Studio | Desktop / Web | Unterstützter Chat-App-Pfad | Verwenden Sie den OpenAI-kompatiblen benutzerdefinierten Provider-Flow der jeweiligen App; diese Apps sind meist auf Chat-Completions ausgerichtet |
Chat Completions Parameter
Kernparameter
| Parameter | Typ | Beschreibung |
|---|---|---|
model | string | Modell-Identifikator (erforderlich) |
messages | array | Konversationsnachrichten (erforderlich) |
max_tokens | integer | Maximale Ausgabe-Token |
temperature | number | Sampling-Temperatur (0-2) |
top_p | number | Nucleus-Sampling (0-1) |
stream | boolean | Streaming aktivieren |
Tool Calling
Tool Choice Optionen
| Format | Beispiel | Beschreibung |
|---|---|---|
| String | "auto", "none", "required" | Einfache Auswahl |
| OpenAI Objekt | { "type": "function", "function": { "name": "fn" } } | Spezifische Funktion erzwingen |
| Anthropic Objekt | { "type": "tool", "name": "fn", "disable_parallel_tool_use": true } | Natives Anthropic-Format |
Erweiterte Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
stream_options | object | Nur Chat Completions: { include_usage: true } für Token-Zählungen |
reasoning_effort | string | "low", "medium", "high" für GPT-5-Modelle mit Reasoning-Funktion |
service_tier | string | "auto" oder "default" |
seed | integer | Deterministische Ausgaben |
logprobs | boolean | Log-Wahrscheinlichkeiten zurückgeben |
top_logprobs | integer | Anzahl der Top-Logprobs (0-20) |
logit_bias | object | Token-Bias-Map (-100 bis 100) |
frequency_penalty | number | Wiederholungspenalty (-2 bis 2) |
presence_penalty | number | Themen-Penalty (-2 bis 2) |
stop | string/array | Stopp-Sequenzen |
n | integer | Anzahl der Completions (1-128) |
user | string | Benutzer-Identifikator für Tracking |
OpenAI Erweiterte Funktionen
| Parameter | Typ | Beschreibung |
|---|---|---|
modalities | array | ["text", "audio"] für Multimodalität |
audio | object | Audio-Ausgabekonfiguration (Stimme, Format) |
prediction | object | Vorhergesagte Ausgabe für schnellere Completion |
metadata | object | Schlüssel-Wert-Paare für Tracking |
store | boolean | Für späteren Abruf speichern |
Anbieterspezifische Optionen
Anthropic Messages Parameter
Kernparameter
| Parameter | Typ | Beschreibung |
|---|---|---|
model | string | Modell-Identifikator |
messages | array | Konversationsnachrichten |
max_tokens | integer | Maximale Ausgabe (bis zu 128000) |
system | string/array | System-Prompt |
stream | boolean | Streaming aktivieren |
Tool Calling
Extended Thinking
Responses API Parameter
Kernparameter
| Parameter | Typ | Beschreibung |
|---|---|---|
model | string | Modell-Identifikator |
input | string/array | Eingabeinhalt |
instructions | string | Systemanweisungen |
max_output_tokens | integer | Maximale Ausgabe-Token |
previous_response_id | string | Konversation fortsetzen |
Erweiterte Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
truncation_strategy | string | "auto" oder "disabled" |
include | array | ["reasoning.encrypted_content"] |
reasoning_effort | string | Für Reasoning-Modelle |
service_tier | string | Prioritätsstufe |
Tool-Format
Unterstützt sowohl OpenAI- als auch Anthropic-Tool-Formate:Gemini API Parameter
Kernparameter
| Parameter | Typ | Beschreibung |
|---|---|---|
contents | array | Konversationsinhalt |
systemInstruction | object | System-Prompt |
generationConfig | object | Generierungseinstellungen |
Tools
Sicherheitseinstellungen
Zusätzliche Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
cachedContent | string | Referenz auf zwischengespeicherten Inhalt |
responseMimeType | string | "text/plain" oder "application/json" |
responseSchema | object | JSON-Schema für strukturierte Ausgabe |
Streaming
Generierungs-Endpunkte, diestream: true unterstützen, einschließlich Chat Completions und Responses, verwenden Server-Sent Events (SSE):
Fehlerbehandlung
TokenLab gibt OpenAI-kompatible Fehlerantworten zurück:Best Practices
Verwenden Sie Passthrough für unbekannte Parameter
Verwenden Sie Passthrough für unbekannte Parameter
Unbekannte Parameter werden nur weitergeleitet, wenn die gewählte öffentliche Route und das Modell diese unterstützen.
Verwenden Sie stream_options.include_usage nur für Chat Completions
Verwenden Sie stream_options.include_usage nur für Chat Completions
Aktivieren Sie für Chat Completions-Streaming
stream_options.include_usage für genaue Token-Zählungen. Responses hat einen eigenen Streaming-Vertrag und bietet diese Chat-exklusive Option nicht an.Verwenden Sie das passende tool_choice-Format
Verwenden Sie das passende tool_choice-Format
Stimmen Sie das Format auf das Ihres SDKs ab. TokenLab akzeptiert sowohl OpenAI- als auch Anthropic-Formate.