Views
No views yet
| Metric | Score |
|---|---|
| Exact Match | 0.00% |
| Normalized Match | 0.50% |
| Component Accuracy | 92.60% |
| Average Similarity | 25.47% |
| Metric | Base | Fine-tuned | Improvement |
|---|---|---|---|
| Loss | 2.1301 | 0.4098 | 80.76% ⬆️ |
| Perplexity | 8.4155 | 1.5064 | 82.10% ⬆️ |
1from transformers import AutoModelForCausalLM, AutoTokenizer
2import torch
3
4model = AutoModelForCausalLM.from_pretrained(
5 "vindows/qwen2.5-7b-text-to-sql-merged",
6 device_map="auto",
7 torch_dtype=torch.bfloat16,
8 trust_remote_code=True
9)
10
11tokenizer = AutoTokenizer.from_pretrained(
12 "vindows/qwen2.5-7b-text-to-sql-merged",
13 trust_remote_code=True
14)
15
16# Generate SQL from natural language
17prompt = """Convert the following natural language question to SQL:
18
19Database: concert_singer
20Question: How many singers do we have?
21
22SQL:"""
23
24inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
25outputs = model.generate(**inputs, max_new_tokens=128, temperature=0.1, do_sample=False)
26result = tokenizer.decode(outputs[0], skip_special_tokens=True)
27
28# Extract SQL (remove prompt and extra text)
29sql = result.split("SQL:")[-1].strip().split('\n\n')[0]
30print(sql)