Skip to content

docs/usermanuals/en/concepts/data-formats.md: broken example — GRPO: ground_truth is passed to your reward function reward(prompt, response, ground_truth); set `grpo_reward_model: "my_reward.rewa… (DOC-D3B05-008) #234

Open

Description

@cemililik

Wave 1 · theme D1-10: Documentation-only fixes · highest severity High · 1 finding(s) · effort docs fix

Summary

The example fails at reward-model load ('my_reward.reward' is not a model repo). A ground_truth column gets no correctness signal.

Primary finding

DOC-D3B05-008 — docs/usermanuals/en/concepts/data-formats.md: broken example — GRPO: ground_truth is passed to your reward function reward(prompt, response, ground_truth); set `grpo_reward_model: "my_reward.rewa…

severity High

Where. docs/usermanuals/en/concepts/data-formats.md:97-124 (Turkish mirror: docs/usermanuals/tr/concepts/data-formats.md:99-119) · type: broken example

The document says. GRPO: ground_truth is passed to your reward function reward(prompt, response, ground_truth); set grpo_reward_model: "my_reward.reward"

What the code does. training.grpo_reward_model is loaded as an HF model path through AutoTokenizer/AutoModelForSequenceClassification.from_pretrained (trainer.py:1087-1096, 1118-1186; field description config.py:519-528). There is no import of Python callables. The built-in correctness reward reads a gold_answer column, not ground_truth (trainer.py:216-260, 1101). TRL reward callables receive completions lists plus column kwargs, not (prompt, response, ground_truth).

Code references. forgelm/trainer.py:1074-1186, forgelm/trainer.py:216-260, forgelm/config.py:519-528

User impact. The example fails at reward-model load ('my_reward.reward' is not a model repo). A ground_truth column gets no correctness signal.

Proposed correction. Replace with: "Provide {\"prompt\": …, \"gold_answer\": \"391\"}; ForgeLM adds a built-in exact-match reward on the last Answer: <value>. To use a learned reward, set grpo_reward_model to an HF sequence-classification model ID. Custom Python reward functions are not supported."

Turkish mirror. the Turkish page has the same error; fix both in the same PR

Acceptance criteria

  • Each statement is re-checked against the code at fix time.
  • Documentation listed above is corrected in English and in its Turkish mirror in the same PR.
  • Every finding in this issue is resolved or explicitly closed with a reason.

Found by the October 2026 ForgeLM code and documentation review against commit cab2947. Code links point at that commit; line numbers may have moved since. Finding IDs (CR-…, DOC-…, TECH-…) are stable references for this backlog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationseverity: highWrong behaviour or a false claim users rely onsource: review-2026-10Found by the October 2026 code and documentation reviewwave: 1Roadmap wave 1: high severity, small effort

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions