LLM-basierte Agents mit RL auf eigenen GPUs trainieren
Das Training von Sprachmodellen mit Reinforcement Learning wurde lange Zeit mit riesigen Clustern und geschlossenen Laboren in Verbindung gebracht. Während SFT (Supervised Fine-Tuning) für ML-Ingenieure zur Routine geworden ist, war das zuverlässige Ausführen von PPO oder GRPO für mehrstufige Agents immer eine ziemliche Herausforderung. Man musste entweder eigenen Wrapper-Code um vLLM und DeepSpeed schreiben oder sich mit den Einschränkungen fertiger Frameworks abfinden.
Forscher des Berkeley Sky Computing Lab haben beschlossen, diesen Prozess zu vereinfachen, und haben das SkyRL-Projekt als Open Source veröffentlicht. Dies ist ein vollwertiges Framework, das den gesamten RL-Fine-Tuning-Zyklus abdeckt: von der Trajektorien-Generierung in Isolation bis zur Aktualisierung von Modellgewichten zur Laufzeit.
Aus was das Framework besteht
Die Entwickler haben kein monolithisches System aufgebaut. Stattdessen haben sie das Projekt in mehrere unabhängige Schichten aufgeteilt, die leicht für Ihre spezifischen Aufgaben kombiniert werden können.
Die zentrale Schicht skyrl übernimmt die Training-Orchestrierung auf Ihrer Hardware. Sie kombiniert eine Training-Engine mit verteilter Inferenz. Das Hauptmerkmal dieser Schicht ist die Unterstützung des offenen Tinker API-Standards. Sie können ein Trainingsskript einmal schreiben und es dann auf einem lokalen Server mit NVIDIA- oder AMD-GPUs sowie in der Cloud ausführen.
Schicht skyrl-gym bietet eine Schnittstelle zur Erstellung von Trainingsumgebungen. Im Gegensatz zum klassischen Gymnasium für Robotik sind die Umgebungen hier für Text- und Code-Interaktionen angepasst. Out-of-the-box erhalten Sie Unterstützung für SQL-Datenbanken, Python-Interpreter, Suchmaschinen und das Linux-Terminal.
Schicht skyrl-agent konzentriert sich auf Aufgaben mit langem Zeithorizont. Sie hilft beim Trainieren von Agents, die Dutzende aufeinanderfolgender Schritte ausführen, externe Utilities aufrufen und ihre Aktionen basierend auf Umgebungsreaktionen anpassen.
Ergebnisse in der Praxis
Ein qualitativ hochwertiges Framework definiert sich nicht durch die Anzahl der Abstraktionen, sondern durch reale Metriken. Das Projektteam demonstrierte die Fähigkeiten der Bibliothek anhand der Text-to-SQL-Aufgabe.
Die Autoren nahmen ein Standardmodell mit 7 Milliarden Parametern und führten RL-Training durch die SkyRL-SQL-Pipeline durch. Der Datensatz enthielt nur 653 Trainingsbeispiele. Das Modell hat nicht nur korrekte SQL-Abfragen auswendig gelernt – es hat gelernt, diese in einer echten DBMS auszuführen, Ausführungsfehler zu erhalten und die Syntax im nächsten Schritt zu korrigieren. Infolgedessen übertraf dieses kleine Modell kommerzielle GPT-4o- und o4-mini-Dienste bei der Generierungsgenauigkeit auf spezialisierten Benchmarks.
Ein weiteres interessantes Beispiel ist die Integration mit der Harbor-Umgebung für das Training von Kommandozeilen-Agents. Das Modell lernt, in einem echten Terminal zu arbeiten: Dateien bearbeiten, Tests ausführen, Bugs in Repositories finden und Umgebungen ohne menschliches Zutun bereitstellen.
Technische Implementierungsdetails
Beim traditionellen RL-Training von Modellen blockieren sich Inferenz und Training oft gegenseitig. Das Modell generiert Antworten, der Prozess stoppt, Gradienten werden berechnet, Gewichte werden aktualisiert, und erst dann beginnt eine neue Iteration. SkyRL implementiert einen vollständig asynchronen Modus mit sogenannten In-Flight-Weight-Updates.
Während der Actor neue Tokens generiert und mit der Umgebung interagiert, aktualisiert der Trainingsprozess gleichzeitig Modellparameter. Neue Gewichte werden im laufenden Betrieb an den Inferenzdienst übertragen, was Ausfallzeiten für teure Beschleuniger drastisch reduziert.
Die Bibliothek versucht nicht, das Rad neu zu erfinden. Im Hintergrund verwendet sie bewährte Lösungen aus der Open-Source-Community: Ideen von veRL, OpenRLHF und Search-R1.
Wo das Projekt bereits Anwendung gefunden hat
Trotz seines jungen Alters ist das Framework bereits zur Grundlage für mehrere Drittanbieter-Forschungsprojekte geworden.
Ein Team von Stanford nutzte SkyRL, um Biomni-R0 zu erstellen. Dies ist ein Agent, der komplexe biomedizinische Aufgaben lösen und logische Ketten auf Expertenniveau aufbauen kann. Das Projekt CodeScout wandte das Framework für die präzise Bug-Lokalisierung in Code innerhalb des SWE-Bench-Benchmarks an. Projekte wie OpenThoughts-Agent und Endless Terminals werden ebenfalls auf Basis der Bibliothek entwickelt, wobei RL für die prozedurale Aufgabengenerierung in Linux-Terminals ohne manuelle Datenkennzeichnung verwendet wird.
Wo Sie mit Experimenten beginnen können
Sie benötigen einen Linux-Server mit mehreren GPUs und installiertem PyTorch. Der Installationsprozess ist Standard für Python-Projekte:
git clone https://github.com/NovaSky-AI/SkyRL.git
cd SkyRL
pip install -e .
Dann können Sie eines der fertigen Trainingsrezepte ausführen. Um beispielsweise die einfachste RL-Schleife für Mathe- oder SQL-Aufgaben zu starten, rufen Sie einfach das entsprechende Skript aus dem Examples-Ordner auf:
python -m skyrl.train --config-name=math_ppo
Wenn Sie Ihre eigene Umgebung integrieren möchten, erben Sie einfach von der Gymnasium-API-Klasse und definieren die step()- und reset()-Methoden. Das Modell erhält Beobachtungen als Text oder Systemantworten und gibt generierten Text als Aktion zurück.
Lohnt es sich für Ihre Projekte
SkyRL ist nützlich für F&E-Teams und Ingenieure, die über das Standard-SFT hinausgewachsen sind und maximale Leistung aus mittelgroßen Modellen herausholen möchten. Einem LLM beizubringen, Tools in einem bestimmten Domänenbereich durch RL zu nutzen, ist ein praktikabler Weg, um allgemeine proprietäre Modelle bei Genauigkeit und Abfragekosten zu übertreffen.
Der Hauptvorbehalt: Das Projekt befindet sich in aktiver Entwicklung. Das Repository hat etwa 400 offene Issues, und die Architektur einzelner Module entwickelt sich weiter. Wenn Sie eine fertige schlüsselfertige Lösung mit einem „funktioniert einfach"-Knopf benötigen, möchten Sie vielleicht noch warten. Aber wenn Sie bereit sind, sich in den Code zu vertiefen, und eine flexible Grundlage für Ihre eigenen RL-Agents suchen, wird SkyRL Monate der Entwicklung sparen.
Ähnliche Projekte