From 00ce572c9b54e10a8a083b1782ef2d8d51c2d506 Mon Sep 17 00:00:00 2001 From: joecummings Date: Wed, 1 Oct 2025 12:26:15 -0700 Subject: [PATCH 1/2] Update torchtitan for proper bf16 & new quant APIs --- .../wheels/torchtitan-0.1.0-py3-none-any.whl | Bin 427082 -> 427839 bytes scripts/build_wheels.sh | 2 +- src/forge/actors/trainer.py | 4 ++-- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/assets/wheels/torchtitan-0.1.0-py3-none-any.whl b/assets/wheels/torchtitan-0.1.0-py3-none-any.whl index 1fc989420fdf6396ac796de318ae1a5404691af2..574f901466037707fd22844a6eb413c7cc74ce82 100644 GIT binary patch delta 45409 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 delta 44878 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

US20~#Y*0D!+bZY46k;wpSzu)t&t1B$oqGwc zesF#y@|K`yjd|29C1a~;WliU03kc^d<3A*$nsSL;98o0mXX&m-o=B{@xMsZn{omD* zCYV8hHSoXW%!A#Rq4LjN7$Eu&b9`o4mO%hQQ}GzU?7wv11it~m|HKcpI{>23TrIZ; z0DaoPpaU6MBmO1!P_+LyLw|n(AT%BTPyiqvJ+NZXqN;UgJZCnYR#bs7B}?-Ryxi=7 zWh-`NVVht@ChmYA=br!xBa$4stGP{{dx;l|Apx0a>&KfRUom>*-;Fnr@R)~V)sXE= zY{`r8xPHdgZ4;s2dyaxwA53ie-YQe0sX0hv*-hEi>BbF?@4&A+TDcVYv4iH1G|cM3Du|p-m=yh*wM$Z1re}`3nfrbgI7ra0xni>Yyr+~yv1bwr|^b^bRR*eYV3;L#~s0vXkZ zYdb8P7`vU~PhOMR9>3tWQZfinsbfGg$tmq7v$q)wA&tarkiSS-l_tigb2-jr#C<75 zhaJO_!~ejZrPjfV;!l<#YxRm3$Rz^TAMNUz@z|wiRwbNScP{4k4vz(V=jDk!HzP@f z$Si3hXu((`zeM6~ZU@BHO_|)v@bSyX%{Q7A`=qlulVv_==u1xojfBt9;K+j*k_ewp z5+z@hXLkD0BfmQZ3R1bVs|=0&B6t4wP>6s`WKzQC5KqImOCcqkf9-jCrO7j+82=x3{fe|?&2JzS*LL-Y&l;hgGRFCkuMi>F~=n+Hj0hXmhb%Cz#? z84kwB#@<ff6kquMe3L?Q5cewb??L-Jh5#N>s|A<1SSX(8Rv)H<`-ha0J^TotUdgT5JLrreZUHS#jN36J~OdsdY#j|ABtL*akWzuEe`x7HzdRLq{vz39s z{x1Oj4}a&L0l5Dw=cO$_0}lQ}x!o@Ss81v2$X|fd=V9jq0B1fAI}$X|_A~N>1@?TJ zB!$p`f}bYNAX1?AXT@-t5lHh{mxE*nntn#sJV2sP!)vrCQ1i0_xh(2)Bq}d!eAp~p!$FR6Vp`h3^e@�!LEbN>GTas59)%$7zv0>n()&H^H& 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 diff --git a/scripts/build_wheels.sh b/scripts/build_wheels.sh index a43c73a68..7e26b1bb4 100755 --- a/scripts/build_wheels.sh +++ b/scripts/build_wheels.sh @@ -18,7 +18,7 @@ NC='\033[0m' PYTORCH_VERSION="2.9.0.dev20250905" VLLM_BRANCH="v0.10.0" MONARCH_COMMIT="9c41b5c16edadeab7cfb8521ba7efe68a1e2bc87" -TORCHTITAN_COMMIT="a3104201ba3a0fa19e9c3cc5ba748b0398551410" +TORCHTITAN_COMMIT="9f3fe08635356b829e6bf41883760679a8207697" TORCHSTORE_COMMIT="0052f6d8b686b9cff0cf4ce203a836c4b5d5ac94" BUILD_DIR="$HOME/forge-build" WHEEL_DIR="$(pwd)/assets/wheels" diff --git a/src/forge/actors/trainer.py b/src/forge/actors/trainer.py index 08d3ae8a9..1de941307 100644 --- a/src/forge/actors/trainer.py +++ b/src/forge/actors/trainer.py @@ -27,7 +27,7 @@ Checkpoint, Comm, Compile, - Float8Dense, + Float8Linear, LRScheduler, Model, Optimizer, @@ -104,7 +104,7 @@ class RLTrainer(ForgeActor): ) use_vllm_builtin_load: bool = True compile: Compile = field(default_factory=Compile) - float8: Float8Dense = field(default_factory=Float8Dense) + float8: Float8Linear = field(default_factory=Float8Linear) comm: Comm = field(default_factory=Comm) loss: Callable = lambda logits, **targets: logits state_dict_key: str = "model_state_dict" From b42a756c2cd72a98bb11bf20120698e4aad3cb38 Mon Sep 17 00:00:00 2001 From: joecummings Date: Wed, 1 Oct 2025 13:15:09 -0700 Subject: [PATCH 2/2] Update num tokens back to 512 --- apps/grpo/qwen3_8b.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/grpo/qwen3_8b.yaml b/apps/grpo/qwen3_8b.yaml index 5436ba19e..c46ee0620 100644 --- a/apps/grpo/qwen3_8b.yaml +++ b/apps/grpo/qwen3_8b.yaml @@ -4,8 +4,8 @@ # Global configuration group_size: 8 batch_size: 16 -max_req_tokens: 468 -max_res_tokens: 468 +max_req_tokens: 512 +max_res_tokens: 512 model: "Qwen/Qwen3-8B" off_by_n: 1 # Off by one by default