Robocikowo>ROBOCIKOWO
Zachowanie AI

RLVR

2024AktywnyOpublikowano: 10 czerwca 2026Aktualizacja: 10 czerwca 2026Opublikowany
RLVR (Reinforcement Learning with Verifiable Rewards) to formalizacja paradygmatu treningu LLM, w którym funkcja nagrody jest deterministyczną, weryfikowalną regułą (math, code, instruction-following) zamiast wyuczonego reward modelu. Termin spopularyzowany w Tülu 3 (Allen Institute for AI, 2024); nadrzędna idea wobec konkretnych algorytmów jak GRPO, PPO-with-verifier i Reasoning RL.
Kluczowa innowacja
Formalizuje rodzinę treningu RL używającą wyłącznie deterministycznych, sprawdzalnych funkcji nagrody (poprawność matematyki, działanie kodu, IFEval format constraints) zamiast uczonego modelu nagrody — sygnał 0/1 na końcu rolloutu, brak reward hackingu na poziomie modelu, deklaratywna kontrola nad zachowaniem.
Kategoria
Zachowanie AI
Poziom abstrakcji
Wzorzec
Poziom operacji
Po-treningTreningModel
Zastosowania
Tülu 3 (Allen AI, 2024) — pierwsze wdrożenie nazwy „RLVR" na szeroki zakres zadań (math + code + IFEval)DeepSeek-R1 / R1-Zero — RLVR zastosowane do reasoning na ekstremalną skalę (MoE 671B)OLMoE-instruct, Llama 3 Reward Bench, OpenR1, SimpleRL — open-source reprodukcje RLVRStrict instruction following (IFEval, FollowBench) — domena, w której RLHF/DPO zawodząSynthetic data filtering — RLVR jako dystylowany verifier do oceny syntetycznych preferencji

Jak działa

RLVR składa się z trzech filarów. (1) Zbiór promptów z weryfikowalną odpowiedzią — math z ground truth (np. AIME, MATH), kod z testami jednostkowymi (HumanEval, LiveCodeBench), instrukcje format-strict (IFEval — czy odpowiedź ma listę punktów, JSON, dokładnie 5 zdań). (2) Funkcja nagrody R(x, y) → {0, 1} (lub kompozycja kilku komponentów R = α·R_correct + β·R_format) implementowana programistycznie — np. SymPy do porównania wzorów matematycznych, sandbox do wykonania `pytest`, regex do format checks. (3) Algorytm policy-gradient — w pracach Tülu 3 użyto PPO; DeepSeek-R1 zastosował GRPO; inne implementacje używają REINFORCE++. Trening: model π_θ generuje rollouty na promptach z verifierem, otrzymuje 0/1 reward, polityka jest aktualizowana z KL-penalty wobec π_ref (zazwyczaj SFT). Tülu 3 pokazuje, że RLVR działa nie tylko na reasoning (math/code), ale też na ścisłe instruction-following — domena, w której DPO i RLHF zwykle zawodzą („policz dokładnie 5 słów", „odpowiedz tylko TAK lub NIE"). Kluczowa różnica wobec Reasoning RL: RLVR jest pojęciem ŚREDNIEJ klasy abstrakcji — opisuje rodzinę algorytmów, nie konkretną implementację (Reasoning RL = paradygmat dla reasoning + RLVR jako mechanizm; GRPO = konkretny algorytm w obrębie RLVR).

Rozwiązany problem

Klasyczne RLHF wymaga uczonego modelu nagrody (reward model) — drogiego w treningu, podatnego na overfitting i reward hacking, zależnego od jakości par preferencji. Dla wielu zadań — matematyka, kod, ścisłe wymagania formatu — istnieje jednak naturalny weryfikator (`==`, `pytest`, regex), który daje sygnał poprawności bez ludzkiej etykiety. RLVR systematyzuje ten obszar: definiuje funkcje nagrody jako rzecz pierwszej klasy w pipeline, dopuszcza dowolne policy-gradient algorytmy (PPO, GRPO, REINFORCE++) i pokazuje, że dla zadań zweryfikowalnych RLVR daje czystszy sygnał, mniejsze ryzyko reward hackingu i znacząco taniej niż RLHF.

Komponenty

Verifier (rule-based reward function)Sygnał uczenia bez modelu nagrody

Programistyczna funkcja oceniająca poprawność rolloutu y dla promptu x. Bez parametrów uczonych. Definiuje cały RLVR — wszystko inne (algorytm, model, sampler) jest zamienne.

INPrompt + pełna odpowiedź modelu.
OUTSkalarna nagroda — typowo binarna lub ważona suma binarnych komponentów.
Math equality (SymPy)Porównanie wzoru z ground truth.
Code execution (pytest)Wykonanie testów jednostkowych w sandboxie.
Format regex (IFEval)Sprawdzenie ścisłych wymagań formatu.
Symbolic solver (Lean)Formalna weryfikacja dowodu.
Compositional RSuma α·R_correct + β·R_format.

