Skip to content
Open
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
fd37381
feat: add router replay for megatron engine
Apr 12, 2026
e7bf2c6
feat: fix
Apr 12, 2026
00ed924
feat: fix
Apr 12, 2026
bb650a2
feat: add config for test
Apr 12, 2026
87dca2a
feat: fix
Apr 12, 2026
6198aea
faet: fix
Apr 13, 2026
45fbf9f
fix(router): refactor
Apr 18, 2026
4655264
fix(engine): fix routed_experts format
Apr 18, 2026
833ec68
fix(sglang): ban skip_tokenizer_init
Apr 18, 2026
a887b52
feat(math): add base config
Apr 18, 2026
e5dae7d
fix(math): fix config
Apr 19, 2026
c06c5d0
fix: fix skip_tokenizer_init
Apr 19, 2026
c53033a
feat(engine): fix optimizer
Apr 19, 2026
9b752a4
feat(router): fix code
Apr 19, 2026
b149621
fix(engine): remove
Apr 19, 2026
7161578
fix: logger fix
Apr 19, 2026
e05df49
feat: add r3 log
Apr 19, 2026
2027b6a
feat(validate): improve r3
Apr 19, 2026
4ca85b2
refactor(router_replay_patch): print
Apr 19, 2026
c78ee7f
fix(router): fix calculate router
Apr 19, 2026
c1ba06b
fix(ppo): add warning
Apr 19, 2026
1a5201c
feat(config): fix
Apr 20, 2026
e9c8ddd
fix(engine): fix forward_only
Apr 20, 2026
e770b98
fix(config ): set skip_tokenizer_init false
Apr 20, 2026
66a8269
fix(ppo): add dense count
Apr 20, 2026
79e7d9d
fix(math): fix eps_clip
Apr 20, 2026
23b657c
feat(math): add config
Apr 20, 2026
a9b0b46
fix(config): remove Instruct
Apr 21, 2026
e78147c
feat(R3): add logprob diff
Apr 21, 2026
685c17a
fix: add Moonlight-16B-A3B-Istruct
Apr 21, 2026
15e7015
fix(math): fix Moonlight-16B-A3B-Istruct
Apr 21, 2026
302be1e
fix(config): spill
Apr 21, 2026
b54d4b7
fix(router_replay): fix culen
Apr 21, 2026
539c289
fix(engine): padding
Apr 21, 2026
52dac7f
fix(router_replay_utils): fix padding
Apr 22, 2026
39792e2
feat: add log
Apr 22, 2026
aaf2e5b
fix(scheduler): fix local
Apr 22, 2026
d517f27
refactor(router): fix router metric
Apr 23, 2026
56cb637
refactor(megatron_engine): later
Apr 25, 2026
fbd94ae
fix(engine): patch
Apr 25, 2026
9583f23
feat(math): add moonlight-16b-a3b-gsm8k-grpo
Apr 25, 2026
49c83ab
fix(engine): fix mtp_num_layers
Apr 25, 2026
cffe25b
fix(mcore/hf_save): fix mla param
Apr 25, 2026
7c76ed3
refactor: remove log
Apr 25, 2026
d6f8c33
fix(math): update optimizer
Apr 25, 2026
4c11981
fix(rollout): up max_head_offpolicyness
Apr 25, 2026
41f49ab
fix(rollout): down max_head_offpolicyness
Apr 25, 2026
0fce038
fix(optimizer): lr fix
Apr 25, 2026
73e9a95
fix(optimizer): lr
Apr 26, 2026
09e43a1
feat(r3): fix r3
Apr 26, 2026
c52b50c
fix(rollout): on policy
Apr 26, 2026
606442c
fix(engine): fix save
Apr 27, 2026
75a8527
refactor: remove useless
Apr 28, 2026
dc94b3d
refactor(rlvr_r3_patch): remove moe infer
Apr 28, 2026
1b3a3a3
feat(MoE): auto get num_moe_layers and topk
Apr 28, 2026
747f9f5
Merge branch 'main' into final_moe
TaoZex Apr 28, 2026
e156cf3
refactor(megatron_engine): remove for run moe
Apr 28, 2026
4c9e76f
Merge branch 'final_moe' of https://github.com/TaoZex/AReaL into fina…
Apr 28, 2026
8e9beef
fix(engine): fix log
Apr 28, 2026
ab5c323
feat(controller): fix log
Apr 28, 2026
fb6e48e
docs(infra): fix
Apr 28, 2026
2d0a306
refactor(r3): fix split sample
Apr 28, 2026
647c865
feat(sglang): R3 monkey patch
Apr 28, 2026
0926e0f
refactor(launcher): remove
Apr 28, 2026
1b01ba3
feat(actor): fix for imp_weight
Apr 28, 2026
7a32915
feat(engine): add use_precision_aware_optimizer_no_fp8_or_ds_fp8(for …
Apr 29, 2026
d70496b
refactor: fix log
Apr 29, 2026
3fa3283
fix(guard): remove useless log
Apr 29, 2026
805bda8
refactor: restore local.py
Apr 29, 2026
1ec270d
docs: remove
Apr 29, 2026
3f40170
style: log level
Apr 29, 2026
1449e9a
refactor(r3): remove metric
Apr 29, 2026
515312c
refactor(engine): remove RouterReplay statics
Apr 29, 2026
fecd34b
Merge branch 'main' into final_moe
TaoZex Apr 29, 2026
cfe2b31
feat: add docs and tests
Apr 29, 2026
a61ef21
test(r3_mask_alignment): remove unused test
Apr 29, 2026
e8296a0
test(r3_mask_alignment): fix test
Apr 29, 2026
6235267
test(router_replay): fix test
Apr 29, 2026
200addc
refactor(tests): get model
Apr 29, 2026
2e2ef99
fix: fix test
Apr 29, 2026
9e25cd9
test(torchrun): add prox_logp
Apr 29, 2026
86951db
docs: remove useless
Apr 29, 2026
eaf8b27
Merge branch 'main' into final_moe
TaoZex Apr 29, 2026
7d4ced3
docs: remove
Apr 29, 2026
439976a
Merge branch 'final_moe' of https://github.com/TaoZex/AReaL into fina…
Apr 29, 2026
fc338b1
fix(trainer): remove useless code
Apr 29, 2026
5779c3a
fix(ppo): add r3 for _compute_logp
Apr 30, 2026
4cc6544
refactor(ppo): fix metric
Apr 30, 2026
e2a7980
feat(ppo): add _r3_effectiveness_stats
Apr 30, 2026
3e92a3d
fix(ppo/actor): fix metric
May 1, 2026
7bc2a41
feat: all stage r3 log
May 1, 2026
327b927
refactor(logging): fix log
May 1, 2026
23afbee
fix(router_replay): add mask
May 1, 2026
96cbdcf
fix(router_replay): zero row fix
May 1, 2026
bf5345f
feat(r3): add deep log
May 2, 2026
cfd0f88
fix(router_replay): fix case num_sgl_tokens more than real_tokens
May 2, 2026
f7550b9
fix(config): down max_concurrent_rollouts
May 2, 2026
5814169
refactor(examples/math): pp
May 4, 2026
3dbb46f
fix(congig): fix
May 4, 2026
7c78380
feat(diag): pp log
May 5, 2026
c2fc221
fix(router_replay): cp
May 6, 2026
34ee92a
fix(engine): test
May 6, 2026
f5be0f3
fix(archon_utils): revert test
May 6, 2026
5fdc08b
fix(examples/math): test config
May 6, 2026
9cf7127
feat(diag): cp log
May 6, 2026
001e036
fix: add cp_local
May 6, 2026
b5c8d28
fix: config
May 6, 2026
97b5dd4
fix(engine): disable cp_local
May 6, 2026
f816f6c
fix(examples/math): fix oom
May 6, 2026
0642173
refactor: remove log
May 7, 2026
850041b
refactor: remove
May 7, 2026
49680c5
refactor: remove diag
May 7, 2026
1af8cc3
refactor(megatron_engine): fix
May 7, 2026
8fc8028
refactor(ppo): remove useless
May 7, 2026
13384d5
feat(math): fix config
May 7, 2026
39b39af
Merge branch 'main' into final_moe
TaoZex May 7, 2026
35014fe
refactor(router): fix precommit
May 7, 2026
d2b6d4c
feat: fix pre commit
May 7, 2026
a9f0b04
Merge branch 'main' into final_moe
TaoZex May 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions areal/engine/megatron_engine.py
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,8 @@ def initialize(self, addr: str | None, ft_spec: FinetuneSpec, *args, **kwargs):

self.tokenizer = load_hf_tokenizer(self.config.path)

# R3: Check early so the variable is always defined.
_r3_enabled = getattr(self.config, "_r3_enable_router_replay", False)
with patch_bridge_for_tree_training(
self.enable_tree_training and self.bridge_cls == "mbridge"
):
Expand All @@ -307,6 +309,14 @@ def initialize(self, addr: str | None, ft_spec: FinetuneSpec, *args, **kwargs):
self._check_and_apply_fp8_config()
self._validate_fp8_consistency()

# R3: Apply Router Replay patch BEFORE model creation so that
# TopKRouter.__init__ and TransformerConfig.__init__ are patched.
if _r3_enabled:
from areal.engine.router_replay_patch import apply_router_replay_patch
apply_router_replay_patch()
self.tf_config.enable_routing_replay = True
self.logger.info("[R3] Router Replay patches applied before model creation.")

with self.device:
models = make_mcore_model(
hf_config=self.hf_config,
Expand Down Expand Up @@ -398,6 +408,12 @@ def initialize(self, addr: str | None, ft_spec: FinetuneSpec, *args, **kwargs):
model_config.param_sync_func = model_config.param_sync_func[0]
model_config.finalize_model_grads_func = finalize_model_grads
self._create_optimizer(ft_spec)

# R3: Apply engine-level patch after model and optimizer are ready.
if _r3_enabled:
from areal.engine.megatron_engine_r3_patch import patch_megatron_engine_for_r3
patch_megatron_engine_for_r3(self, enable_router_replay=True)
self.logger.info("[R3] Router Replay enabled on MegatronEngine.")
self._initialized = True

def _build_hf_mcore_bridge(self):
Expand Down
Loading
Loading