Modell / Datensatz
AgentR1/Agent-R1 avatar
AgentR1/Agent-R1

Agent-R1: Step-Level-MDP statt wachsender Prompt-Kette für agentisches RL

Agent-R1: Training Powerful LLM Agents with End-to-End Reinforcement Learning

1.667 Sterne117 ForksPythonMIT
GitHub

Auf einen Blick

Was ist das?
Agent-R1 ist ein Python-Framework unter MIT-Lizenz, das mehrstufige LLM-Agenten über einen Step-nativen RL-Loop trainiert. Der Kern ist eine Step-level-MDP-Repräsentation, die jede Runde als eigenen Übergang speichert statt die Interaktion als eine wachsende Prompt-Response-Sequenz zu behandeln.
Für wen ist es gedacht?
Wer mehrstufige Tool-Agenten mit GRPO oder REINFORCE trainieren will und dabei Kontextkontrolle pro Runde braucht, findet in Agent-R1 ein passendes Gerüst. Wer nur Single-Turn-Preference-Tuning betreibt oder keine GPU-Umgebung für verteiltes Training stellen kann, sollte es nicht adoptieren.
Darf ich es kommerziell nutzen?
Ja. MIT ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Die letzten Commits kamen vor 1 Tag.
In welcher Sprache ist es geschrieben?
Hauptsächlich Python, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Welches Problem der Step-level-MDP löst

In mehrstufigen Agenten ist die Modellausgabe keine reine Fortsetzung eines Tokenstroms. Jede Ausgabe kann ein Tool aufrufen, den Umgebungszustand verändern, externes Feedback empfangen und die nächste Beobachtung formen. Übliche Single-Turn-Pipelines behandeln diese Interaktion als eine einzige, immer weiter wachsende Prompt-Response-Sequenz. Agent-R1 setzt stattdessen die Agentenrunde als grundlegende Interaktionseinheit. Ein Step hält fest, was das Modell gesehen hat, welche Aktion es erzeugt hat, welches Feedback und welchen Reward die Umgebung zurückgab und welche Beobachtung als Nächstes gezeigt werden soll.

Der Adressat sind Teams, die Tool-Nutzung, Umgebungszustand, Kontextverwaltung, Reward-Zuweisung und Policy-Optimierung als Teile desselben Trainingssubstrats behandeln wollen. Die README nennt als Zielgruppe ausdrücklich mehrstufige Agenten, nicht Chat-Modelle mit einer Antwort pro Prompt. Wer nur Präferenzdaten auf einzelne Antworten anwendet, braucht diese Struktur nicht.

Wie Rollout, Reward und Replay zusammengehalten werden

Die README beschreibt den Kern als Rollout-Reward-Replay-Update-Loop, der bestehende Serving-Systeme wie vLLM und SGLang mit verteilten Trainingssystemen wie DeepSpeed, FSDP oder Megatron-LM verbindet. Agent-R1 ersetzt diese Systeme nicht, sondern klebt sie zusammen.

Die Step-level-Trajektorie speichert pro Übergang observation, action, environment feedback, reward, termination state und next observation. Die README betont, dass Aktionsgrenzen erhalten bleiben und eine fragile Token-zu-Text-zu-Token-Rekonstruktion vermieden wird. Das ist der eigentliche Unterschied zu Pipelines, die eine gesamte Episode als flachen Tokenstrom behandeln und die Aktionsgrenzen erst nachträglich wieder hineininterpretieren müssen.

Für die Kontextverwaltung gilt: die Umgebung entscheidet, was das Modell als Nächstes sieht. Verlauf kann angehängt, gekürzt, zusammengefasst, umgeschrieben oder erweitert werden. Das ist eine bewusste Verlagerung von Verantwortung weg vom Trainer. Wer Summarization oder Truncation selbst steuern will, muss das in der Umgebung tun, nicht in einer globalen Trainingskonfiguration.

Die Architektur ist in fünf Ebenen geteilt. AgentFlowBase erlaubt volle Kontrolle über Prompt-Aufbau, Modellaufrufe, Verzweigungen, Kontextverwaltung und Step-Zusammenbau. AgentEnvLoop ist die generische Schleife, die Modellgenerierung mit reset() und step() einer Umgebung verbindet. AgentEnv ist das Aufgaben-Interface mit Observation, Reward, Termination und Metadaten. ToolEnv ist die eingebaute Umgebung für standardmäßiges mehrstufiges Tool-Calling. BaseTool ist das Interface zum Registrieren ausführbarer Tools wie Rechner, Suche, APIs oder aufgabenspezifische Prüfer.

Der Hauptloop lädt laut README zuerst ein Sample mit prompt, agent_name, reward_model und optional env_kwargs, erzeugt dann den konfigurierten AgentFlow und die Umgebung. Der weitere Ablauf ist im vorliegenden Material abgeschnitten, lässt sich also nicht vollständig nachvollziehen.

Fünf Abstraktionsebenen und wann welche greift

