modelscope / modelscope/ms-swift

无法进行训练,RuntimeError: .to() does not accept copy argument

Open
#6,606 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

stale
Dominant language
Python
Stars
15.7k
Forks
1.7k
Avg merge
1d 16h
Merged PRs (30d)
136

Description

Describe the bug
日志:

[INFO:swift] lora_config: LoraConfig(task_type='CAUSAL_LM', peft_type=<PeftType.LORA: 'LORA'>, auto_mapping=None, base_model_name_or_path='/home/chumenta/.cache/modelscope/hub/models/Qwen/Qwen3-30B-A3B-Instruct-2507', revision=None, inference_mode=False, r=8, target_modules={'up_proj', 'q_proj', 'k_proj', 'o_proj', 'gate_proj', 'v_proj', 'gate', 'down_proj'}, exclude_modules=None, lora_alpha=32, lora_dropout=0.05, fan_in_fan_out=False, bias='none', use_rslora=False, modules_to_save=[], init_lora_weights=True, layers_to_transform=None, layers_pattern=None, rank_pattern={}, alpha_pattern={}, megatron_config=None, megatron_core='megatron.core', trainable_token_indices=None, loftq_config={}, eva_config=None, corda_config=None, use_dora=True, use_qalora=False, qalora_group_size=16, layer_replication=None, runtime_config=LoraRuntimeConfig(ephemeral_gpu_offload=False), lora_bias=False, target_parameters=None, lora_dtype=None, lorap_lr_ratio=None, lorap_emb_lr=1e-06)
[INFO:swift] model: PeftModelForCausalLM(
  (base_model): LoraModel(
    (model): Qwen3MoeForCausalLM(
      (model): Qwen3MoeModel(
        (embed_tokens): Embedding(151936, 2048)
        (layers): ModuleList(
          (0-47): 48 x Qwen3MoeDecoderLayer(
            (self_attn): Qwen3MoeAttention(
              (q_proj): lora.Linear4bit(
                (base_layer): Linear4bit(in_features=2048, out_features=4096, bias=False)
                (lora_dropout): ModuleDict(
                  (default): Dropout(p=0.05, inplace=False)
                )
                (lora_A): ModuleDict(
                  (default): Linear(in_features=2048, out_features=8, bias=False)
                )
                (lora_B): ModuleDict(
                  (default): Linear(in_features=8, out_features=4096, bias=False)
                )
                (lora_embedding_A): ParameterDict()
                (lora_embedding_B): ParameterDict()
                (lora_magnitude_vector): ModuleDict(
                  (default): lora.dora.DoraLinearLayer()
                )
              )
              (k_proj): lora.Linear4bit(
                (base_layer): Linear4bit(in_features=2048, out_features=512, bias=False)
                (lora_dropout): ModuleDict(
                  (default): Dropout(p=0.05, inplace=False)
                )
                (lora_A): ModuleDict(
                  (default): Linear(in_features=2048, out_features=8, bias=False)
                )
                (lora_B): ModuleDict(
                  (default): Linear(in_features=8, out_features=512, bias=False)
                )
                (lora_embedding_A): ParameterDict()
                (lora_embedding_B): ParameterDict()
                (lora_magnitude_vector): ModuleDict(
                  (default): lora.dora.DoraLinearLayer()
                )
              )
              (v_proj): lora.Linear4bit(
                (base_layer): Linear4bit(in_features=2048, out_features=512, bias=False)
                (lora_dropout): ModuleDict(
                  (default): Dropout(p=0.05, inplace=False)
                )
                (lora_A): ModuleDict(
                  (default): Linear(in_features=2048, out_features=8, bias=False)
                )
                (lora_B): ModuleDict(
                  (default): Linear(in_features=8, out_features=512, bias=False)
                )
                (lora_embedding_A): ParameterDict()
                (lora_embedding_B): ParameterDict()
                (lora_magnitude_vector): ModuleDict(
                  (default): lora.dora.DoraLinearLayer()
                )
              )
              (o_proj): lora.Linear4bit(
                (base_layer): Linear4bit(in_features=4096, out_features=2048, bias=False)
                (lora_dropout): ModuleDict(
                  (default): Dropout(p=0.05, inplace=False)
                )
                (lora_A): ModuleDict(
                  (default): Linear(in_features=4096, out_features=8, bias=False)
                )
                (lora_B): ModuleDict(
                  (default): Linear(in_features=8, out_features=2048, bias=False)
                )
                (lora_embedding_A): ParameterDict()
                (lora_embedding_B): ParameterDict()
                (lora_magnitude_vector): ModuleDict(
                  (default): lora.dora.DoraLinearLayer()
                )
              )
              (q_norm): Qwen3MoeRMSNorm((128,), eps=1e-06)
              (k_norm): Qwen3MoeRMSNorm((128,), eps=1e-06)
            )
            (mlp): Qwen3MoeSparseMoeBlock(
              (gate): lora.Linear4bit(
                (base_layer): Linear4bit(in_features=2048, out_features=128, bias=False)
                (lora_dropout): ModuleDict(
                  (default): Dropout(p=0.05, inplace=False)
                )
                (lora_A): ModuleDict(
                  (default): Linear(in_features=2048, out_features=8, bias=False)
                )
                (lora_B): ModuleDict(
                  (default): Linear(in_features=8, out_features=128, bias=False)
                )
                (lora_embedding_A): ParameterDict()
                (lora_embedding_B): ParameterDict()
                (lora_magnitude_vector): ModuleDict(
                  (default): lora.dora.DoraLinearLayer()
                )
              )
              (experts): ModuleList(
                (0-127): 128 x Qwen3MoeMLP(
                  (gate_proj): lora.Linear4bit(
                    (base_layer): Linear4bit(in_features=2048, out_features=768, bias=False)
                    (lora_dropout): ModuleDict(
                      (default): Dropout(p=0.05, inplace=False)
                    )
                    (lora_A): ModuleDict(
                      (default): Linear(in_features=2048, out_features=8, bias=False)
                    )
                    (lora_B): ModuleDict(
                      (default): Linear(in_features=8, out_features=768, bias=False)
                    )
                    (lora_embedding_A): ParameterDict()
                    (lora_embedding_B): ParameterDict()
                    (lora_magnitude_vector): ModuleDict(
                      (default): lora.dora.DoraLinearLayer()
                    )
                  )
                  (up_proj): lora.Linear4bit(
                    (base_layer): Linear4bit(in_features=2048, out_features=768, bias=False)
                    (lora_dropout): ModuleDict(
                      (default): Dropout(p=0.05, inplace=False)
                    )
                    (lora_A): ModuleDict(
                      (default): Linear(in_features=2048, out_features=8, bias=False)
                    )
                    (lora_B): ModuleDict(
                      (default): Linear(in_features=8, out_features=768, bias=False)
                    )
                    (lora_embedding_A): ParameterDict()
                    (lora_embedding_B): ParameterDict()
                    (lora_magnitude_vector): ModuleDict(
                      (default): lora.dora.DoraLinearLayer()
                    )
                  )
                  (down_proj): lora.Linear4bit(
                    (base_layer): Linear4bit(in_features=768, out_features=2048, bias=False)
                    (lora_dropout): ModuleDict(
                      (default): Dropout(p=0.05, inplace=False)
                    )
                    (lora_A): ModuleDict(
                      (default): Linear(in_features=768, out_features=8, bias=False)
                    )
                    (lora_B): ModuleDict(
                      (default): Linear(in_features=8, out_features=2048, bias=False)
                    )
                    (lora_embedding_A): ParameterDict()
                    (lora_embedding_B): ParameterDict()
                    (lora_magnitude_vector): ModuleDict(
                      (default): lora.dora.DoraLinearLayer()
                    )
                  )
                  (act_fn): SiLUActivation()
                )
              )
            )
            (input_layernorm): Qwen3MoeRMSNorm((2048,), eps=1e-06)
            (post_attention_layernorm): Qwen3MoeRMSNorm((2048,), eps=1e-06)
          )
        )
        (norm): Qwen3MoeRMSNorm((2048,), eps=1e-06)
        (rotary_emb): Qwen3MoeRotaryEmbedding()
      )
      (lm_head): Linear(in_features=2048, out_features=151936, bias=False)
    )
  )
)
[INFO:swift] model_parameter_info: PeftModelForCausalLM: 16022.4584M Params (445.1267M Trainable [2.7781%]), 0.0001M Buffers.
AutoTP:  [(<class 'transformers.models.qwen3_moe.modeling_qwen3_moe.Qwen3MoeDecoderLayer'>, ['down_proj.base_layer', 'o_proj.base_layer'])]
[INFO:swift] use_reentrant: True
[INFO:swift] The logging file will be saved in: /home/chumenta/workspace/ms-swift/output/v15-20251114-214007/logging.jsonl
The tokenizer has new PAD/BOS/EOS tokens that differ from the model config and generation config. The model config and generation config were aligned accordingly, being updated with the tokenizer's values. Updated tokens: {'bos_token_id': None}.
AutoTP:  [(<class 'transformers.models.qwen3_moe.modeling_qwen3_moe.Qwen3MoeDecoderLayer'>, ['down_proj.base_layer', 'o_proj.base_layer'])]
[INFO:swift] last_model_checkpoint: None
[INFO:swift] best_model_checkpoint: None
[INFO:swift] images_dir: /home/chumenta/workspace/ms-swift/output/v15-20251114-214007/images
[rank1]: Traceback (most recent call last):
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/cli/sft.py", line 20, in <module>
[rank1]:     sft_main()
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 352, in sft_main
[rank1]:     return SwiftSft(args).main()
[rank1]:            ^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/base.py", line 49, in main
[rank1]:     result = self.run()
[rank1]:              ^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/ray/base.py", line 170, in wrapper
[rank1]:     return func(self, *args, **kwargs)
[rank1]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 206, in run
[rank1]:     return self.train(trainer)
[rank1]:            ^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 254, in train
[rank1]:     trainer.train(trainer.args.resume_from_checkpoint)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/trainers/mixin.py", line 815, in train
[rank1]:     res = super().train(*args, **kwargs)
[rank1]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/trainer.py", line 2325, in train
[rank1]:     return inner_training_loop(
[rank1]:            ^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/trainer.py", line 2429, in _inner_training_loop
[rank1]:     self.optimizer, self.lr_scheduler = deepspeed_init(self, num_training_steps=max_steps)
[rank1]:                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/integrations/deepspeed.py", line 468, in deepspeed_init
[rank1]:     model = deepspeed.tp_model_init(
[rank1]:             ^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/__init__.py", line 405, in tp_model_init
[rank1]:     model = TpTrainingManager(model=model, tp_size=tp_size, dtype=dtype).module
[rank1]:             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 35, in __init__
[rank1]:     self._apply_policies(parser_dict)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 47, in _apply_policies
[rank1]:     self._apply_injection_policy(self.config, client_module)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 53, in _apply_injection_policy
[rank1]:     replace_transformer_layer(client_module, self.module, None, self.config, self.model_config)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 400, in replace_transformer_layer
[rank1]:     replaced_module = replace_module(model=model,
[rank1]:                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 653, in replace_module
[rank1]:     replaced_module, _ = _replace_module(model, policy, state_dict=sd)
[rank1]:                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank1]:     _, layer_id = _replace_module(child,
[rank1]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank1]:     _, layer_id = _replace_module(child,
[rank1]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank1]:     _, layer_id = _replace_module(child,
[rank1]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   [Previous line repeated 1 more time]
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 689, in _replace_module
[rank1]:     replaced_module = policies[child.__class__][0](child,
[rank1]:                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 333, in replace_fn
[rank1]:     new_module = replace_wo_policy(child, _policy, prefix=prefix, state_dict=state_dict)
[rank1]:                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 322, in replace_wo_policy
[rank1]:     return _autotp._replace_module(module)
[rank1]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 481, in _replace_module
[rank1]:     self._replace_module(child, name, class_name)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 481, in _replace_module
[rank1]:     self._replace_module(child, name, class_name)
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 477, in _replace_module
[rank1]:     setattr(r_module, name, self.linear_policies[key](child, prev_name + '.' + name,
[rank1]:                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 397, in _replace
[rank1]:     return LinearLayer(child, self.mp_group, name=name)
[rank1]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 472, in __init__
[rank1]:     self._tp_partition([self.weight, self.bias])
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/torch/utils/_contextlib.py", line 120, in decorate_context
[rank1]:     return func(*args, **kwargs)
[rank1]:            ^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 514, in _tp_partition
[rank1]:     _partition = self.move(_partition).detach()
[rank1]:                  ^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 309, in move
[rank1]:     cloned_tensor = tensor.to(device, copy=return_new_copy)
[rank1]:                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/bitsandbytes/nn/modules.py", line 334, in to
[rank1]:     device, dtype, non_blocking, convert_to_format = torch._C._nn._parse_to(*args, **kwargs)
[rank1]:                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank1]: RuntimeError: .to() does not accept copy argument
[rank0]: Traceback (most recent call last):
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/cli/sft.py", line 20, in <module>
[rank0]:     sft_main()
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 352, in sft_main
[rank0]:     return SwiftSft(args).main()
[rank0]:            ^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/base.py", line 49, in main
[rank0]:     result = self.run()
[rank0]:              ^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/ray/base.py", line 170, in wrapper
[rank0]:     return func(self, *args, **kwargs)
[rank0]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 206, in run
[rank0]:     return self.train(trainer)
[rank0]:            ^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/llm/train/sft.py", line 254, in train
[rank0]:     trainer.train(trainer.args.resume_from_checkpoint)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/swift/trainers/mixin.py", line 815, in train
[rank0]:     res = super().train(*args, **kwargs)
[rank0]:           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/trainer.py", line 2325, in train
[rank0]:     return inner_training_loop(
[rank0]:            ^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/trainer.py", line 2429, in _inner_training_loop
[rank0]:     self.optimizer, self.lr_scheduler = deepspeed_init(self, num_training_steps=max_steps)
[rank0]:                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/transformers/integrations/deepspeed.py", line 468, in deepspeed_init
[rank0]:     model = deepspeed.tp_model_init(
[rank0]:             ^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/__init__.py", line 405, in tp_model_init
[rank0]:     model = TpTrainingManager(model=model, tp_size=tp_size, dtype=dtype).module
[rank0]:             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 35, in __init__
[rank0]:     self._apply_policies(parser_dict)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 47, in _apply_policies
[rank0]:     self._apply_injection_policy(self.config, client_module)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/runtime/tensor_parallel/tp_manager.py", line 53, in _apply_injection_policy
[rank0]:     replace_transformer_layer(client_module, self.module, None, self.config, self.model_config)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 400, in replace_transformer_layer
[rank0]:     replaced_module = replace_module(model=model,
[rank0]:                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 653, in replace_module
[rank0]:     replaced_module, _ = _replace_module(model, policy, state_dict=sd)
[rank0]:                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank0]:     _, layer_id = _replace_module(child,
[rank0]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank0]:     _, layer_id = _replace_module(child,
[rank0]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 713, in _replace_module
[rank0]:     _, layer_id = _replace_module(child,
[rank0]:                   ^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   [Previous line repeated 1 more time]
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 689, in _replace_module
[rank0]:     replaced_module = policies[child.__class__][0](child,
[rank0]:                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 333, in replace_fn
[rank0]:     new_module = replace_wo_policy(child, _policy, prefix=prefix, state_dict=state_dict)
[rank0]:                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/replace_module.py", line 322, in replace_wo_policy
[rank0]:     return _autotp._replace_module(module)
[rank0]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 481, in _replace_module
[rank0]:     self._replace_module(child, name, class_name)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 481, in _replace_module
[rank0]:     self._replace_module(child, name, class_name)
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 477, in _replace_module
[rank0]:     setattr(r_module, name, self.linear_policies[key](child, prev_name + '.' + name,
[rank0]:                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/auto_tp.py", line 397, in _replace
[rank0]:     return LinearLayer(child, self.mp_group, name=name)
[rank0]:            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 472, in __init__
[rank0]:     self._tp_partition([self.weight, self.bias])
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/torch/utils/_contextlib.py", line 120, in decorate_context
[rank0]:     return func(*args, **kwargs)
[rank0]:            ^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 514, in _tp_partition
[rank0]:     _partition = self.move(_partition).detach()
[rank0]:                  ^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/deepspeed/module_inject/layers.py", line 309, in move
[rank0]:     cloned_tensor = tensor.to(device, copy=return_new_copy)
[rank0]:                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]:   File "/home/chumenta/miniconda3/envs/ms-swift/lib/python3.12/site-packages/bitsandbytes/nn/modules.py", line 334, in to
[rank0]:     device, dtype, non_blocking, convert_to_format = torch._C._nn._parse_to(*args, **kwargs)
[rank0]:                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[rank0]: RuntimeError: .to() does not accept copy argument

Your hardware and system info
我使用V100 32G SXM2 *2,cuda 12.6,torch 2.8.0,deepspeed 0.18.2

这个问题是在使用nf4 qlora + lora + dora训练的时候出现的,看起来训练刚开始的时候就报错了

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the training entry points in swift/cli/sft.py, swift/llm/train/sft.py, and swift/llm/base.py, then follow the traceback into the DeepSpeed initialization path. Reproduce the Qwen3-MoE LoRA training setup and capture the complete .to() error and dependency versions. Done means training initializes without the RuntimeError.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
distributed-systems, machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.