Views
No views yet
1import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer
3from peft import PeftModel
4
5# Load base model
6base_model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-0.6B")
7tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-0.6B")
8
9# Load and apply the LoRA adapter
10model = PeftModel.from_pretrained(base_model, "sch-ai/titlebreaker-lora-adapter")
11
12# Generate clean title
13def clean_title(dirty_title, max_length=200):
14 prompt = f"<title_clean> "
15 inputs = tokenizer(prompt, return_tensors="pt")
16
17 with torch.no_grad():
18 outputs = model.generate(
19 **inputs,
20 max_length=max_length,
21 do_sample=True,
22 temperature=0.7,
23 pad_token_id=tokenizer.eos_token_id
24 )
25
26 generated = tokenizer.decode(outputs[0], skip_special_tokens=True)
27 # Extract the clean title from between the tags
28 if "</title_clean>" in generated:
29 clean_title = generated.split("</title_clean>")[0].split("<title_clean>")[-1].strip()
30 return clean_title
31 return generated
32
33# Example usage
34dirty_title = "Your dirty title here"
35clean_result = clean_title(dirty_title)
36print(f"Clean title: {clean_result}")