Die README gibt zu jeder Ebene eine explizite Nutzungsempfehlung. Das ist ungewöhnlich konkret und hilft bei der Einordnung mehr als die meisten Framework-Übersichten.

AgentFlowBase ist für komplexe eigene Agenten gedacht, die nicht in eine Standard-Umgebungsschleife passen. AgentEnvLoop für Aufgaben, die sich als Umgebungsinteraktion modellieren lassen, einschließlich klassischer RL-Umgebungen. AgentEnv implementiert die volle Umgebungslogik für AgentEnvLoop. ToolEnv ist die Wahl, wenn nur Tools definiert werden müssen und der Rest Standard bleiben soll. BaseTool ist der Einstiegspunkt für jedes ausführbare Werkzeug.

Die Empfehlung ist als Eskalationsleiter lesbar: wer mit ToolEnv und BaseTool auskommt, sollte dort bleiben. Der Wechsel zu AgentFlowBase bedeutet, Prompt-Aufbau und Step-Assembly selbst zu übernehmen. Das ist mehr Kontrolle, aber auch mehr Code, der bei Framework-Änderungen nachgezogen werden muss. Die README macht nicht deutlich, wie stabil die Schnittstellen zwischen diesen Ebenen sind. Genau das ist das Risiko bei einem Projekt, dessen Architektur erst im März 2026 refaktoriert wurde und dessen Vorgängerimplementierung auf dem legacy-Branch archiviert ist.

Installation und Rezepte aus dem Repository

Das Repository liefert kein Installationskommando in der README. Es gibt keine Releases, die als Paket auf PyPI veröffentlicht wurden, und der Abschnitt mit den Setup-Schritten ist im vorliegenden Material nicht enthalten. Wer das Framework nutzen will, muss daher über den Quellbaum gehen: Repository klonen, dann die Abhängigkeiten aus dem Projekt selbst installieren. Die README verweist auf eine Dokumentationsseite unter agentr1.github.io/agent-r1/docs, auf ein DeepWiki-Profil und auf den technischen Report unter arXiv 2511.14460. Das sind die Stellen, an denen Setup-Details zu erwarten sind, nicht das README.

Konkrete Trainingsrezepte sind benannt: HotpotQA, ALFWorld, WebShop und eine akademische Paper-Suche. Die verarbeiteten Datensätze liegen laut README auf ModelScope unter dem Pfad Melmaphother/Agent-R1-data. Ein zusätzlicher Branch namens opd trägt die Unterstützung für Online Policy Distillation. StepPO ist integriert, die zugehörige Arbeit ist unter arXiv 2604.18401 referenziert.

Für die Tool-Anbindung ist BaseTool der relevante Erweiterungspunkt. Die README nennt als Beispiele Rechner, Suchwerkzeuge, APIs und aufgabenspezifische Prüfer. Konkrete Konfigurationsschlüssel für die Trainingsschleife sind im vorliegenden Material nicht dokumentiert. Wer die Umgebung anpassen will, muss env_kwargs im Sample setzen, sofern das eigene AgentEnv sie auswertet.

Ein Detail aus der Versionshistorie ist praktisch relevant: verl wurde am 18. März 2025 als Git-Submodul eingebunden, die Agent-R1-Erweiterungen wurden vom Upstream-Code getrennt. Beim Klonen muss das Submodul also mit initialisiert werden. Ein reines git clone ohne rekursive Submodule reicht nicht.

NaN-Abstürze, Archivierung und andere Bruchstellen

Die README dokumentiert offen, dass GRPO- und REINFORCE-Trainingsläufe durch NaN-Werte abstürzten und am 6. Mai 2025 behoben wurden, mit Verweis auf Issue #30. Dass solche Fehlerbilder im Änderungsprotokoll auftauchen, ist bei RL-Trainingsframeworks nicht ungewöhnlich, aber es sagt etwas über die Reife zum damaligen Zeitpunkt.

Gravierender für die Bewertung ist der Architekturbruch. Am 23. März 2026 erschien v0.1.0 als erste offizielle Veröffentlichung der refaktorierten Architektur mit Step-level-MDP und den neuen Abstraktionsebenen. Die vorherige Implementierung liegt auf dem legacy-Branch. Wer ältere Anleitungen, Forks oder Beispiele findet, arbeitet möglicherweise gegen eine Architektur, die nicht mehr die Hauptlinie ist. Die README selbst warnt nicht davor, aber der Hinweis auf den archivierten Branch ist deutlich genug.

Ein weiterer Punkt: es gibt keine abgerufenen Releases. Das bedeutet nicht, dass keine existieren, aber die Versionsverwaltung läuft offenbar über Branches und Commit-Historie. Für Teams, die reproduzierbare Trainingsläufe brauchen, ist das ein Faktor. Ohne getaggte Releases muss der Commit-Hash festgeschrieben werden, sonst verschiebt sich die Basis zwischen zwei Läufen.

