Views
No views yet
SmolLM2-135M-Instruct that generates Cypher queries
from natural language questions and a graph schema.1from peft import PeftModel
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4base_model = AutoModelForCausalLM.from_pretrained(
5 "HuggingFaceTB/SmolLM2-135M-Instruct"
6)
7model = PeftModel.from_pretrained(base_model, "kv-rane/text2cypher-smollm2")
8tokenizer = AutoTokenizer.from_pretrained("kv-rane/text2cypher-smollm2")
9tokenizer.pad_token = tokenizer.eos_token
10
11schema = "Movie {title, year}, Person {name}, (Person)-[:DIRECTED]->(Movie)"
12question = "Which movies did Christopher Nolan direct before 2010?"
13
14prompt = f"""### Schema:
15{schema}
16
17### Question:
18{question}
19
20### Cypher:
21"""
22
23inputs = tokenizer(prompt, return_tensors="pt")
24outputs = model.generate(**inputs, max_new_tokens=128, do_sample=False)
25generated = outputs[0][inputs["input_ids"].shape[1]:]
26print(tokenizer.decode(generated, skip_special_tokens=True))