|
--- |
|
license: apache-2.0 |
|
datasets: |
|
- b-mc2/sql-create-context |
|
- Clinton/Text-to-sql-v1 |
|
language: |
|
- en |
|
base_model: |
|
- cssupport/t5-small-awesome-text-to-sql |
|
- google-t5/t5-small |
|
pipeline_tag: text2text-generation |
|
tags: |
|
- text2sql |
|
- sql |
|
metrics: |
|
- accuracy |
|
- character |
|
library_name: transformers |
|
--- |
|
|
|
# Industry standard text to sql generation with high accuracy. |
|
|
|
Sample code to begin with: |
|
|
|
import torch |
|
from transformers import T5Tokenizer, T5ForConditionalGeneration |
|
tokenizer = T5Tokenizer.from_pretrained('anilajax/text2sql_industry_standard') |
|
|
|
device = torch.device("cuda" if torch.cuda.is_available() else "cpu") |
|
model = T5ForConditionalGeneration.from_pretrained('anilajax/text2sql_industry_standard') |
|
model = model.to(device) |
|
model.eval() |
|
|
|
def generate_sql(input_prompt): |
|
# Tokenize the input prompt |
|
inputs = tokenizer(input_prompt, padding=True, truncation=True, return_tensors="pt").to(device) |
|
|
|
# Forward pass |
|
with torch.no_grad(): |
|
outputs = model.generate(**inputs, max_length=512) |
|
|
|
# Decode the output IDs to a string (SQL query in this case) |
|
generated_sql = tokenizer.decode(outputs[0], skip_special_tokens=True) |
|
|
|
return generated_sql |
|
|
|
|
|
input_prompt = "provide count of students where class = 10" |
|
|
|
generated_sql = generate_sql(input_prompt) |
|
|
|
print(f"The generated SQL query is: {generated_sql}") |
|
#expected output - SELECT COUNT(*) FROM students WHERE class = 10 |
|
|
|
|