Wie man Unsloth als API-Endpunkt verwendet
Du kannst lokale LLMs mit Tools wie Claude Code und Codex ausführen, indem du diese Tools mit Unsloths OpenAI-kompatiblem API-Endpunktverbindest. Damit kannst du Modelle wie Qwen und Gemma lokal für agentisches Programmieren ausführen. Unsloth hat außerdem nützliche Funktionen wie selbstheilendes Tool-Aufrufen, Code-Ausführungund Websuche.
Unsloth macht es einfach, einen schnellen API-Inferenz-Endpunkt bereitzustellen, der Folgendes bietet:
Selbstheilende Tool-Aufrufesorgen dafür, dass defekte oder fehlerhafte Tool-Aufrufe um 50 % reduziert werden
Code-Ausführung -Support, der Bash- und Python-Ausführung für genauere Code-Ausgaben ermöglicht.
Erweiterte Websuche die Webseiten aufruft und tatsächlich liest, um tiefgehende Informationen zu sammeln.
Automatische Inferenz Einstellungen für GGUF-Modelle (Temp, Top-K usw.)
In Unsloth geladene Modelle (einschließlich GGUFs) werden als authentifizierte API über llama-serverbereitgestellt. Aus Sicherheitsgründen wird ein langer API-Schlüssel generiert, so wie OpenAI einen bereitstellt.
Deine lokalen Modelle können dann direkt in deinem bevorzugten KI-Agenten, SDK oder Chat-Client verwendet werden. Unsloth spricht zwei Dialekte auf demselben Port. Beide unterstützen Streaming, Tool-Aufrufe (OpenAI Tools / Anthropic Tools), und Vision-Eingaben:

