--- base_model: unsloth/gemma-2b-it-bnb-4bit tags: - text-generation-inference - text-to-sql - sql - gemma - unsloth - lora - peft license: gemma language: - en --- # Gemma SQL Copilot (LoRA) This is a fine-tuned version of Google's **Gemma 2B-IT** model designed specifically for **Text-to-SQL** generation. It translates natural English instructions into properly formatted SQL queries. The model was fine-tuned using [Unsloth](https://github.com/unslothai/unsloth) for efficient 4-bit quantization and LoRA (Low-Rank Adaptation), meaning it is highly memory efficient and can be run locally on consumer GPUs (like an RTX 3050 6GB) with minimal VRAM. ## 🛠️ Intended Use - **Task:** Natural Language to SQL (Text-to-SQL) - **Use Case:** Helping data analysts, developers, and business users query databases simply by asking questions in plain English. - **Environment:** Designed for fast, low-memory inference using `unsloth`. ## ✍️ Prompt Format This model was trained on a specific prompt structure. To get the best results, you **must** wrap your question in the following format: ```text ### Instruction: Write a SQL query to find all users who signed up in 2023. ### Response: 💻 Example Usage # pip install unsloth from unsloth import FastLanguageModel model, tokenizer = FastLanguageModel.from_pretrained( model_name = "Noor201/gemma-sql-copilot-lora", max_seq_length = 2048, dtype = None, load_in_4bit = True, ) FastLanguageModel.for_inference(model) prompt = """### Instruction: Write a SQL query to find the names of all employees in the 'Sales' department who earn more than 50000. ### Response: """ inputs = tokenizer([prompt], return_tensors="pt").to("cuda") outputs = model.generate(**inputs, max_new_tokens=128) print(tokenizer.batch_decode(outputs, skip_special_tokens=True)[0]) ⚙️ Training Details Base Model: google/gemma-2b-it Training Framework: Unsloth (PEFT/LoRA) Precision: 4-bit (QLoRA) Hardware: Trained on a single NVIDIA T4 GPU via Google Colab. ## 📊 Training Results During the fine-tuning process, the model achieved the following performance metrics on the dataset: - **Final Training Loss:** 0.0006 - **Final Validation Loss:** 9.3803 - **Epochs:** 2