RL-Umgebungen für LLMs und autonome KI-Systeme
Ein dauerhaft spannendes Forschungs- und Entwicklungsfeld im Bereich Künstliche Intelligenz ist der Einsatz von LLMs in vollständig autonomen End-to-End-Systemen, die auf Multi-Agenten-Architekturen basieren. Auch wenn LLMs bereits für sich genommen sehr leistungsfähig sind, setzt die Branche zunehmend auf Reinforcement-Learning-Umgebungen, um ihren praktischen Nutzen noch stärker auszuschöpfen.
RL-Umgebungen sind kein neues Konzept, sondern existierten bereits, bevor LLMs weit verbreitet wurden. Tatsächlich lassen sich Agenten kaum sinnvoll betrachten, ohne gleichzeitig über ihre Umgebung zu sprechen. In einem typischen RL-Szenario erhält ein Agent von der Umgebung eine Belohnung oder Bestrafung für eine bestimmte Aktion, die er innerhalb dieser Umgebung ausführt. Daraufhin passt der Agent sein Verhalten an, um die kumulierte Belohnung langfristig zu maximieren. Genau diese Anpassung mit dem Ziel einer möglichst hohen Belohnung bildet den Kern des Reinforcement Learning.
Mit dem Aufstieg von LLMs ist der Agent häufig ein Modell. Die Gewichte des Modells werden anhand der Bewertung seiner Versuche bei unterschiedlichen Aufgaben aktualisiert, wodurch es sich schrittweise verbessern kann. Besonders interessant ist dabei die Computernutzung, also ein KI-System, das einen Computer bedienen und navigieren kann. Dieses Thema wurde auch bereits im Zusammenhang mit Forschungsarbeiten zur Skalierung von Computer-Use-Daten über Multi-Agenten-Pipelines für Modelle wie Fara-7B betrachtet.
Zentrale Erkenntnisse
- Die Branche nutzt Reinforcement-Learning-Umgebungen zunehmend, um aus Large Language Models einen höheren praktischen Mehrwert zu gewinnen.
- Eine RL-Umgebung vergibt für eine Aktion eines Agenten, häufig eines LLMs oder Modells, eine Belohnung oder Strafe. Dadurch wird der Agent dazu angeregt, seine Gewichte anzupassen und die kumulierte Belohnung zu maximieren.
- Im Gegensatz zu subjektiven Belohnungen bei RLHF setzt RLVR auf objektive und überprüfbare Belohnungen, wie sie beispielsweise bei Mathematik- und Programmieraufgaben vorkommen. Diese Belohnungen sind schwer auszunutzen und tragen dazu bei, dass das Modell die gewünschten Fähigkeiten zum Schlussfolgern entwickelt.
- Organisationen verwenden RL-Umgebungen, die häufig als Harnesses oder UI Gyms bezeichnet werden, um Modelle gezielt für den Einsatz in eigener Software zu trainieren, etwa für Code-Assistenten, Entwicklungsumgebungen und agentenbasierte Workflows.
Reinforcement Learning from Verifiable Rewards
Das zuletzt gestiegene Interesse an RL-Umgebungen lässt sich vermutlich mit dem Erfolg von RLVR erklären, also Reinforcement Learning from Verifiable Rewards. Bei diesem Ansatz können Aufgaben objektiv überprüft werden, etwa in der Mathematik oder beim Programmieren. Der entscheidende Grund für die Wirksamkeit von RLVR liegt darin, dass überprüfbare Belohnungen kaum manipulierbar sind. Eine nicht manipulierbare Belohnungsfunktion ist direkt mit einem erfolgreichen und messbaren Ergebnis verbunden, zum Beispiel dem Lösen einer Aufgabe oder dem Bestehen eines Testfalls. Dadurch wird es für ein LLM schwieriger, eine hohe Belohnung zu erhalten, ohne tatsächlich die erforderlichen Denk- und Problemlösungsstrategien zu entwickeln. Gleichzeitig sinkt das Risiko von Reward Hacking.
RL-Umgebungen für Produkte
Modelle können gezielt für ein bestimmtes Produkt trainiert werden, indem sie in einem Harness eingesetzt werden. Dieser Harness entspricht im Kern einer RL-Umgebung, die das jeweilige Produkt abbildet. Beispiele dafür sind KI-gestützte Coding-Workflows, Tools zur Codegenerierung und interaktive Entwicklungsagenten. In eine ähnliche Richtung geht der Trend, dass Unternehmen Umgebungen rund um ihre eigene Software aufbauen. Diese Umgebungen werden häufig als UI Gyms bezeichnet.
Eine RL-Umgebung erstellen
Es gibt viele Möglichkeiten, RL-Umgebungen aufzubauen. Zunächst sollte das Ziel definiert werden. Was soll das Modell erreichen können? Anschließend wird ein passendes Framework ausgewählt. Je nach Framework wird die Umgebung auf unterschiedliche Weise beschrieben und implementiert.
Mögliche Frameworks sind unter anderem Prime Intellects Environments Hub, SkyRL mit wiederverwendbaren Tools, PyTorch OpenEnv und OpenAI Gymnasium. Thinking Machines stellt außerdem Dokumentation und ein Cookbook für den Umgang mit RL-Umgebungen bereit.
Unabhängig vom gewählten Framework sollten die zentralen Bestandteile der RL-Umgebung in der Regel klar definiert werden.
State Space
Der State Space beschreibt die Informationen, die der Agent beobachten kann. Dazu können Pixel eines Spielbildschirms, numerische Sensordaten, Screenshots oder andere Darstellungen der Umgebung gehören.
Action Space
Der Action Space umfasst alle möglichen Aktionen, die der Agent ausführen kann. Diese Aktionen können diskret sein, beispielsweise Tastendrücke, oder kontinuierlich, etwa Motorsteuerungen.
Reward Function
Die Reward Function beeinflusst, welche Verhaltensweisen der Agent erlernt. Sparse Rewards, die nur nach Abschluss einer Aufgabe vergeben werden, können für das Lernen schwierig sein. Dense Rewards, also häufiges Feedback, können hingegen unbeabsichtigte Verhaltensweisen begünstigen.
Episode Termination Conditions
Episode Termination Conditions legen fest, wann ein Durchlauf endet. Dies kann der Fall sein, wenn ein Ziel erreicht wurde, ein Zeitlimit überschritten ist oder ein Fehlerzustand eintritt.
Sobald diese Elemente definiert sind, folgt die Implementierung der Umgebungsdynamik. Damit sind die Regeln gemeint, die bestimmen, wie sich Zustände abhängig von den Aktionen verändern.
Benötigte Voraussetzungen prüfen
Beginnen Sie mit der Einrichtung einer GPU-fähigen virtuellen Maschine oder eines Cloud-Servers. Achten Sie darauf, wie viele GPUs benötigt werden. In diesem Beispiel werden 4 H100-GPUs verwendet. Zusätzlich wird ein Weights-and-Biases-Konto benötigt.
Repository klonen und Umgebung einrichten
git clone https://github.com/NovaSky-AI/SkyRL.git
cd SkyRL
uv venv .venv
source .venv/bin/activate
uv pip install -e ".[vllm]" ##or ".[sglang]" for alternative inference backends
uv pip install -r requirements.txt
# may need to:
snap install astral-uv
Dataset für das RL-Training vorbereiten
SkyRL erwartet Daten im Parquet-Format mit einem Schema, das für Instruction- und RL-Workflows geeignet ist. Dazu gehören Prompts, Completions, Rewards und ähnliche Felder.
Es kann ein integriertes Beispiel genutzt werden, etwa GSM8K für mathematisches Schlussfolgern. Dies ist ein sinnvoller Einstieg, bevor komplexere Aufgaben im Stil von SWE-Bench angegangen werden. Alternativ kann auch ein eigener Datensatz für eine individuelle Umgebung vorbereitet werden.
In diesem Beispiel werden GSM8K-Daten im Stil von Reasoning und Tool Use mit gsm8k_dataset.py erzeugt.
cd skyrl-train
uv run examples/gsm8k/gsm8k_dataset.py --output_dir ~/data/gsm8k
Dadurch werden train.parquet und validation.parquet mit Feldern wie den folgenden erstellt:
promptcompletionoder Trajectoriesrewardfür Offline- oder Hybrid-Setups, während Online-RL die Rewards während der Ausführung berechnet
Für stärker agentenbasierte Aufgaben könnte SWE-Bench oder ein ähnlicher Benchmark mit Fokus auf überprüfbare Aufgaben verwendet werden. SkyRL integriert außerdem die OpenHands Runtime über SkyRL-OpenHands für Code-Editing-Umgebungen.
YAML-Konfiguration für einen Trainingslauf erstellen
Erstellen Sie eine YAML-Datei, um einen GRPO-Trainingslauf zu konfigurieren: examples/gsm8k/gsm8k-grpo.yaml.
data:
train_data: ["~/data/gsm8k/train.parquet"]
val_data: ["~/data/gsm8k/validation.parquet"]
trainer:
algorithm:
name: grpo
advantage_estimator: grpo
policy:
model:
path: Qwen/Qwen2.5-1.5B-Instruct # Start small; scale to 7B–32B
epochs: 2 # Increase for real training
strategy: fsdp2 # Or ddp for single node
placement:
colocate_all: true
policy_num_gpus_per_node: 4 # Adjust to your hardware
inference:
backend: vllm # Fast inference for rollouts
logger: wandb
Modell trainieren
Für einen einzelnen Node wird folgender Befehl verwendet:
uv run -m skyrl_train.entrypoints.main_base \
--config examples/gsm8k/gsm8k-grpo.yaml \
trainer.epochs=5 \
data.train_data='["~/data/gsm8k/train.parquet"]'
Für verteiltes Training über mehrere GPUs oder Nodes mit Ray und SkyPilot wird folgender Befehl genutzt:
sky launch skyrl_train/examples/gsm8k/gsm8k-grpo-skypilot.yaml \
--secret WANDB_API_KEY=your_key_here
Evaluieren und iterieren
from skyrl.agent import SkyRLAgent
agent = SkyRLAgent.from_checkpoint("path/to/checkpoint")
result = agent.run_task(
prompt="Fix this bug in repo X: ...",
runtime="openhands", # Stateful code env
max_turns=30
)
print(result.success_rate, result.trajectory)
FAQ
Was sind RL-Umgebungen?
Im Reinforcement Learning erhält ein Agent, häufig ein LLM oder Modell, von einer Umgebung eine Belohnung oder Strafe für eine ausgeführte Aktion. Anschließend passt der Agent sein Verhalten an, um die kumulierte Belohnung zu maximieren.
Warum nutzt die Branche RL-Umgebungen für LLMs?
Die Branche setzt RL-Umgebungen ein, um LLMs in autonome End-to-End-Systeme auf Basis von Multi-Agenten-Architekturen zu integrieren. Dies gilt zunehmend als praktischer Weg, um aus diesen Modellen echten Nutzen zu ziehen.
Was ist Reinforcement Learning from Verifiable Rewards?
RLVR ist ein Verfahren, das objektive und überprüfbare Belohnungen nutzt, etwa bei Mathematik- und Programmieraufgaben. Diese schwer manipulierbaren Belohnungen helfen sicherzustellen, dass das Modell die gewünschten Denk- und Problemlösungsstrategien entwickelt, anders als bei stärker subjektiven Belohnungen in RLHF.
Wie werden RL-Umgebungen für kommerzielle Produkte genutzt?
Unternehmen bauen Umgebungen rund um ihre eigene Software auf, die oft als Harnesses oder UI Gyms bezeichnet werden. Damit trainieren sie Modelle gezielt für den Einsatz in ihren Produkten. Beispiele sind Coding-Assistenten, Entwicklungstools und agentenbasierte Software-Workflows.
Wie können RL-Umgebungen für synthetische Datengenerierung genutzt werden?
Umgebungen enthalten von Natur aus Ground Truth, etwa bestandene Unit Tests, korrekte Tabellenkalkulationsergebnisse oder präzise Terminalausgaben. Dadurch eignen sie sich zur Erstellung hochwertiger synthetischer Daten.
Fazit
RL-Umgebungen tragen voraussichtlich dazu bei, KI-Modelle stärker in konkrete Anwendungsfälle zu integrieren. Sie ermöglichen es, Modelle gezielt für bestimmte Anwendungen zu trainieren. Moderne Cloud-Infrastrukturen können diese KI-Vorhaben unterstützen, indem sie die benötigten Ressourcen für Modelltraining, Inferenz und den Aufbau von Agenten bereitstellen.