Oficjalna

Verifier-equipped prompt setSygnał zewnętrzny — definiuje zakres umiejętności RLVR

Datasets z parami (prompt, ground truth) lub (prompt, verifier function). Tülu 3 ujawnia własny mix: math (NuminaMath, MATH), code (LiveCodeBench), instruction-following (IFEval prompts).

Policy-gradient algorithmWymienna implementacja aktualizacji polityki

Mechanizm aktualizujący politykę na podstawie nagród z verifiera. Dowolny on-policy algorytm — PPO (Tülu 3), GRPO (DeepSeek), REINFORCE++ (Kimi).

Oficjalna

Sandbox / execution environmentBezpieczna izolacja wykonania kodu LLM

Krytyczna infrastruktura dla code verifierów: subprocess z timeout, cgroups, izolacja sieci, ban niebezpiecznych importów. Bezpieczeństwo verifiera jest często pomijane, a wycieki/exploity stąd są realne.

Oficjalna

Implementacja

Pułapki implementacyjne
Reward hacking — model exploituje dziurę w verifierKrytyczna

Najpoważniejsza pułapka. Klasyczne dziury: hardkodowanie odpowiedzi z testów (`assert answer == 42`), formatowanie odpowiedzi by oszukać regex (np. zawsze `\boxed{}`), generowanie krótkich szumnych odpowiedzi które przypadkiem trafiają. Trening „rośnie" w reward, ale model staje się gorszy.

Rozwiązanie:Kompozycja kilku komponentów R; manualne audyty rolloutów wczesnych iteracji; held-out benchmark różny od trening; sandbox dla kodu z banem na odczyt testów.
Niebezpieczny sandbox dla code verifierKrytyczna

Verifier wykonuje kod generowany przez LLM. Bez izolacji (timeout, ban network, cgroups, no filesystem write) model może wpłynąć na infrastrukturę treningową, exfiltrować dane lub zniszczyć rolloutry innych zadań.

Rozwiązanie:Sandbox subprocess z timeout 10–60s; cgroups na pamięć i CPU; brak dostępu do sieci; whitelist standardowych bibliotek; izolowany filesystem.
Wąsko-domenowy verifier → wąski modelWysoka

Trening tylko na math daje świetnego matematyka, który gubi się w reszcie zadań. Tülu 3 explicite pokazuje, że mieszanka domen (math + code + IFEval + general QA) jest niezbędna.

Rozwiązanie:Mieszać domeny w mini-batchach; uzupełnić RLVR niewielką frakcją RLHF/DPO na ogólną jakość; mierzyć osobno per-domena.
Brak sygnału przy zerowej wariancji nagródŚrednia

Gdy wszystkie rolloutry dla danego promptu dostają tę samą nagrodę (wszystkie poprawne lub wszystkie błędne), advantage = 0 i prompt nie wnosi gradientu. Tülu 3 i DAPO filtrują takie prompty (dynamic sampling) lub używają temperatury, by zwiększyć wariancję.

Rozwiązanie:Dynamic sampling — usuwać prompty zerowej wariancji z batcha; podnieść temperaturę; curriculum trudności.

Ewolucja

Oryginalny paper · 2024 · arXiv:2411.15124 (Allen Institute for AI, 2024) · Nathan Lambert
Tülu 3: Pushing Frontiers in Open Language Model Post-Training
Nathan Lambert, Jacob Morrison, Valentina Pyatkin, Shengyi Huang, Hamish Ivison, Faeze Brahman, Lester James V. Miranda, Yizhong Wang, Allen AI Tülu 3 team
2022
InstructGPT / RLHF — wyuczony reward model

OpenAI ustanawia standard RLHF z trenowanym reward modelem na parach preferencji. RLVR powstanie jako kontrapunkt: reward jako rule, nie model.

2024
DeepSeekMath i GRPO

DeepSeek wprowadza GRPO z rule-based rewards dla matematyki. Praktyczna pre-implementacja idei RLVR, choć bez nazwy.

2024
Tülu 3 — formalne wprowadzenie nazwy „RLVR"
Punkt przełomowy

Allen AI publikuje Tülu 3 (arXiv:2411.15124, listopad 2024) i nadaje paradygmatowi nazwę: Reinforcement Learning with Verifiable Rewards. Pokazują, że RLVR działa nie tylko na reasoning, ale też na precyzyjne instruction following (IFEval) — gdzie DPO/RLHF zawodzą.

2025
DeepSeek-R1 — RLVR na ekstremalną skalę

Styczeń 2025: DeepSeek-R1 stosuje RLVR (przez GRPO) na MoE 671B i wywołuje lawinę reprodukcji. Termin „RLVR" zostaje powszechnie zaadoptowany w środowisku open-source.

2025
Llama 3 Reward Bench, OpenR1, SimpleRL — dyfuzja idei