Anthropic-kompatibel
/v1/messagesfür Claude Code, OpenClaw, das Anthropic SDK und jeden Client, der die Messages API erwartet.OpenAI-kompatibel
/v1/chat/completionsund/v1/responsesfür das OpenAI SDK, OpenCode, Cursor, Continue, Cline, Open WebUI, SillyTavern und jedes OpenAI-kompatible Tool.
⚡ Schnellstart
Installiere oder aktualisiere Unsloth Studio. Starte dann Unsloth.
Lade ein Modell. Klicke auf New Chat, wähle ein Modell (GGUF) aus oder suche danach und warte, bis es fertig geladen ist.
Erstelle einen API-Schlüssel. Klicke unten links auf dein Unsloth -Avatar → Einstellungen → API → gib einen Schlüsselnamen ein → Erstellen. Kopiere den
sk-unsloth-…Wert, der angezeigt wird. Unsloth zeigt ihn nur einmal an.Richte deinen Client auf Unsloth aus. Verwende
http://localhost:PORTals Basis-URL und deinensk-unsloth-…Schlüssel zur Authentifizierung. Spring unten zum Rezept für dein Tool.
🔑 Einen API-Schlüssel erstellen
Öffne die Seitenleiste und klicke unten links auf deinen Unsloth Avatar.
Gehe zu Einstellungen → API (Globus 🌐 -Symbol).
Gib einen aussagekräftigen Namen ein (z. B.
claude-code-macbook). Lege optional ein Ablaufdatum festKlicke auf Erstellen.
Kopiere den Schlüssel. Unsloth speichert nur einen Hash und du kannst ihn nicht erneut anzeigen.
Alle Schlüssel beginnen mit dem sk-unsloth- Präfix. Du kannst einen Schlüssel jederzeit auf derselben Seite widerrufen. Anfragen mit einem widerrufenen Schlüssel schlagen mit 401 Unauthorized.
Behandle deinen API-Schlüssel wie ein Passwort. Jeder mit dem Schlüssel und Netzwerkzugriff auf deine Unsloth-Instanz kann Anfragen an dein geladenes Modell senden.
⏳ Modell laden
Unsloth-Ausführungsbefehl
Installiere oder aktualisiere Unsloth Studio. Frühere Versionen stellen die externe API nicht bereit. Siehe Installation.
Lade ein GGUF-Modell. Lade ein GGUF-Modell mit dem Ausführungsbefehl. Dadurch wird auch die UI auf dem Standardport geladen. Die Endpunkt-URL und der API-Schlüssel werden in der Konsole ausgegeben und können dann direkt mit dem Client deiner Wahl verwendet werden.
Ein Modell über die CLI laden
Du kannst ein Modell laden und automatisch einen API-Schlüssel für dich erstellen lassen, indem du das unsloth CLI-Tool verwendest. Wenn das Modell fertig geladen ist, werden die Endpunkt-URL und der API-Schlüssel in deiner Konsole ausgegeben. Kopiere sie in deinen Client deiner Wahl und schon kann es losgehen.
Bevor du beginnst
Stelle sicher, dass du eine aktuelle Version von Unsloth Studio verwendest, da frühere Versionen die externe API nicht bereitstellen. Siehe Installation.
Der schnelle Weg
Öffne ein Terminal und lade ein GGUF-Modell:
Dadurch wird der Server auf dem Standardport gestartet, die UI geladen und deine Endpunkt-URL sowie dein API-Schlüssel ausgegeben.
Wie der Modellname funktioniert
Du kannst auf verschiedene Arten auf ein Modell verweisen. Wähle die für dich einfachste:
Das Ausführen anpassen (optional)
Du brauchst nichts davon für ein einfaches Laden, aber unsloth run unterstützt viele Laufzeit-Flags von llama-server zur Anpassung von Leistung, Speicherverbrauch, Kontextlänge, Generierungsverhalten, Netzwerk und Tool-Zugriff.
Zusätzliche Flags werden direkt an den zugrunde liegenden Inferenzserver weitergeleitet, und deine Werte überschreiben die Standardwerte von Studio.
Generierungsverhalten anpassen
Sampling-Einstellungen steuern, wie kreativ, fokussiert oder deterministisch sich das Modell bei der Generierung verhält.
Niedrigere Temperaturwerte erzeugen normalerweise stabilere Ausgaben, während Top-P-, Top-K-, Min-P- und Repeat-Penalty-Einstellungen die Token-Auswahl und Wiederholungen weiter steuern.
Kontextlänge und CPU-Threads erhöhen
Nützlich, wenn du mit großen Projekten, langen Chats oder Agenten-Workflows arbeitest, die mehr Speicher benötigen.
Die API in deinem lokalen Netzwerk bereitstellen
Standardmäßig läuft Unsloth nur lokal auf deinem Rechner. Du kannst die API für andere Geräte in deinem Netzwerk freigeben, indem du sie bindest an 0.0.0.0.
Reasoning-Verhalten steuern
Einige Modelle mit Reasoning-Fähigkeit unterstützen zusätzliche Flags zur Steuerung von Denken und Reasoning-Verhalten.
Die Unterstützung für Reasoning hängt von den Fähigkeiten des Modells und des Backends ab.
Serverseitige Tools aktivieren oder deaktivieren
Steuert, ob Tools wie Websuche und Code-Ausführung vom Inferenzserver bereitgestellt werden.
Unsloth unterstützt die meisten Laufzeit-Flags von llama-server, einschließlich Kontextgröße, GPU-Layern, Threading, Sampling, Netzwerk und Tool-Konfiguration.
Siehe die llama-server Dokumentation für die vollständige Liste der unterstützten Laufzeit-Flags.
Richtlinie für serverseitige Tools
unsloth run steuert, ob serverseitige Tools (Websuche, Code-Ausführung usw.) vom Inferenzserver bereitgestellt werden. Die Standardwerte hängen von der Bind-Adresse ab:
127.0.0.1(localhost) — Tools standardmäßig ein. Nur dein Rechner kann den Server erreichen.0.0.0.0oder jede andere Nicht-Loopback-Adresse — Tools aus standardmäßig. Ein geleakter API-Schlüssel auf einem netzwerkseitig erreichbaren Server bedeutet beliebige Code-Ausführung auf dem Host.
Flags:
--enable-tools/--disable-tools— erzwingt ein oder aus. Ein0.0.0.0,--enable-toolszeigt eine Sicherheitsabfrage y/N an.--yes/-y— überspringt die Abfrage (für Automatisierung).
Die festgelegte Richtlinie ist ein harter Override auf Prozessebene — einzelne Anfragen können sie nicht umgehen über enable_tools=true im Request-Body.

