Instructions to use mervp/SQLGenie with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use mervp/SQLGenie with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/llama-3.2-3b-unsloth-bnb-4bit") model = PeftModel.from_pretrained(base_model, "mervp/SQLGenie") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Unsloth Studio
How to use mervp/SQLGenie with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mervp/SQLGenie to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mervp/SQLGenie to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for mervp/SQLGenie to start chatting
Load model with FastModel
pip install unsloth from unsloth import FastModel model, tokenizer = FastModel.from_pretrained( model_name="mervp/SQLGenie", max_seq_length=2048, )
| base_model: llama-3B | |
| tags: | |
| - text-generation | |
| - sql | |
| - peft | |
| - lora | |
| - rslora | |
| - unsloth | |
| - llama3 | |
| - instruction-tuned | |
| license: mit | |
| # SQLGenie - LoRA Fine-Tuned LLaMA 3B for Text-to-SQL Generation | |
| **SQLGenie** is a lightweight LoRA adapter fine-tuned on top of Unsloth’s 4-bit LLaMA 3 (3B) model. It is designed to convert natural language instructions into valid SQL queries with minimal compute overhead, making it ideal for integrating into data-driven applications,or chat interfaces. | |
| it has been trained over 100K types of text based on various different domains such as Education, Technical, Health and more | |
| ## Model Highlights | |
| - **Base model**: `Llama3 3B` | |
| - **Tokenizer**: Compatible with `Llama3 3B` | |
| - **Fine tuned for**: Text to SQL Converter | |
| - **Accuracy**: > 85% | |
| - **Language**: English Natural Language Sentences fientuned | |
| - **Format**: `safetensors` | |
| ## Model Dependencies | |
| - **Python Version**: `3.10` | |
| - **libraries**: `unsloth` | |
| - pip install unsloth | |
| ### Model Description | |
| - **Developed by:** Merwin | |
| - **Model type:** PEFT adapter (LoRA) for Causal Language Modeling | |
| - **Language(s):** English | |
| - **Fine-tuned from model:** [unsloth/llama-3.2-3b-unsloth-bnb-4bit](https://huggingface.co/unsloth/llama-3.2-3b-unsloth-bnb-4bit) | |
| ### Model Sources | |
| - **Repository:** https://huggingface.co/mervp/SQLGenie | |
| ## Uses | |
| ### Direct Use | |
| This model can be directly used to generate SQL queries from natural language prompts. Example use cases include: | |
| - Building AI assistants for databases | |
| - Enhancing Query tools with NL-to-SQL capabilities | |
| - Automating analytics queries in various domains | |
| ## Bias, Risks, and Limitations | |
| While the model has been fine-tuned for SQL generation, it may: | |
| - Produce invalid SQL for a very few edge cases | |
| - Infer incorrect table or column names not present in prompt | |
| - Assume a generic SQL dialect (closer to MySQL/PostgreSQL Databases) | |
| ### Recommendations | |
| - Always validate and test generated queries before execution in a production database. | |
| Thanks for visiting and downloading this model! | |
| If this model helped you, please consider leaving a 👍 like. Your support helps this model reach more developers and encourages further improvements if any. | |
| --- | |
| ## How to Get Started with the Model | |
| ```python | |
| from unsloth import FastLanguageModel | |
| model, tokenizer = FastLanguageModel.from_pretrained( | |
| model_name="mervp/SQLGenie", | |
| max_seq_length=2048, | |
| dtype=None, | |
| ) | |
| prompt = """ You are an text to SQL query translator. | |
| Users will ask you questions in English | |
| and you will generate a SQL query based on their question | |
| SQL has to be simple, The schema context has been provided to you. | |
| ### User Question: | |
| {} | |
| ### Sql Context: | |
| {} | |
| ### Sql Query: | |
| {} | |
| """ | |
| question = "List the names of customers who have an account balance greater than 6000." | |
| schema = """ | |
| CREATE TABLE socially_responsible_lending ( | |
| customer_id INT, | |
| name VARCHAR(50), | |
| account_balance DECIMAL(10, 2) | |
| ); | |
| INSERT INTO socially_responsible_lending VALUES | |
| (1, 'james Chad', 5000), | |
| (2, 'Jane Rajesh', 7000), | |
| (3, 'Alia Kapoor', 6000), | |
| (4, 'Fatima Patil', 8000); | |
| """ | |
| inputs = tokenizer( | |
| [prompt.format(question, schema, "")], | |
| return_tensors="pt", | |
| padding=True, | |
| truncation=True | |
| ).to("cuda") | |
| output = model.generate( | |
| **inputs, | |
| max_new_tokens=256, | |
| temperature=0.2, | |
| top_p=0.9, | |
| top_k=50, | |
| do_sample=True | |
| ) | |
| decoded_output = tokenizer.decode(output[0], skip_special_tokens=True) | |
| if "### Sql Query:" in decoded_output: | |
| sql_query = decoded_output.split("### Sql Query:")[-1].strip() | |
| else: | |
| sql_query = decoded_output.strip() | |
| print(sql_query) | |