RLVR staje się standardową ścieżką post-treningu dla open-source LLM o silnym reasoning + instruction following. OLMoE-instruct, Llama 3 Tülu, OpenR1 i SimpleRL reprodukują pipeline na różnej skali.

2025
Pojawienie się RLVR-aware datasetów i benchmarków

Powstają dedykowane zbiory: TÜLU 3 SFT mix, IFEval-Hard, RewardBench v2 — każdy z osobnym verifierem. Verifier-as-data-pipeline staje się odrębną dyscypliną.

Hiperparametry (konfigurowalne osie)

Verifier designKrytyczna

Najważniejsza decyzja w RLVR. Kompozycja: R = α·R_correct + β·R_format + γ·R_constraints. Słaby/szumny verifier → reward hacking poziomu zadania (np. „pisz wszystko w boxed{}" zamiast rozumować).

SymPy equality (math)AIME, MATH, GSM8K
pytest in sandbox (code)HumanEval, LiveCodeBench
regex / programmatic checks (IFEval)Format compliance
compositional R_correct + R_formatDomyślnie w Tülu 3 i DeepSeek-R1
RL algorithmWysoka

Wybór policy-gradient algorytmu. PPO (Tülu 3), GRPO (DeepSeek), REINFORCE++ (Kimi k1.5). RLVR jest agnostyczne wobec algorytmu — definiuje sygnał nagrody, nie sposób aktualizacji.

PPOTülu 3 — z modelem wartości
GRPODeepSeek-R1 — bez value modelu
REINFORCE++Kimi k1.5 — uproszczony
Task domainWysoka

Domena zadań z verifierem. Tülu 3 wprowadza shadow domain — instruction-following — obok klasycznego math/code. Mieszanka domen w treningu daje bardziej uniwersalne modele.

mathSymPy verifier — ground truth
codepytest verifier — testy jednostkowe
instruction-followingIFEval, programmatic checks
formal proofsLean/Coq verifier
mixedTülu 3 — wszystkie razem
Reward aggregationŚrednia

Sposób łączenia kilku komponentów nagrody. Suma ważona, dyskretna kompozycja (binarne AND), lub hierarchiczna (najpierw format, potem correctness).

Code sandbox configurationWysoka

Dla code verifierów: timeout na test (typowo 10–60s), izolacja sieciowa, ograniczenia pamięci (cgroups), ban niebezpiecznych importów. Bezpieczny sandbox jest niezbędny — verifier wykonuje kod generowany przez LLM.

Złożoność obliczeniowa

Złożoność czasowa: O(N · L · |θ|) sampling + O(N · V) verifier + O(N · L · |θ|) update. Złożoność przestrzenna: O(2 · |θ|) (policy + reference) + verifier RAM (mała).

Wąskie gardło obliczeniowe

Sampling rolloutów + execution time verifiera

Bottleneck zależy od domeny. Math/regex: dominuje sampling LLM. Code: dominuje verifier (równolegle w sandbox'ach CPU). Dla mieszanych domen — produkcyjny pipeline ma osobny cluster GPU dla LLM i osobny cluster CPU dla sandbox'ów verifiera, połączone async queue.

Zależy od
verifier complexityrollout count N · L

Paradygmat wykonania

Tryb główny
Gęsty

RLVR to mechanizm sygnału nagrody, nie struktura modelu. Polityka i model referencyjny są standardowe (gęste lub MoE). Można łączyć z dowolną architekturą.

Wzorzec aktywacji
Wszystkie ścieżki aktywne

Równoległość

Poziom równoległości
Częściowo równoległy

Produkcyjne pipeline'y (Tülu 3, DeepSeek-R1) skalują verifier osobno: cluster sandbox'ów Python wykonuje pytest na rolloutach asynchronicznie wobec klastra inferencji vLLM.

Zakres
TreningInferencjaPomiędzy urządzeniamiPomiędzy tokenami
Ograniczenia
!Verifiery wymagają prawdziwego wykonania (sandbox dla kodu, SymPy dla math, regex dla format). Dla kodu z `pytest` to setki ms-s na rollout — może być dominującym kosztem przy małych modelach. Sandbox musi być bezpieczny (subprocess timeout, cgroups, network isolation).
!Sampling, weryfikacja i update muszą iść w kolejności: rollouty → reward → gradient. Wewnątrz każdego etapu pełna równoległość per-device.

Wymagania sprzętowe

Podstawowe

RLVR jest typowym RL dla LLM — sampling i trening dominują GPU. Verifier działa na CPU obok klastra GPU (sandbox'y Python).

Dobry fit

Verifiery (pytest, SymPy, regex) są CPU-bound. Klastry verifierów skalują się niezależnie od GPU dla treningu.

Dobry fit

Sama metoda jest agnostyczna — dowolny RL framework + dowolny verifier. Specyfika sprzętowa wynika z LLM + RL, nie z RLVR per se.