Falsches Werkzeug ist Agent-R1, wenn kein Zugang zu verteiltem Training besteht. Die README nennt DeepSpeed, FSDP und Megatron-LM als die Systeme, mit denen die Trainingsseite verbunden wird. Wer auf einer einzelnen Workstation ohne diese Infrastruktur arbeitet, wird den Rollout-Reward-Replay-Update-Loop nicht sinnvoll betreiben können.

Abgrenzung zu TRL und zum klassischen RLHF-Stack

Der naheliegende Vergleich ist TRL mit seinen PPO- und GRPO-Trainern. TRL behandelt eine Episode als eine Sequenz aus Prompt und Antwort und berechnet Rewards am Ende. Mehrstufige Tool-Nutzung lässt sich dort nur abbilden, indem die gesamte Interaktion in einen Prompt gefaltet und die Aktionsgrenzen nachträglich rekonstruiert werden. Genau diese Token-zu-Text-zu-Token-Rekonstruktion nennt die README als Grund für die eigene Step-Repräsentation.

Agent-R1 verschiebt die Kontextkontrolle in die Umgebung. Bei TRL liegt sie beim Trainer oder beim Datensatz. Das ist der architektonische Unterschied, nicht ein Merkmalumfang. Wer Summarization, Truncation oder Umschreiben des Verlaufs pro Runde steuern will, muss bei TRL außerhalb des Trainers arbeiten. Agent-R1 verlangt dafür eine eigene AgentEnv-Implementierung.

Der Preis dieser Aufteilung: Agent-R1 bringt mehr bewegliche Teile mit. Fünf Abstraktionsebenen, ein Submodul für verl, ein Umgebungs-Interface und ein separates Tool-Interface. TRL ist flacher und in der Breite bekannter. Für Single-Turn-Aufgaben ist TRL die einfachere Wahl. Für Umgebungen mit reset() und step(), in denen der Zustand zwischen Runden überlebt, ist die Step-Repräsentation die passendere Struktur.

Wartung, Lizenz und was der Branch-Zoo kostet

Agent-R1 steht unter MIT-Lizenz. Das erlaubt kommerzielle Nutzung, Änderung und Weitergabe, solange Copyright-Hinweis und Lizenztext beibehalten werden. Es enthält keine Copyleft-Klausel, die eigene Änderungen offenlegen würde. Rechtliche Beratung ist das nicht, und die Lizenzangabe im Repository-Header ist die einzige Quelle, die hierzu vorliegt.

Wichtiger als die Lizenz ist die Wartungslast. Das Projekt pflegt mindestens drei aktive Linien: main für die refaktorierte Architektur, opd für Online Policy Distillation und legacy für die alte Implementierung. Dazu kommt Claw-R1 als separates Repository für allgemeine Agenten über einen Middleware-Ansatz. Wer auf dem opd-Branch arbeitet, muss damit rechnen, dass Änderungen auf main nicht automatisch dort ankommen. Wer auf legacy aufsetzt, arbeitet auf einem archivierten Stand.

Das verl-Submodul ist ein eigener Wartungspunkt. Agent-R1 hat die eigenen Erweiterungen vom Upstream getrennt, wie die README für den 18. März 2025 festhält. Bei jedem Submodul-Update muss geprüft werden, ob die Trennung noch hält. Das ist Arbeit, die bei einem Framework ohne Submodul nicht anfällt.

Die Upgrade-Kosten hängen davon ab, welche Abstraktionsebene man nutzt. Wer nur BaseTool und ToolEnv verwendet, ist von Schnittstellenänderungen an AgentFlowBase kaum betroffen. Wer AgentFlowBase direkt anspricht, hängt an der volatilsten Schicht. Die README gibt keine Kompatibilitätszusagen zwischen Versionen, und ohne getaggte Releases lässt sich ein Upgrade nicht an einer Versionsnummer festmachen.

Redaktionelles Fazit

Wer mehrstufige Tool-Agenten mit GRPO oder REINFORCE trainieren will und dabei Kontextkontrolle pro Runde braucht, findet in Agent-R1 ein passendes Gerüst. Wer nur Single-Turn-Preference-Tuning betreibt oder keine GPU-Umgebung für verteiltes Training stellen kann, sollte es nicht adoptieren. Vor dem Einstieg zu prüfen: ob die bereitgestellten Rezepte für HotpotQA, ALFWorld, WebShop oder die Paper-Suche zur eigenen Aufgabe passen, welche der fünf Abstraktionsebenen den eigenen Fall abdeckt, und ob der eigene Tool-Stack über BaseTool abbildbar ist. Ob der Step-level-MDP-Ansatz den Trainingsaufwand gegenüber einer Token-Flattening-Pipeline senkt, lässt sich aus dem Repository allein nicht ableiten.

Offizielle Quellen

  1. AgentR1/Agent-R1 on GitHub
  2. Issues
  3. License: MIT
  4. README
Community-Notizen

Community-Notizen