# KI-Agenten mit RL trainieren

„Agentische“ KI wird im Laufe der Zeit immer beliebter. In diesem Kontext ist ein „Agent“ ein LLM, dem ein übergeordnetes Ziel und eine Menge Werkzeuge gegeben werden, um dieses zu erreichen. Agenten sind typischerweise auch „mehrstufig“ — sie können eine Aktion ausführen, sehen, welche Auswirkung sie auf die Umgebung hatte, und dann wiederholt eine weitere Aktion ausführen, bis sie ihr Ziel erreicht haben oder beim Versuch scheitern.

Leider fällt es selbst sehr fähigen LLMs oft schwer, komplexe mehrstufige agentische Aufgaben zuverlässig auszuführen. Interessanterweise haben wir festgestellt, dass das Training von Agenten mit einem RL-Algorithmus namens [GRPO (Group Relative Policy Optimization)](/docs/de/loslegen/reinforcement-learning-rl-guide/tutorial-train-your-own-reasoning-model-with-grpo.md) sie deutlich zuverlässiger machen kann! In diesem Leitfaden lernen Sie, wie man zuverlässige KI-Agenten mit Open-Source-Tools baut.

## 🎨 RL-Agenten mit ART trainieren

[ART (Agent Reinforcement Trainer)](https://github.com/openpipe/art) aufgebaut auf [Unsloth](https://github.com/unslothai/unsloth)s GRPOTrainer ist ein Werkzeug, das das Training mehrstufiger Agenten möglich und einfach macht. Wenn Sie bereits Unsloth für GRPO verwenden und Agenten trainieren müssen, die komplexe, mehrstufige Interaktionen bewältigen können, vereinfacht ART den Prozess.

<div align="left"><figure><img src="/files/3ebbab73c7d803527534f099511519f873a16a6d" alt="" width="375"><figcaption><p>Mit Unsloth+ART trainierte Agentenmodelle können in agentischen Workflows häufig bessere Leistungen erzielen als durch Prompting gesteuerte Modelle.</p></figcaption></figure></div>

### ART + Unsloth

ART baut auf Unsloths speicher- und rechen-effizienter GRPO-Implementierung auf. Zusätzlich fügt es die folgenden Funktionen hinzu:

#### 1. Training mehrstufiger Agenten

ART führt das Konzept einer „Trajektorie“ ein, die aufgebaut wird, während Ihr Agent ausgeführt wird. Diese Trajektorien können dann bewertet und für GRPO verwendet werden. Trajektorien können komplex sein und sogar nicht-lineare Verläufe, Unteragent-Aufrufe usw. enthalten. Sie unterstützen außerdem Tool-Aufrufe und -Antworten.

#### 2. Flexible Integration in vorhandene Codebasen

Wenn Sie bereits einen Agenten mit einem promptgesteuerten Modell haben, versucht ART, die Anzahl der Änderungen, die Sie vornehmen müssen, um Ihre bestehende Agentenschleife zu umschließen und für das Training zu verwenden, zu minimieren.

Architektonisch ist ART in einen „Frontend“-Client aufgeteilt, der in Ihrer Codebasis lebt und per API mit einem „Backend“ kommuniziert, in dem das eigentliche Training stattfindet (diese können bei Bedarf auch auf derselben Maschine zusammen betrieben werden, wenn Sie lieber ARTs `LocalBackend`) verwenden. Das bietet einige wesentliche Vorteile:

* **Minimale Einrichtung erforderlich**: Das ART-Frontend hat minimale Abhängigkeiten und kann leicht zu bestehenden Python-Codebasen hinzugefügt werden.
* **Training von überall**: Sie können den ART-Client auf Ihrem Laptop ausführen und den ART-Server eine flüchtige GPU-fähige Umgebung starten lassen oder lokal auf einer GPU ausführen
* **OpenAI-kompatible API**: Das ART-Backend stellt Ihr während des Trainings befindliches Modell über eine OpenAI-kompatible API bereit, die mit den meisten bestehenden Codebasen kompatibel ist.

#### 3. RULER: Zero-Shot-Agenten-Belohnungen

ART bietet außerdem eine eingebaute, allgemeine Belohnungsfunktion namens [RULER](https://art.openpipe.ai/fundamentals/ruler) (Relative Universal LLM-Elicited Rewards), die die Notwendigkeit handgefertigter Belohnungsfunktionen eliminieren kann. Überraschenderweise erreichen Agenten, die mit der automatischen RULER-Belohnungsfunktion per RL trainiert wurden, oft die gleiche oder eine bessere Leistung als Agenten, die mit handgeschriebenen Belohnungsfunktionen trainiert wurden. Das erleichtert den Einstieg in RL.

<figure><img src="/files/1cc31f0a684d7343a21e39be02678edcb3886b1f" alt="" width="375"><figcaption></figcaption></figure>

```python
# Vorher: Stunden der Belohnungs-Entwicklung
def complex_reward_function(trajectory):
    # 50+ Zeilen sorgfältiger Bewertungslogik...
    return { "text" : texts, }

# Nachher: Eine Zeile mit RULER
judged_group = await ruler_score_group(group, "openai/o3")
```

### Wann man ART wählen sollte

ART könnte gut geeignet sein für Projekte, die benötigen:

1. **Mehrstufige Agentenfähigkeiten**: Wenn Ihr Anwendungsfall Agenten erfordert, die mehrere Aktionen ausführen, Werkzeuge nutzen oder längere Gespräche führen müssen
2. **Schnelles Prototyping ohne Belohnungs-Engineering**: RULERs automatische Belohnungsbewertung kann die Entwicklungszeit Ihres Projekts um das 2–3‑Fache verkürzen
3. **Integration in bestehende Systeme**: Wenn Sie RL-Fähigkeiten in eine bestehende agentische Codebasis mit minimalen Änderungen hinzufügen müssen

### Codebeispiel: ART in Aktion

```python
import art
from art.rewards import ruler_score_group

# Modell mit von Unsloth unterstütztem Basismodell initialisieren
model = art.TrainableModel(
    name="agent-001",
    project="my-agentic-task",
    base_model="Qwen/Qwen2.5-14B-Instruct",  # Jedes von Unsloth unterstützte Modell
)

# Definieren Sie Ihre Rollout-Funktion
async def rollout(model: art.Model, scenario: Scenario) -> art.Trajectory:
    openai_client = model.openai_client()
    trajectory = art.Trajectory(
        messages_and_choices=[
            {"role": "system", "content": "..."},
            {"role": "user", "content": "..."}
        ]
    )
    # Ihre Agentenlogik hier...    
    return trajectory

# Mit RULER für automatische Belohnungen trainieren
groups = await art.gather_trajectory_groups(
    (
        art.TrajectoryGroup(rollout(model, scenario) for _ in range(8))
        for scenario in scenarios
    ),
    after_each=lambda group: ruler_score_group(
        group,
        "openai/o3",
        swallow_exceptions=True
    )
)

await model.train(groups)
```

### Erste Schritte

Um ART zu Ihrem Unsloth-basierten Projekt hinzuzufügen:

```bash
pip install openpipe-art # oder `uv add openpipe-art`
```

Sehen Sie sich dann die [Beispiel-Notebooks](https://art.openpipe.ai/getting-started/notebooks) an, um ART in Aktion bei Aufgaben wie:

* E-Mail-Abruf-Agenten, die o3 übertreffen
* Spielspielende Agenten (2048, Tic-Tac-Toe, Codenames)
* Komplexe Denkaufgaben (Temporal Clue)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://unsloth.ai/docs/de/loslegen/reinforcement-learning-rl-guide/training-ai-agents-with-rl.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
