Skip to content

Commit b2195e1

Browse files
committed
Preload model to avoid race condition.
Signed-off-by: Jonas Yang <[email protected]>
1 parent 0ca37bf commit b2195e1

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

examples/run_grpo_math.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
from typing import Any, Optional
2020

2121
from omegaconf import OmegaConf
22-
from transformers import PreTrainedTokenizerBase
22+
from transformers import AutoModel, PreTrainedTokenizerBase
2323

2424
from nemo_rl.algorithms.grpo import MasterConfig, grpo_train, setup
2525
from nemo_rl.algorithms.utils import get_tokenizer
@@ -159,7 +159,17 @@ def main() -> None:
159159

160160
init_ray()
161161

162-
# setup tokenizer
162+
# setup tokenizer and preloading model to force HF to download the model and modules
163+
# to avoid race condition inside generation/policy workers.
164+
try:
165+
_ = AutoModel.from_pretrained(
166+
config["policy"]["model_name"], trust_remote_code=True
167+
)
168+
print(f"Model preloaded successfully: {config['policy']['model_name']}")
169+
except Exception as e:
170+
print("WARNIN: error in preloading model, in general it's not a problem: ")
171+
print(e)
172+
163173
tokenizer = get_tokenizer(config["policy"]["tokenizer"])
164174
assert config["policy"]["generation"] is not None, (
165175
"A generation config is required for GRPO"

0 commit comments

Comments
 (0)