🧠 QueryMind: Natural Language to SQL Engine

QueryMind is a domain-specific, highly-optimized NL-to-SQL engine powered by a fine-tuned LLaMA 3.2 3B Instruct model. It has been fine-tuned using QLoRA (4-bit) via Unsloth on the Spider NL2SQL dataset to translate plain English queries into accurate, schema-valid SQL statements based on a provided database schema.


🎯 Model Details

  • Developed by: Lakshitha Nuwan
  • Model type: Causal Language Model (Fine-tuned LLM)
  • Language(s) (NLP): English
  • License: Apache 2.0
  • Finetuned from model: unsloth/Llama-3.2-3B-Instruct
  • Training Framework: Unsloth & PyTorch

πŸ”— Model Sources


πŸ’» How to Get Started with the Model

Use the code below to load the model and generate SQL queries using Unsloth (recommended for local GPUs) or standard HuggingFace Transformers.

Inference with Unsloth (Recommended)

from unsloth import FastLanguageModel
import torch

MODEL_NAME = "lakshitha722/querymind-nl2sql"

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name     = MODEL_NAME,
    max_seq_length = 1024,
    load_in_4bit   = True,
    dtype          = None,
)
FastLanguageModel.for_inference(model)

# 1. Define Prompt Template
PROMPT_TEMPLATE = """Below is an instruction that describes a task. Write a response that appropriately completes the request.

### Instruction:
Convert the following natural language question to a SQL query based on the given database schema. Return ONLY the SQL query, nothing else.

### Schema:
{schema}

### Question:
{question}

### Response:
"""

# 2. Prepare Inputs
schema = "Database: company\nTables: employees (id, name, department, salary, hire_date)"
question = "What is the average salary by department?"

prompt = PROMPT_TEMPLATE.format(schema=schema, question=question)
inputs = tokenizer([prompt], return_tensors="pt").to("cuda")

# 3. Generate
with torch.no_grad():
    outputs = model.generate(
        **inputs,
        max_new_tokens = 150,
        temperature    = 0.1,
        do_sample      = False,
        pad_token_id   = tokenizer.eos_token_id,
    )

# 4. Decode Output
input_length = inputs['input_ids'].shape[1]
sql = tokenizer.decode(outputs[0][input_length:], skip_special_tokens=True).strip()
print("Generated SQL:", sql)
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for lakshitha722/querymind-nl2sql

Adapter
(408)
this model

Dataset used to train lakshitha722/querymind-nl2sql

Space using lakshitha722/querymind-nl2sql 1