import torchfrom peft import PeftModelfrom transformers import ( AutoModelForCausalLM, AutoTokenizer,) BASE_MODEL_ID = "Qwen/Qwen3.5-2B-Base"ADAPTER_ID = "artyomboyko/qwen3.5-2b-sst2-prompt-tuning" tokenizer = ( AutoTokenizer.from_pretrained( BASE_MODEL_ID )) if tokenizer.pad_token_id is None: tokenizer.pad_token = ( tokenizer.eos_token ) base_model = ( AutoModelForCausalLM .from_pretrained( BASE_MODEL_ID, dtype="auto", )) model = PeftModel.from_pretrained( base_model, ADAPTER_ID,) device = torch.device( "cuda" if torch.cuda.is_available() else "cpu") model = model.to(device)model.eval() review = ( "a wonderfully acted " "and moving story") prompt = ( "Classify the sentiment of this movie review as positive or negative.\n" f"Review: {review}\n" "Sentiment:") inputs = tokenizer( prompt, return_tensors="pt",).to(device) with torch.inference_mode(): outputs = model.generate( **inputs, max_new_tokens=4, do_sample=False, pad_token_id=( tokenizer.eos_token_id ), ) generated = outputs[ :, inputs["input_ids"].shape[1]:,] prediction = tokenizer.decode( generated[0], skip_special_tokens=True,).strip() print(prediction)