import torchfrom transformers import AutoModelForImageTextToText, AutoTokenizerfrom peft import PeftModelfrom peft.helpers import rescale_adapter_scale base_id = "Qwen/Qwen3.5-4B"revision = "851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a"tokenizer = AutoTokenizer.from_pretrained(base_id, revision=revision)base = AutoModelForImageTextToText.from_pretrained( base_id, revision=revision, dtype=torch.bfloat16, device_map={"": 0}, attn_implementation="sdpa",)# 本地下载此仓库后,将这里替换为仓库所在目录。model = PeftModel.from_pretrained(base, "./sbxB70sR71").eval()messages = [ {"role": "system", "content": "准确、直接地回应当前话题,明显采用 xB70sR71 简短、随意的中文表达风格;" "不要照抄帖子或声称自己是账号本人。"}, {"role": "user", "content": "电脑太慢了,预算不多,你怎么看?"},]prompt = tokenizer.apply_chat_template( messages, tokenize=False, add_generation_prompt=True, enable_thinking=False)inputs = tokenizer(prompt, return_tensors="pt", add_special_tokens=False).to("cuda")# 1.0 是完整训练强度;0.0 关闭 LoRA;中间值会减弱适配器影响。with rescale_adapter_scale(model, 1.0), torch.inference_mode(): output = model.generate( **inputs, max_new_tokens=120, do_sample=True, temperature=0.7, top_p=0.9, eos_token_id=tokenizer.convert_tokens_to_ids("<|im_end|>"), )print(tokenizer.decode(output[0, inputs["input_ids"].shape[1]:], skip_special_tokens=True))