🌐 Endpunkte
Studio stellt diese Endpunkte auf dem Port bereit, auf dem es gestartet wurde (typischerweise http://localhost:8000 oder http://localhost:8888):
POST /v1/messages
Anthropic Messages API
Claude Code, Anthropic SDK, OpenClaw, alles, was Anthropic spricht
POST /v1/chat/completions
OpenAI Chat Completions API
OpenAI SDK, opencode, Cursor, Continue, Cline, Open WebUI, curl usw.
GET /v1/models
OpenAI-Modelleliste
Listet die Modelle auf, die derzeit in Unsloth geladen sind
Authentifiziere dich mit einem Authorization: Bearer sk-unsloth-… Header bei jeder Anfrage.
Du musst keine unterschiedlichen Server für die beiden Formate ausführen. Studio verarbeitet beide auf demselben Port.
🖇️ Deinen Client verbinden
Unsloth ermöglicht dir, lokale LLMs über die meisten Frameworks auszuführen, darunter Claude Code, Codex, OpenClaw, OpenCode und mehr. Klicke unten auf die jeweiligen Tools für eine Anleitung:
🧰 Tool-Aufrufe
Beide Endpunkte unterstützen Funktions-/Tool-Aufrufe in ihrem nativen Format sowie eine Unsloth-spezifische Kurzform für die integrierten Tools von Studio.
OpenAI-Stil-Tools: sende Tools und tool_choice an /v1/chat/completions genau wie du es mit OpenAI tun würdest. Claude Code (über /v1/messages), opencode, Cursor, Continue und Cline funktionieren sofort.
Anthropic-Stil-Tools: sende Tools (mit input_schema) und tool_choice an /v1/messages genau wie du es mit Claude tun würdest.
Studio-Server-Tools: Studio kann Python, Websuche und Bash ausführen serverseitig und die Ergebnisse als tool_result -Ereignisse zurückstreamen. Aktiviere dies, indem du diese zusätzlichen Felder zu einem der beiden Endpunkte hinzufügst:
Das Modell sieht die Ausgabe jedes Tools in seinem nächsten Durchlauf. Für eine tiefere Abdeckung (Schemas, Streaming-Ereignisse, Verkettung) siehe .
Wenn du den Anthropic /v1/messages -Endpunkt verwendest, tool_choice ist die Zuordnung sauber: Anthropic auto → OpenAI auto, Anthropic beliebig → OpenAI erforderlich, Anthropic {type: "tool", name: "x"} → OpenAI {type: "function", function: {name: "x"}}, Anthropic none → OpenAI none.
❔ Fehlerbehebung
401 Unauthorized ; entweder fehlt der Authorization -Header oder der Schlüssel ist falsch. Schlüssel müssen als Authorization: Bearer sk-unsloth-…übergeben werden. Wenn du den Schlüssel verloren hast, erstelle einen neuen unter Einstellungen → API. Studio zeigt alte Schlüssel nach der Erstellung nicht an.
Verbindung zum Modellserver verloren : Studio konnte den zugrunde liegenden llama.cpp-Server nicht erreichen. Meistens wurde das Laden des Modells abgeschlossen, aber es ist abgestürzt, oder der Modell-Tab wurde in Studio geschlossen. Lade das Modell erneut von New Chat und versuche es erneut.
Claude Code zeigt das standardmäßige Anthropic-Modell an, nicht mein lokales ; prüfe, ob alle drei Env-Variablen im gleichen Shell gesetzt sind, in der du claude:
Dann führe /model in Claude Code aus, um es zu bestätigen. Unter Windows PowerShell verwende $env:ANTHROPIC_BASE_URL usw.
stream: true gibt statt SSE einen einzelnen JSON-Blob zurück ; stelle sicher, dass du den richtigen Pfad aufrufst (/v1/messages oder /v1/chat/completions) und dass dein HTTP-Client die Antwort tatsächlich als Stream verarbeitet und nicht puffert.
Ich kann den Namen des Modells nicht finden, um ihn opencode (oder OpenClaw / einem anderen Client) hinzuzufügen ; frage direkt Studio. GET /v1/models gibt die genaue Modell-ID zurück, die du in das Feld "Model ID" des Clients eintragen musst:
Du erhältst ein JSON-Payload in der Form {"data": [{"id": "gemma-4-26B-A4B-it-GGUF", ...}]}. Kopiere den id Wert ist die Zeichenkette, die opencode's Model ID Feld (linke Spalte) und OpenClaws models[].id erwarten. Der Anzeigename rechts ist beliebig und das, was Nutzer sehen sollen.
Tool-Aufrufe werden nicht ausgeführt ; Das Modell muss Tool-Aufrufe für clientseitige Tools unterstützen (Tools / tool_choice). Für die integrierten Tools von Studio denke daran, enable_tools: true und die gewünschten in enabled_tools aufzulisten (z. B. ["python", "web_search"]).
Zuletzt aktualisiert
War das hilfreich?




