from transformers import AutoModelForCausalLM import torch from modelscope import ( snapshot_download, AutoModelForCausalLM, AutoTokenizer, GenerationConfig ) import torch model_id = 'qwen/Qwen-VL-Chat' revision = 'v1.0.3' model_dir = snapshot_download(model_id, revision=revision) model = AutoModelForCausalLM.from_pretrained(model_dir, device_map="auto", trust_remote_code=True, fp16=True).eval() state_dict = model.state_dict() save_dict = {} for k,v in state_dict.items(): if 'visual' in k: if 'transformer.visual.proj' not in k: # we don't need the proj layer save_dict[k.replace('transformer.visual.', '')] = v torch.save(save_dict, './qwen_clip/pytorch_model.bin')