LLM-Routing mit RouteLLM: Kosten sparen mit dem passenden Modell

Inhalt
LLM-Routing schickt jeden Prompt an das Modell, das zu ihm passt: Einfache Prompts gehen an ein kleines, günstiges Modell, komplexe an ein starkes, teures. Den Router müssen Sie nicht selbst bauen. RouteLLM von LMSYS ist ein Open-Source-Framework mit 4 vortrainierten Routern. In den Benchmarks von LMSYS senkte es die Kosten auf MT Bench um über 85 % und erreichte dabei 95 % der Leistung von GPT-4. Dieser Beitrag erklärt, wie RouteLLM funktioniert, wie Sie es einrichten und kalibrieren, wie Sie zwischen Anbietern wie OpenAI und Google Gemini routen und wie Sie es als direkten Ersatz für die OpenAI-API betreiben.
Update (November 2026): Seit August 2024 hat sich bei den Modellen viel
getan. Lesen Sie die Modellempfehlungen unten deshalb als Einschätzungen aus
dem Jahr 2024. Google hat
gemini-1.5-flash am 29. September 2025 abgeschaltet,
und OpenAI
entfernt die Snapshots
gpt-4o und gpt-4o-mini am 14. Januar 2027 aus seiner API. Der
Routing-Ansatz funktioniert weiterhin; geben Sie einfach aktuelle Modellnamen
als strong_model und weak_model an, zum Beispiel
Claude Sonnet 5.5
als starkes Modell und Claude Haiku 5.5 oder
Gemini 3.5 Flash-Lite als
schwaches. Die Beispiele mit Gemini und Ollama unten verwenden aktuelle
Modellnamen.
Warum mehr als ein LLM?
Bei Large Language Models (LLMs) haben wir meist zwei Möglichkeiten:
-
Ein leistungsstarkes Modell wie GPT-4o oder Claude 3.5 Sonnet, das all die guten Dinge liefert: hochwertige, sehr intelligente (nun ja, relativ gesehen) Antworten. Diese Modelle kosten aber einiges. Sie sind außerdem langsamer und erzeugen weniger Tokens pro Sekunde, was die Skalierbarkeit und den Nutzen Ihrer Anwendung einschränken kann.
-
Ein kleineres Modell wie GPT-4o mini oder das bemerkenswerte Google Gemini 1.5 Flash. Diese Modelle sind enorm effizient und günstig, aber seien wir ehrlich: Bei komplexeren Aufgaben überzeugen ihre Antworten oft weniger.
Weil die meisten von uns gute Ergebnisse brauchen, greifen wir zu den stärkeren Modellen. Das geht oft auf Kosten der Marge, oder das Projekt startet gar nicht erst, weil die kalkulierten Kosten schlicht zu hoch sind.
Es geht auch anders. Keine Regel schreibt vor, für alle Aufgaben dasselbe Modell zu nutzen. Wir können mehrere Modelle in unsere Prozesse und Anwendungen einbinden und für jede Aufgabe das passende wählen: das günstige, schnelle für einfache, vorbereitende Aufgaben und das starke für die Aufgaben, die den meisten Nutzen bringen oder am komplexesten sind. (Routing ist eine von mehreren Strategien, um LLM-Kosten zu senken.)
Dafür gibt es mehrere Wege. Ein ziemlich grober: Man fragt ein recht starkes LLM, ob eine Aufgabe komplex ist, und wählt anhand der Antwort das Modell. (Das habe ich schon einige Male so umgesetzt gesehen.) Das Problem: Dieser Ansatz ist von Natur aus langsam und kann mit der Zeit recht teuer werden, zumindest verursacht er Kosten, die gar nicht nötig wären. Ein anderer Weg ist ein einfaches, sehr effizientes Modell, das lokal läuft und Aufgaben an das richtige Modell weiterleitet.
Dieser zweite Ansatz hat sehr geringe Latenz und niedrige Inferenzkosten, weil solche spezialisierten "Routing-Modelle" sehr klein sein können. Sie zu erstellen, ist allerdings recht aufwendig.
Dank der Leute bei LMSYS ist diese Arbeit schon erledigt. Sie haben 4 allgemeine Router entwickelt, die LLM-Routing abhängig von der jeweiligen Aufgabe umsetzen. Das Paket heißt RouteLLM.
Was ist RouteLLM und wie funktioniert es?
RouteLLM ist ein Python-Paket und Framework, mit dem Sie LLM-Router betreiben und evaluieren. Es enthält 4 vortrainierte Router, die gute Ergebnisse liefern.
Diese Router entscheiden anhand der Komplexität der Aufgabe, ob ein Prompt an ein "starkes" Modell (wie GPT-4o) oder ein "schwaches" Modell (wie GPT-4o mini) geht.
In der Ankündigung von RouteLLM heißt es außerdem, die Standard-Router hätten gelernt, welche Modelle (Stand 2024) stark und welche schwach sind. Das ist auch theoretisch plausibel: Routing kann sich nicht allein auf die Komplexität der Aufgabe stützen, sondern muss auch die Eigenheiten der einzelnen LLMs berücksichtigen.
RouteLLM optimiert also Kosten gegen Antwortqualität. Das Diagramm unten zeigt die Leistung der Modelle im Verhältnis zu den Kosten (beachten Sie die logarithmische x-Achse). Wer immer an das stärkste Modell, GPT-4o, routet, bekommt die bestmöglichen Antworten, aber auch die höchsten Kosten. Ein guter Router erreicht dagegen 90 % der Antwortqualität bei 10 % der Kosten. (Die Grafik stammt aus dem Blogbeitrag zur Ankündigung von RouteLLM.)
Kosten im Verhältnis zur Antwortqualität mit RouteLLM
Das Prinzip ist einfach. Das Framework bietet eine Schnittstelle, die mit der OpenAI-API kompatibel ist, und sitzt vor den Modellen, an die es weiterleitet. In einem einfachen Setup verbindet sich Ihre Anwendung, die bereits mit OpenAI arbeitet, mit RouteLLM. RouteLLM wiederum spricht mit der OpenAI-API und nutzt je nach Prompt GPT-4o oder GPT-4o mini.
RouteLLM als Teil einer Anwendung
Wie viel RouteLLM einsparen kann
Laut den Benchmarks von LMSYS senkte RouteLLM die Kosten auf MT Bench um über 85 %, auf MMLU um 45 % und auf GSM8K um 35 %, jeweils im Vergleich zur ausschließlichen Nutzung von GPT-4. Dabei erreichte es nach Angaben von LMSYS weiterhin 95 % der Leistung von GPT-4. In den wichtigsten Auswertungen wurde zwischen GPT-4 Turbo als starkem und Mixtral 8x7B als schwachem Modell geroutet.
Das ist bemerkenswert. Die großen Unterschiede bei den Einsparungen kommen von der unterschiedlichen Art der Benchmarks. MT Bench ist allgemeiner und weniger komplex als GSM8K, beim weniger komplexen Benchmark sind also deutlich höhere Einsparungen zu erwarten.
- MT Bench ist ein allgemeiner Benchmark aus hochwertigen Frage-Antwort-Paaren aus der Praxis.
- MMLU (Massive Multitask Language Understanding) misst das Wissen, das ein Modell im Pretraining erworben hat, und bewertet Modelle ausschließlich in Zero-Shot- und Few-Shot-Szenarien. Der Benchmark ist ausgewogen, mit "leichteren" Allgemeinwissensfragen und komplexeren Aufgaben, bei denen Few-Shot-Techniken nötig sind.
- GSM8K ist ein Datensatz mit 8.500 hochwertigen, sprachlich vielfältigen Textaufgaben aus der Grundschulmathematik. Mathematik fällt LLMs recht schwer, man würde also erwarten, dass der Router meistens das starke Modell wählt.
Insgesamt scheint das Sparpotenzial je nach Anwendungsfall zwischen 30 und 80 % zu liegen!
Weniger Aufrufe des großen Modells bedeuten auch weniger Energie pro Anfrage. Unser Beitrag über den Energiebedarf generativer KI (auf Englisch) liefert die Zahlen dazu.
RouteLLM einrichten und LLM-Kosten senken
Genug der Theorie, setzen wir das in die Praxis um.
Zuerst installieren Sie RouteLLM. Wir installieren gleich auch die
serve-Abhängigkeiten, dazu später mehr.
Dann importieren Sie die nötigen Module und setzen den API-Key. Dieses erste Beispiel nutzt nur Modelle von OpenAI, wir brauchen also nur einen OpenAI-API-Key.
Zum Schluss erstellen Sie eine Client-Instanz für RouteLLM:
Mehr brauchen Sie nicht, um RouteLLM in Ihrer Anwendung zu nutzen. RouteLLM
nimmt den Prompt des Nutzers, bestimmt mit dem mf-Router die Komplexität der
Aufgabe und leitet sie an das passende Modell weiter.
Für den Parameter routers gibt es 4 Router-Typen:
mfnutzt ein Matrixfaktorisierungsmodell, das auf den Präferenzdaten trainiert wurde. Dieser Router ist für die meisten Anwendungsfälle die beste Wahl.sw_rankingroutet über eine gewichtete Elo-Berechnung, bei der jede Stimme danach gewichtet wird, wie ähnlich sie dem Prompt des Nutzers ist.bertnutzt einen BERT-Klassifikator, der auf den Präferenzdaten trainiert wurde.causal_llmnutzt einen LLM-basierten Klassifikator, der auf die Präferenzdaten abgestimmt wurde.
Kurz gesagt: Nach unserer Erfahrung (und laut Empfehlung der Autoren von
RouteLLM) nehmen Sie einfach den mf-Router.
Woher die Zahl 0.116 kommt, erklärt der nächste Abschnitt.
Den Schwellenwert von RouteLLM kalibrieren
Jeder Router lässt sich so einstellen, dass er einen bestimmten Anteil der Prompts eines Datensatzes an das starke und den Rest an das schwache Modell schickt.
Die Autoren empfehlen, RouteLLM mit dem frei verfügbaren Chatbot-Arena-Datensatz zu kalibrieren. Er enthält über 55.000 echte Gespräche zwischen Nutzern und LLMs samt Nutzerpräferenzen, mit über 70 aktuellen LLMs wie GPT-4, Claude 2, Llama 2, Gemini und Mistral-Modellen. Jeder Eintrag ist ein Duell, in dem 2 LLMs dieselbe Frage beantworten. Der Nutzer bewertet das Ergebnis als "Modell A besser", "Modell B besser", "unentschieden" oder "unentschieden (beide schlecht)".
Für die Kalibrierung führen Sie aus:
Die Ausgabe sieht etwa so aus:
Dieser Wert (0.11593) ist der Schwellenwert des Routers. Tragen Sie ihn wie im
Beispiel oben in die Chat-Completion-Anfrage des Clients ein (etwa
model="router-mf-0.11593").
Hinweis: Ein Anteil von 50 % bei der Kalibrierung heißt nicht, dass 50 % Ihrer tatsächlichen Anfragen an das starke Modell gehen. Es heißt, dass 50 % der Prompts im Kalibrierungsdatensatz an das starke Modell gehen würden. Sind Ihre typischen Prompts komplexer oder einfacher als die Kalibrierungsprompts, weicht Ihr tatsächlicher Anteil ab.
Als Faustregel kalibrieren Sie zunächst auf 50 %. Soll das starke Modell häufiger zum Zug kommen, setzen Sie den Wert höher, soll das schwache Modell öfter dran sein, niedriger. Und testen Sie Ihre Ergebnisse!
Zwischen Anbietern wie OpenAI und Google Gemini routen
Angenommen, wir wollen zwischen GPT-4o und einem Gemini-Flash-Modell routen. Als wir diesen Beitrag im August 2024 geschrieben haben, war das eine sehr naheliegende Kombination: GPT-4o war das stärkere Modell, und Gemini 1.5 Flash war eines der besten "schwachen" Modelle, mit großem Kontextfenster, hoher Geschwindigkeit und niedrigen Kosten. Gemini 1.5 Flash ist inzwischen abgeschaltet, deshalb verwendet das Beispiel ein aktuelles kleines Modell, Gemini 3.5 Flash-Lite. Vergleichen Sie aktuelle Modelle mit Ihren eigenen Prompts, bevor Sie sich für ein Paar entscheiden.
Dafür setzen wir beim Erstellen des Clients die Modelle und geben API-Keys für beide Anbieter an:
Der Rest bleibt gleich.
Unter der Haube nutzt RouteLLM LiteLLM. LiteLLM ist ein Paket, das OpenAI-kompatible SDK- und API-Endpunkte für nahezu jedes aktuelle LLM bereitstellt. Wenn Sie andere Modelle mit RouteLLM nutzen möchten, finden Sie den Namen des API-Keys und des Modells in der Übersicht der von LiteLLM unterstützten Modelle.
Sie können sogar lokale Modelle mit Ollama nutzen.
Starten Sie Ollama und richten Sie den Controller so ein:
Wenn Sie das schwache Modell lieber auf Ihrem eigenen Server betreiben, zeigt unsere Anleitung, wie Sie ein LLM mit vLLM und Caddy selbst hosten. Auch SGLang und llama.cpp stellen OpenAI-kompatible APIs bereit; siehe unsere Anleitungen zu DeepSeek R1 mit SGLang (auf Englisch) und zu GLM-4.7-Flash lokal mit llama.cpp.
Den RouteLLM-Server als Ersatz für die OpenAI-API nutzen
In den Beispielen oben haben wir das Python-SDK von RouteLLM in einer Python-Anwendung verwendet. RouteLLM kann aber auch als eigenständiger, OpenAI-kompatibler Server laufen. Für produktive Anwendungen ist das wahrscheinlich der bessere Weg.
Mit diesem Befehl starten Sie den Server mit dem mf-Router:
Um den Server zu nutzen, ändern Sie im Client des OpenAI-SDK den Modellnamen und die API-URL:
Zwei geänderte Codezeilen in Ihrer bestehenden Anwendung, und Sie sparen womöglich Hunderte Dollar im Monat.
Fazit
RouteLLM leitet jeden Prompt an ein starkes oder ein schwaches Modell weiter
und kann so bis zu 80 % der LLM-Kosten sparen. Dafür installieren Sie das
Paket, wählen den mf-Router, kalibrieren den Schwellenwert mit dem
Chatbot-Arena-Datensatz (Start mit 50 % Aufrufen des starken Modells) und
tragen den kalibrierten Wert im Modellnamen ein. Über LiteLLM können starkes
und schwaches Modell von verschiedenen Anbietern wie OpenAI und Google Gemini
kommen oder lokal mit Ollama laufen. Im produktiven Betrieb starten Sie den
RouteLLM-Server und richten Ihren bestehenden OpenAI-SDK-Client darauf aus.
Wir halten RouteLLM für eine sehr gute Ergänzung jedes KI-Werkzeugkastens: Mit wenig Aufwand bringt es Einsparungen fast zum Nulltarif.
Wenn Sie herausfinden möchten, welche Aufgaben in Ihren KI-Anwendungen mit einem günstigeren Modell auskommen, und das Routing dafür aufsetzen wollen, sprechen Sie uns an. Weitere Ansätze finden Sie in unserem Überblick, wie Sie LLM-Kosten senken.
Weiterlesen
- KI direkt aus der Postgres-Datenbank nutzen (auf Englisch)
- Dokumente mit LLMs auslesen und strukturieren
- GPT-4o mini feintunen (auf Englisch)
- Kosten und Latenz jedes LLM-Aufrufs mit Langfuse messen
Sie möchten zuverlässige KI-Agenten-Systeme bauen?
Wir haben auf Basis aktueller Forschung einen ausführlichen Leitfaden (auf Englisch) erstellt, wie Sie robuste KI-Agenten-Systeme bauen, die auch im produktiven Betrieb funktionieren. Der Leitfaden behandelt:
- die 14 systematischen Fehlerquellen in Multi-Agenten-Systemen
- belegte Best Practices für das Design von Agenten
- strukturierte Kommunikationsprotokolle und Prüfmechanismen



