DPO manual and CLI wizard reverse dpo_beta: they say a lower beta keeps the model closer to the reference model, but in TRL a higher beta does (F-W1-DOCS-TRAIN-07)
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 68/100
- Tipo di issue
- Documentazione
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- markdown, python
- Ambito
- cli, documentation
Direzione di ricerca
Inizia dal parametro DPO e dalle tabelle di tuning in docs/usermanuals/en/training/dpo.md (intorno alle righe 111 e 136-145), poi passa al corrispettivo turco in docs/usermanuals/tr/training/dpo.md (righe 102 e 125-134). Modifica inoltre la stringa del prompt della procedura guidata in forgelm/wizard/_collectors.py vicino alla riga 380. La riga 732 di forgelm/trainer.py si limita a passare il valore e deve restare invariata. Il lavoro è completato quando ogni descrizione di beta in entrambe le lingue e il prompt della procedura guidata dicono che un beta più alto mantiene la policy più vicina al riferimento, e quando il suggerimento consiglia di aumentare beta quando la valutazione peggiora.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Wave 3 · group W3 Docs · highest severity Medium · 1 finding(s) · effort docs fix
Summary
The DPO page tells users that a lower dpo_beta keeps the policy closer to the reference model and a higher one makes a more aggressive preference shift, and advises lowering beta when evaluation regresses. TRL, which receives the value unchanged, defines the opposite: a higher β means less deviation from the reference model. A user who follows the tip to fix over-fitting weakens the KL regularisation and moves the model further from the reference.
Primary finding
F-W1-DOCS-TRAIN-07 — DPO beta guidance reverses the regularisation direction
severity Medium · confidence high · checked against the installed TRL source and its reference docs
What happens. The parameter table (docs/usermanuals/en/training/dpo.md:111), the tuning table and the tip (docs/usermanuals/en/training/dpo.md:136-145) describe a lower β as staying close to the reference and a higher β as more aggressive; the Turkish mirror says the same (docs/usermanuals/tr/training/dpo.md:102, docs/usermanuals/tr/training/dpo.md:125-134). The CLI wizard prompt repeats it: dpo_beta — temperature / KL strength (lower → closer to reference model) (forgelm/wizard/_collectors.py:380). ForgeLM passes training.dpo_beta to TRL's DPOConfig unchanged (forgelm/trainer.py:732). The site's own wizard text already states the correct direction (site/js/translations.js:1651: "higher beta keeps it close to the reference"), so the site and the manual contradict each other.
Where.
docs/usermanuals/en/training/dpo.md:111(parameter table)docs/usermanuals/en/training/dpo.md:136-145(tuning table and tip)docs/usermanuals/tr/training/dpo.md:102docs/usermanuals/tr/training/dpo.md:125-134forgelm/wizard/_collectors.py:380(CLI wizard prompt)forgelm/trainer.py:732(value passed to TRL unchanged)
Evidence (re-verified on 2026-10-09).
- Installed TRL 1.7.1,
trl/trainer/dpo_config.py: "Parameter controlling the deviation from the reference model. Higher β means less deviation from the reference model." The official reference says the same: https://huggingface.co/docs/trl/dpo_trainer#trl.DPOConfig forgelm/trainer.py:732setskwargs["beta"] = self.config.training.dpo_betawith no transformation.
Recommended fix. Reverse the direction in the parameter table, the tuning table and the tip, in English and Turkish: a lower β weakens the KL penalty and lets the policy move further from the reference (a more aggressive preference shift); a higher β keeps it closer. When evaluation regresses while training loss keeps falling, advise a higher β (or fewer steps, or a lower learning rate) checked against held-out evaluation. Change the CLI wizard prompt to (higher → closer to reference model). Linking TRL's DPOConfig reference from the parameter row keeps the two from drifting again.
Acceptance criteria
- The English and Turkish DPO pages describe β the way TRL's
DPOConfigdoes, in the parameter table, the tuning table and the tip. - The CLI wizard prompt and the site wizard describe the same direction.
- Documentation listed above is corrected in English and in its Turkish mirror in the same PR.
- The finding is resolved or explicitly closed with a reason.
Found by the September 2026 independent review of ForgeLM against commit cab2947 and re-verified against development at f94595f on 2026-10-09. Code links point at cab2947; line numbers may have moved since. Finding IDs (F-W1-…) are stable references for this backlog.
- Lingua principale
- Python
- Stelle
- 9
- Fork
- 1
- Merge medio
- 4h 3m
- PR unite (30g)
- 3
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di HodeTech/ForgeLM
-
area: dev-tooling bug severity: low source: roadmap wave: 4
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
area: site bug good first issue severity: low source: review-2026-09 wave: 4
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
-
documentation good first issue severity: medium source: review-2026-09 wave: 3
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
documentation good first issue severity: low source: review-2026-09 wave: 4
Difficoltà 1/5 1-3 ore Idoneità per principianti 80/100
-
documentation severity: medium source: review-2026-09 wave: 3
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Tutte le issue di HodeTech/ForgeLM
Issue simili
-
area: desktop area: website priority: P2 type: feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
appandflow/stim#3411 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 88/100
baptistehamon/lsapy#185 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
PolicyEngine/policyengine-us#10073 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
syedhamidali/radarx#277 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Arekkazu/sgpmp-backend#549 ·
I maintainer di solito rispondono entro 1 giorno