Pratham-math commited on
Commit
7ad981e
·
verified ·
1 Parent(s): 75c8036

fix(grpo): TRL 1.2 stock path + LoRA double-wrap fix + smoke memory caps

Browse files
Files changed (1) hide show
  1. scripts/job_train.sh +14 -1
scripts/job_train.sh CHANGED
@@ -65,13 +65,26 @@ print("SFT adapter:", run_sft(cfg, m, t))
65
  PY
66
 
67
  # GRPO 50 steps (Path 3 — 0.5B sanity check; switch to qwen_1_5b + max_steps=400 for Path 1)
 
 
 
 
 
68
  python <<'PY'
69
  from hydra import initialize_config_dir, compose
70
  from train.model_load import load_model_and_tokenizer
71
  from train.grpo import run_grpo
72
  from rewards.compose import make_reward_fn
73
  with initialize_config_dir(config_dir="/w/configs", version_base="1.3"):
74
- cfg = compose(config_name="config", overrides=["model=qwen_0_5b_smoke","train=grpo","train.max_steps=50"])
 
 
 
 
 
 
 
 
75
  m, t = load_model_and_tokenizer(cfg)
76
  print("GRPO merged:", run_grpo(cfg, m, t, make_reward_fn(cfg.reward), "http://localhost:8001"))
77
  PY
 
65
  PY
66
 
67
  # GRPO 50 steps (Path 3 — 0.5B sanity check; switch to qwen_1_5b + max_steps=400 for Path 1)
68
+ # Memory overrides for single-A10G + vLLM colocate at 0.5B:
69
+ # - num_generations=4 (was 8) → halves rollout VRAM
70
+ # - max_prompt_length=2048 (was 4096) → halves KV cache per prompt
71
+ # - max_completion_length=512 (was 2048) → quarters generation memory
72
+ # - vllm_gpu_memory_utilization=0.35 → leaves ~16GB headroom for trainer
73
  python <<'PY'
74
  from hydra import initialize_config_dir, compose
75
  from train.model_load import load_model_and_tokenizer
76
  from train.grpo import run_grpo
77
  from rewards.compose import make_reward_fn
78
  with initialize_config_dir(config_dir="/w/configs", version_base="1.3"):
79
+ cfg = compose(config_name="config", overrides=[
80
+ "model=qwen_0_5b_smoke",
81
+ "train=grpo",
82
+ "train.max_steps=50",
83
+ "train.num_generations=4",
84
+ "train.max_prompt_length=2048",
85
+ "train.max_completion_length=512",
86
+ "train.vllm_gpu_memory_utilization=0.35",
87
+ ])
88
  m, t = load_model_and_tokenizer(cfg)
89
  print("GRPO merged:", run_grpo(cfg, m, t, make_reward_fn(cfg.reward), "http://localhost:8001"))
90
  PY