feat(translation): overhaul WMT24++ and FLORES evaluation - #2251
Merged
bxyu-nvidia merged 2 commits intoJul 30, 2026
Conversation
bxyu-nvidia
previously approved these changes
Jul 30, 2026
Expand the translation benchmarks and standardize scoring around chrF,
FLORES-200 spBLEU, COMET, and target-language consistency.
- expand WMT24++ from five defaults to all 55 target locales
- expand FLORES from the six-language pair matrix to 219 English-to-X
devtest pairs across 220 supported FLORES+ configurations
- store generated language names and FLORES devtest availability in
checked-in metadata instead of querying or hardcoding them at runtime
- preserve complete FLORES language and script codes in prepared rows
- reject unknown or devtest-incompatible FLORES configurations
- deduplicate WMT target locales while preserving their requested order
- exclude WMT24++ rows marked as bad source data
- publish WMT preparation output atomically after model prefetch succeeds
- add CLI controls for COMET, spBLEU, and GlotLID prefetching
Replace language-specific SacreBLEU tokenization with NFC-normalized chrF
and FLORES-200 SentencePiece spBLEU scoring. Use sentence chrF as the
dense RL reward and report sentence and corpus chrF/spBLEU separately.
Emit a startup warning because the new spBLEU values are not comparable
with the previous BLEU metrics.
Add configurable target-language consistency scoring:
- use CLD2 for WMT24++ locale-to-language validation
- use GlotLID probabilities for FLORES languages and dialect mappings
- load language-detection backends lazily and reuse them across requests
- report per-rollout scores and per-pair, source, target, and global
aggregate metrics
- warn when a language pair falls below the configured consistency
threshold
- document CLD2 limitations for regional language variants
Prefetch the shared SentencePiece, COMET, and GlotLID assets for offline
verification. Update translation dependencies, configs, documentation,
and example rollouts for the new scoring contract. Add metadata
generation and mapping-validation utilities plus unit coverage for
preparation, scoring, aggregation, backend loading, and language-code
handling.
BREAKING CHANGE: The wmt_translation per-rollout reward now uses sentence-
level chrF instead of sentence-level BLEU; spBLEU remains a separately
reported metric. The sentence_bleu field and */bleu aggregate keys are
replaced by sentence_chrf, sentence_spbleu, */chrF, and */spBLEU.
Signed-off-by: Brian Thompson <3534106+thompsonb@users.noreply.github.com>
thompsonb
force-pushed
the
update_translate_benchmarks
branch
from
July 30, 2026 19:52
ca5b2e2 to
efcd085
Compare
Signed-off-by: Brian Thompson <3534106+thompsonb@users.noreply.github.com>
thompsonb
force-pushed
the
update_translate_benchmarks
branch
from
July 30, 2026 20:10
efcd085 to
8188cec
Compare
bxyu-nvidia
approved these changes
Jul 30, 2026
kajalj22
added a commit
that referenced
this pull request
Aug 5, 2026
- Remove osworld_agent/pyproject.toml (not in r0.5.0 yet) - Revert wmt_translation/requirements.txt to r0.5.0 state (pycld2 addition came from feat(translation) #2251, not the Python bump PR) - Regenerate uv.lock Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Kajal Jain <kajalj@nvidia.com>
OlegSudakov
pushed a commit
to OlegSudakov/Gym
that referenced
this pull request
Aug 7, 2026
…o#2251) Expand the translation benchmarks and standardize scoring around chrF, FLORES-200 spBLEU, COMET, and target-language consistency. - expand WMT24++ from five defaults to all 55 target locales - expand FLORES from the six-language pair matrix to 219 English-to-X devtest pairs across 220 supported FLORES+ configurations - store generated language names and FLORES devtest availability in checked-in metadata instead of querying or hardcoding them at runtime - preserve complete FLORES language and script codes in prepared rows - reject unknown or devtest-incompatible FLORES configurations - deduplicate WMT target locales while preserving their requested order - exclude WMT24++ rows marked as bad source data - publish WMT preparation output atomically after model prefetch succeeds - add CLI controls for COMET, spBLEU, and GlotLID prefetching Replace language-specific SacreBLEU tokenization with NFC-normalized chrF and FLORES-200 SentencePiece spBLEU scoring. Use sentence chrF as the dense RL reward and report sentence and corpus chrF/spBLEU separately. Emit a startup warning because the new spBLEU values are not comparable with the previous BLEU metrics. Add configurable target-language consistency scoring: - use CLD2 for WMT24++ locale-to-language validation - use GlotLID probabilities for FLORES languages and dialect mappings - load language-detection backends lazily and reuse them across requests - report per-rollout scores and per-pair, source, target, and global aggregate metrics - warn when a language pair falls below the configured consistency threshold - document CLD2 limitations for regional language variants Prefetch the shared SentencePiece, COMET, and GlotLID assets for offline verification. Update translation dependencies, configs, documentation, and example rollouts for the new scoring contract. Add metadata generation and mapping-validation utilities plus unit coverage for preparation, scoring, aggregation, backend loading, and language-code handling. BREAKING CHANGE: The wmt_translation per-rollout reward now uses sentence- level chrF instead of sentence-level BLEU; spBLEU remains a separately reported metric. The sentence_bleu field and */bleu aggregate keys are replaced by sentence_chrf, sentence_spbleu, */chrF, and */spBLEU. --------- Signed-off-by: Brian Thompson <3534106+thompsonb@users.noreply.github.com> Co-authored-by: Brian Thompson <3534106+thompsonb@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Expand the translation benchmarks and standardize scoring around chrF,
FLORES-200 spBLEU, COMET, and target-language consistency.
Replace language-specific SacreBLEU tokenization with NFC-normalized chrF
and FLORES-200 SentencePiece spBLEU scoring. Use sentence chrF as the
dense RL reward and report sentence and corpus chrF/spBLEU separately.
Emit a startup warning because the new spBLEU values are not comparable
with the previous BLEU metrics.
Add configurable target-language consistency scoring:
Prefetch the shared SentencePiece, COMET, and GlotLID assets for offline
verification. Update translation dependencies, configs, documentation,
and example rollouts for the new scoring contract. Add metadata
generation and mapping-validation utilities plus unit coverage for
preparation, scoring, aggregation, backend loading, and language-code
handling.
BREAKING CHANGE: The wmt_translation per-rollout reward now uses sentence-
level chrF instead of sentence-level BLEU; spBLEU remains a separately
reported metric. The sentence_bleu field and */bleu aggregate keys are
replaced by sentence_chrf, sentence_spbleu, */chrF, and */spBLEU.