Generator für OpenAI-kompatible cURL-Anfragen
Generieren Sie cURL-Befehle für OpenAI-kompatible API-Endpunkte. Konfigurieren Sie Basis-URL, Endpunkt, Modell, Prompt, Temperatur und weitere Parameter für Anfragen an Chat-, Completion- und Embedding-Endpunkte.
Eingabe
Ausgabe
Readme
Was ist eine OpenAI-kompatible API?
Viele LLM-Anbieter und selbst gehostete Inferenzserver – OpenAI selbst, Azure OpenAI, Groq, OpenRouter, Together AI, Mistral, DeepSeek, vLLM, der Server von llama.cpp, LM Studio und der OpenAI-kompatible Modus von Ollama – stellen dieselbe von OpenAI populär gemachte REST-Schnittstelle bereit: JSON-Anfragen an Endpunkte wie /v1/chat/completions, authentifiziert mit einem Bearer-Token im Authorization-Header. Dadurch können Sie Anbieter austauschen, ohne Ihren Integrationscode neu schreiben zu müssen.
Einen korrekten cURL-Befehl für diese Endpunkte manuell zu erstellen bedeutet, URL, Header und JSON-Body exakt richtig anzugeben – insbesondere beim Anpassen von Sampling-Parametern wie Temperatur und Penalties oder beim Wechsel zwischen Anfragen für Chats, Legacy-Completions und Embeddings.
Toolbeschreibung
Dieses Tool generiert sofort einsatzbereite cURL-Befehle für jede OpenAI-kompatible API. Legen Sie Basis-URL, Endpunkt, Modell und Parameter fest und erhalten Sie sofort einen korrekt formatierten cURL-Befehl, den Sie direkt in Ihr Terminal oder Ihre Skripte einfügen können.
Beispiele
Chat-Completion:
curl -X POST "https://api.openai.com/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer IHR_API_SCHLÜSSEL" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{ "role": "system", "content": "Sie sind ein hilfreicher Assistent für Programmierung." },
{ "role": "user", "content": "Schreiben Sie eine Python-Funktion, die einen string umkehrt" }
],
"temperature": 0.3,
"stream": false
}'Selbst gehosteter Server (vLLM, llama.cpp, LM Studio, ...):
curl -X POST "http://localhost:8000/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer IHR_API_SCHLÜSSEL" \
-d '{
"model": "llama-3-8b-instruct",
"messages": [
{ "role": "user", "content": "Fassen Sie die Handlung von Hamlet in zwei Sätzen zusammen" }
],
"stream": true
}'Embeddings:
curl -X POST "https://api.openai.com/v1/embeddings" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer IHR_API_SCHLÜSSEL" \
-d '{
"model": "text-embedding-3-small",
"input": "Der schnelle braune Fuchs springt über den faulen Hund"
}'Funktionen
- Unterstützt die drei gängigsten OpenAI-kompatiblen Endpunkte:
/chat/completions,/completionsund/embeddings - Funktioniert mit jeder kompatiblen Basis-URL und eignet sich daher gleichermaßen für OpenAI, Azure, Groq, OpenRouter, Together AI und selbst gehostete Server
- Konfigurierbare Sampling-Parameter: Temperatur, Top-p, Frequency Penalty, Presence Penalty, maximale Anzahl an Tokens, Anzahl der Completions, Stop-Sequenzen und Seed
- Optionales JSON-Objekt als Antwortformat für Chat-Completions
- Es wird nichts übertragen – der cURL-Befehl wird vollständig in Ihrem Browser erstellt, und kein API-Schlüssel verlässt jemals Ihr Gerät
Optionen erklärt
| Option | Beschreibung | Standardwert | Bereich |
|---|---|---|---|
| Basis-URL | Die API-Basis ohne den Pfad des Endpunkts. | https://api.openai.com/v1 |
Jede URL |
| Endpunkt | Der API-Endpunkt, an den die Anfrage gesendet werden soll. | /chat/completions |
chat, completions, embeddings |
| Temperatur | Steuert die Zufälligkeit der Ausgabe. Niedrigere Werte erzeugen fokussierteren Text, höhere Werte erhöhen die Kreativität. | 1 | 0-2 |
| Top P | Schwellenwert für Nucleus-Sampling. Das Modell berücksichtigt Tokens, deren kumulative Wahrscheinlichkeit diesen Wert erreicht. | 1 | 0-1 |
| Frequency Penalty | Bestraft Tokens abhängig davon, wie häufig sie bereits vorkamen, und reduziert so wörtliche Wiederholungen. | 0 | -2-2 |
| Presence Penalty | Bestraft Tokens, die bereits vorgekommen sind, und ermutigt das Modell dadurch, neue Themen einzuführen. | 0 | -2-2 |
| Maximale Tokens | Maximale Anzahl der Tokens, die in der Antwort generiert werden. Leer lassen, um die Option wegzulassen und den Standardwert des Anbieters zu verwenden. | - | Jede Ganzzahl |
| Completions (n) | Wie viele Chat-/Completion-Auswahlen für die Eingabe generiert werden sollen. | 1 | Jede Ganzzahl |
| Seed | Fester Seed für möglichst reproduzierbare Ausgaben. Leer lassen, um zufällige Ergebnisse zu erhalten. | - | Jede Ganzzahl |
| Stop-Sequenzen | Durch Kommas getrennte Liste von Sequenzen, bei denen die API die Generierung weiterer Tokens beendet. | - | Jeder Text |
| Antwortformat | Auf JSON-Objekt setzen, um das Modell zu zwingen, eine gültige JSON-Ausgabe zurückzugeben (nur beim Chat-Endpunkt). | Keine | Keine / JSON-Objekt |
| Stream | Wenn aktiviert, wird die Antwort als serverseitige Events übertragen. Deaktivieren, um die vollständige Antwort auf einmal zu erhalten. | Aus | Ein / Aus |