feat: add CPU offload for optimizer states
This commit is contained in:
1
train.py
1
train.py
@@ -99,6 +99,7 @@ def train(config_path):
|
|||||||
bf16=True,
|
bf16=True,
|
||||||
gradient_checkpointing=config.get("gradient_checkpointing", False),
|
gradient_checkpointing=config.get("gradient_checkpointing", False),
|
||||||
optim=config["train_params"].get("optim", "adamw_torch"),
|
optim=config["train_params"].get("optim", "adamw_torch"),
|
||||||
|
optim_args=config["train_params"].get("optim_args"),
|
||||||
)
|
)
|
||||||
print(f"Using optimizer: {training_args.optim}")
|
print(f"Using optimizer: {training_args.optim}")
|
||||||
|
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ train_params:
|
|||||||
save_total_limit: 3
|
save_total_limit: 3
|
||||||
output_dir: ../../output/ornith-35b-lora
|
output_dir: ../../output/ornith-35b-lora
|
||||||
optim: adamw_bnb_8bit # 8-bit optimizer to save VRAM
|
optim: adamw_bnb_8bit # 8-bit optimizer to save VRAM
|
||||||
|
optim_args: "offload_optimizer_device=cpu" # Offload optimizer to CPU RAM
|
||||||
|
|
||||||
# Precision
|
# Precision
|
||||||
mixed_precision: bf16
|
mixed_precision: bf16
|
||||||
|
|||||||
Reference in New Issue
Block a user