You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

微调Mistral 7B模型时遇ValueError参数冲突错误求助

解决Mistral 7B微调的参数冲突问题

这个错误的核心是重复配置了4bit加载参数:你既在BitsAndBytesConfig实例里设置了load_in_4bit=True,又在AutoModelForCausalLM.from_pretrained()中单独传入了load_in_4bit=True——这两个参数是互斥的,只能二选一。

两种可行的修改方案

方案一:保留quantization_config(推荐)

直接移除from_pretrained中的load_in_4bit=True参数,用BitsAndBytesConfig统一管理量化配置,修改后的代码如下:

# Load base model(Mistral 7B)
bnb_config = BitsAndBytesConfig(  
    load_in_4bit= True,
    bnb_4bit_quant_type= "nf4",
    bnb_4bit_compute_dtype= torch.bfloat16,
    bnb_4bit_use_double_quant= False,
)
model = AutoModelForCausalLM.from_pretrained(
        base_model,
        quantization_config=bnb_config,
        torch_dtype=torch.bfloat16,
        device_map="auto",
        trust_remote_code=True,
)
model.config.use_cache = False # silence the warnings. Please re-enable for inference!
model.config.pretraining_tp = 1
model.gradient_checkpointing_enable()

# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(base_model, trust_remote_code=True)
tokenizer.padding_side = 'right'
tokenizer.pad_token = tokenizer.eos_token
tokenizer.add_eos_token = True
tokenizer.add_bos_token, tokenizer.add_eos_token

方案二:直接在from_pretrained中传量化参数

如果你不想用BitsAndBytesConfig,可以删掉相关配置代码,直接把量化参数传入from_pretrained:

# Load base model(Mistral 7B)
model = AutoModelForCausalLM.from_pretrained(
        base_model,
        load_in_4bit=True,
        bnb_4bit_quant_type= "nf4",
        bnb_4bit_compute_dtype= torch.bfloat16,
        bnb_4bit_use_double_quant= False,
        torch_dtype=torch.bfloat16,
        device_map="auto",
        trust_remote_code=True,
)
model.config.use_cache = False # silence the warnings. Please re-enable for inference!
model.config.pretraining_tp = 1
model.gradient_checkpointing_enable()

# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(base_model, trust_remote_code=True)
tokenizer.padding_side = 'right'
tokenizer.pad_token = tokenizer.eos_token
tokenizer.add_eos_token = True
tokenizer.add_bos_token, tokenizer.add_eos_token

注意:方案一的配置方式更清晰,后续修改量化参数时只需调整bnb_config即可,更便于维护。

内容的提问来源于stack exchange,提问作者Jyoti yadav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 17:20:55