> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/de/loslegen/reinforcement-learning-rl-guide/advanced-rl-documentation/gspo-reinforcement-learning.md).

# GSPO Reinforcement Learning

Wir führen GSPO ein, eine Variante von [GRPO](/docs/de/loslegen/reinforcement-learning-rl-guide.md#from-rlhf-ppo-to-grpo-and-rlvr) entwickelt vom Qwen-Team bei Alibaba. Sie bemerkten die Beobachtung, dass GRPO für jedes Token Wichtigkeitsgewichte verwendet, obwohl Vorteile von Natur aus nicht mit jedem Token skaliert oder sich verändern. Dies führte zur Entwicklung von GSPO, das nun die Wichtigkeit auf die Sequenz-Wahrscheinlichkeit statt auf die individuellen Token-Wahrscheinlichkeiten der Tokens setzt.

* Verwenden Sie unsere kostenlosen GSPO-Notebooks für: [**gpt-oss-20b**](https://colab.research.google.com/github/unslothai/notebooks/blob/main/nb/gpt-oss-\(20B\)-GRPO.ipynb) und [**Qwen2.5-VL**](https://colab.research.google.com/github/unslothai/notebooks/blob/main/nb/Qwen2_5_7B_VL_GRPO.ipynb)

Aktivieren Sie GSPO in Unsloth, indem Sie `importance_sampling_level = "sequence"` im GRPO-Konfigurationsobjekt setzen. Der Unterschied zwischen diesen beiden Algorithmen ist unten zu sehen, sowohl aus dem GSPO-Papier von Qwen und Alibaba:

<figure><img src="/files/f5b2b3a8830072f7d4862d5bcacbd30c69f946d7" alt="" width="563"><figcaption><p>GRPO-Algorithmus, Quelle: <a href="https://arxiv.org/abs/2507.18071">Qwen</a></p></figcaption></figure>

<figure><img src="/files/b8c325e19e7b99b5b819f3f52259980307c9a447" alt="" width="563"><figcaption><p>GSPO-Algorithmus, Quelle: <a href="https://arxiv.org/abs/2507.18071">Qwen</a></p></figcaption></figure>

In Gleichung 1 ist zu sehen, dass die Vorteile jede der Zeilen in die Token-Log-Wahrscheinlichkeiten skalieren, bevor dieser Tensor aufsummiert wird. Im Wesentlichen erhält jedes Token dieselbe Skalierung, obwohl diese Skalierung der gesamten Sequenz und nicht jedem einzelnen Token zugewiesen wurde. Ein einfaches Diagramm dazu ist unten zu sehen:

<figure><img src="/files/62efe59205083198a26378c9da5c3aff43e96881" alt="" width="286"><figcaption><p>GRPO-Logprob-Verhältnis, zeilenweise mit Vorteilen skaliert</p></figcaption></figure>

Gleichung 2 zeigt, dass die Logprob-Verhältnisse für jede Sequenz nach der Berechnung der Logprob-Verhältnisse aufsummiert und exponentiert werden, und nur die daraus resultierenden nunmehr Sequenz-Verhältnisse werden zeilenweise mit den Vorteilen multipliziert.

<figure><img src="/files/5f76cd80188dc410915c220be3da1d4e5755cfe3" alt="" width="313"><figcaption><p>GSPO-Sequenzverhältnis, zeilenweise mit Vorteilen skaliert</p></figcaption></figure>

GSPO zu aktivieren ist einfach, alles, was Sie tun müssen, ist die `importance_sampling_level = "sequence"` Option in der GRPO-Konfiguration zu setzen.

```python
training_args = GRPOConfig(
    output_dir = "vlm-grpo-unsloth",
    per_device_train_batch_size = 8,
    gradient_accumulation_steps = 4,
    learning_rate = 5e-6,
    adam_beta1 = 0.9,
    adam_beta2 = 0.99,
    weight_decay = 0.1,
    warmup_ratio = 0.1,
    lr_scheduler_type = "cosine",
    optim = "adamw_8bit",
    # beta = 0.00,
    epsilon = 3e-4,
    epsilon_high = 4e-4,
    num_generations = 8,    
    max_prompt_length = 1024,
    max_completion_length = 1024,
    log_completions = False,
    max_grad_norm = 0.1,
    temperature = 0.9,
    # report_to = "none", # Setzen Sie auf "wandb", wenn Sie nach Weights & Biases protokollieren möchten
    num_train_epochs = 2, # Für einen schnellen Testlauf, für das vollständige Training erhöhen
    
    # GSPO ist unten:
    importance_sampling_level = "sequence",
    
    # Dr GRPO / GAPO usw.
    loss_type = "dr_grpo",
)
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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/advanced-rl-documentation/gspo-reinforcement-learning.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.
