diff --git a/src/llmtuner/model/patcher.py b/src/llmtuner/model/patcher.py index 5f67f618..c537a6d2 100644 --- a/src/llmtuner/model/patcher.py +++ b/src/llmtuner/model/patcher.py @@ -284,6 +284,12 @@ def patch_model( if is_trainable: _prepare_model_for_training(model, model_args) + if getattr(model.config, "model_type", None) == "mixtral" and is_deepspeed_zero3_enabled(): + require_version("deepspeed>=0.13.0", "To fix: pip install deepspeed>=0.13.0") + from deepspeed.utils import set_z3_leaf_modules + from transformers.models.mixtral.modeling_mixtral import MixtralSparseMoeBlock + set_z3_leaf_modules(model, [MixtralSparseMoeBlock]) + def patch_valuehead_model(model: "AutoModelForCausalLMWithValueHead") -> None: def tie_weights(self: "AutoModelForCausalLMWithValueHead") -> None: