Update README.md
Browse files
README.md
CHANGED
@@ -1,59 +1,55 @@
|
|
1 |
---
|
2 |
base_model: unsloth/Qwen2.5-Coder-3B-Instruct-bnb-4bit
|
3 |
library_name: transformers
|
4 |
-
model_name:
|
5 |
tags:
|
6 |
- generated_from_trainer
|
7 |
- unsloth
|
8 |
- trl
|
9 |
- sft
|
10 |
-
licence:
|
|
|
11 |
---
|
12 |
|
13 |
-
#
|
14 |
|
15 |
-
This model
|
16 |
-
|
|
|
17 |
|
18 |
-
|
19 |
|
20 |
-
|
21 |
-
|
22 |
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
```
|
28 |
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
This model was trained with SFT.
|
35 |
-
|
36 |
-
### Framework versions
|
37 |
-
|
38 |
-
- TRL: 0.13.0
|
39 |
-
- Transformers: 4.47.1
|
40 |
-
- Pytorch: 2.6.0
|
41 |
-
- Datasets: 3.2.0
|
42 |
-
- Tokenizers: 0.21.0
|
43 |
-
|
44 |
-
## Citations
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
Cite TRL as:
|
49 |
-
|
50 |
-
```bibtex
|
51 |
-
@misc{vonwerra2022trl,
|
52 |
-
title = {{TRL: Transformer Reinforcement Learning}},
|
53 |
-
author = {Leandro von Werra and Younes Belkada and Lewis Tunstall and Edward Beeching and Tristan Thrush and Nathan Lambert and Shengyi Huang and Kashif Rasul and Quentin Gallouédec},
|
54 |
-
year = 2020,
|
55 |
-
journal = {GitHub repository},
|
56 |
-
publisher = {GitHub},
|
57 |
-
howpublished = {\url{https://github.com/huggingface/trl}}
|
58 |
-
}
|
59 |
```
|
|
|
1 |
---
|
2 |
base_model: unsloth/Qwen2.5-Coder-3B-Instruct-bnb-4bit
|
3 |
library_name: transformers
|
4 |
+
model_name: onekq-ai/OneSQL-v0.1-Qwen-3B
|
5 |
tags:
|
6 |
- generated_from_trainer
|
7 |
- unsloth
|
8 |
- trl
|
9 |
- sft
|
10 |
+
licence: apache-2.0
|
11 |
+
pipeline_tag: text-generation
|
12 |
---
|
13 |
|
14 |
+
# Introduction
|
15 |
|
16 |
+
This model specializes on the Text-to-SQL task. It is finetuned from the quantized version of [Qwen2.5-Coder-3B-Instruct](https://huggingface.co/Qwen/Qwen2.5-Coder-3B-Instruct).
|
17 |
+
Its sibling [32B model](https://huggingface.co/onekq-ai/OneSQL-v0.1-Qwen-32B) has an EX score of **63.33** and R-VES score of **60.02** on the [BIRD leaderboard](https://bird-bench.github.io/).
|
18 |
+
The self-evaluation EX score of this model is **43.35**.
|
19 |
|
20 |
+
# Quick start
|
21 |
|
22 |
+
To use this model, craft your prompt to start with your database schema in the form of **CREATE TABLE**, followed by your natural language query preceded by **--**.
|
23 |
+
Make sure your prompt ends with **SELECT** in order for the model to finish the query for you.
|
24 |
|
25 |
+
```python
|
26 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
|
27 |
+
from peft import PeftModel
|
28 |
+
|
29 |
+
model_name = "unsloth/Qwen2.5-Coder-3B-Instruct-bnb-4bit"
|
30 |
+
adapter_name = "onekq-ai/OneSQL-v0.1-Qwen-3B"
|
31 |
+
tokenizer = AutoTokenizer.from_pretrained(model_name)
|
32 |
+
tokenizer.padding_side = "left"
|
33 |
+
model = PeftModel.from_pretrained(AutoModelForCausalLM.from_pretrained(model_name, device_map="auto"), adapter_name).to("cuda")
|
34 |
+
|
35 |
+
generator = pipeline("text-generation", model=model, tokenizer=tokenizer, return_full_text=False)
|
36 |
+
|
37 |
+
prompt = """
|
38 |
+
CREATE TABLE students (
|
39 |
+
id INTEGER PRIMARY KEY,
|
40 |
+
name TEXT,
|
41 |
+
age INTEGER,
|
42 |
+
grade TEXT
|
43 |
+
);
|
44 |
+
|
45 |
+
-- Find the three youngest students
|
46 |
+
SELECT """
|
47 |
+
|
48 |
+
result = generator(f"<|im_start|>system\nYou are a SQL expert. Return code only.<|im_end|>\n<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant\n")[0]
|
49 |
+
print(result["generated_text"])
|
50 |
```
|
51 |
|
52 |
+
The model response is the finished SQL query without **SELECT**
|
53 |
+
```sql
|
54 |
+
* FROM students ORDER BY age ASC LIMIT 3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
```
|