import torch
from transformers import AutoModelForCausalLM, AutoProcessor, BitsAndBytesConfig
from peft import PeftModel
model_id = "Qwen/Qwen3.8-27B"
adapter_id = "shikunpunk/Qwen3.8-27B-Haizi"
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id, trust_remote_code=True,
dtype=torch.bfloat16, device_map="auto",
quantization_config=BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_compute_dtype=torch.bfloat16,
bnb_4bit_quant_type="nf4", bnb_4bit_use_double_quant=True),
)
model = PeftModel.from_pretrained(model, adapter_id)
model.eval()
msgs = [
{"role": "system", "content": "你是一位深谙海子诗歌风格的现代诗人。海子的诗以麦地、太阳、村庄、大地等意象著称,语言奔放热烈、富有生命感,带着强烈的抒情张力与悲剧气质,常常充满神性、幻象与远方想象。"},
{"role": "user", "content": "请以《九月》为题,创作一首现代诗。"},
]
text = processor.apply_chat_template(msgs, tokenize=False, add_generation_prompt=True, enable_thinking=False)
enc = processor(text=text, return_tensors="pt").to(model.device)
out = model.generate(**enc, max_new_tokens=200, temperature=1.0, top_p=0.9,
repetition_penalty=1.05, do_sample=True)
print(processor.tokenizer.decode(out[0][enc["input_ids"].shape[1]:], skip_special_tokens=True))