Instructions to use Chenyue10/dl4nlp-text2sql-qlora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use Chenyue10/dl4nlp-text2sql-qlora with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
Adaptadores QLoRA para Text-to-SQL en Spider
Resultados guardados de una práctica de la asignatura Deep Learning for NLP (curso 2026-2027). Ajustamos con QLoRA dos modelos pequeños, Qwen2.5-Coder-1.5B-Instruct y Gemma 4 E2B, para traducir preguntas en inglés a consultas SQL sobre el dataset Spider, con el mismo procedimiento para los dos. El notebook de la práctica descarga este repositorio para poder ejecutarse en Google Colab sin entrenar de nuevo.
Contenido
| Ruta | Contenido |
|---|---|
qwen/train/adapter/, gemma/train/adapter/ |
Adaptadores LoRA tras 2 épocas (r = 16, α = 32, dropout 0,05, en las proyecciones de atención y del MLP) |
qwen/train/checkpoint-930/, gemma/train/checkpoint-930/ |
Adaptadores tras la primera época (solo hacen falta para repetir la selección de épocas) |
*/train/log_history.json |
Historial de pérdidas del entrenamiento |
*/validation_{base,epoch1,epoch2}.jsonl |
Predicciones en la validación interna (1.221 preguntas, separadas de train por base de datos) |
*/dev_{base,epoch2}.jsonl |
Predicciones en el dev oficial de Spider (1.034 preguntas) |
*/test_{base,epoch2}.jsonl |
Predicciones en el test oficial de Spider (2.147 preguntas) |
Cada línea de los .jsonl tiene la pregunta, la consulta de referencia, la consulta generada y si al ejecutarla en SQLite devuelve el mismo resultado que la referencia (execution_match).
Resultados (execution accuracy)
| Modelo | dev base | dev ajustado | test base | test ajustado |
|---|---|---|---|---|
| Qwen2.5-Coder-1.5B | 55,6 % | 67,8 % | 54,4 % | 67,4 % |
| Gemma 4 E2B | 62,7 % | 69,6 % | 64,0 % | 71,6 % |
Sobre 1.024 preguntas de dev y 2.139 de test: se quitan las 10 y 8 preguntas cuya consulta de referencia supera los límites del evaluador (tiempo, filas o instrucciones). La EX es la de una sola base de datos por pregunta, no la test-suite accuracy oficial.
Uso
import torch
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
base_id = "Qwen/Qwen2.5-Coder-1.5B-Instruct"
quantization = BitsAndBytesConfig(load_in_4bit=True, bnb_4bit_quant_type="nf4",
bnb_4bit_use_double_quant=True, bnb_4bit_compute_dtype=torch.bfloat16)
tokenizer = AutoTokenizer.from_pretrained(base_id)
model = AutoModelForCausalLM.from_pretrained(base_id, quantization_config=quantization, device_map={"": 0})
model = PeftModel.from_pretrained(model, "Chenyue10/dl4nlp-text2sql-qlora", subfolder="qwen/train/adapter")
El prompt usado en el entrenamiento (mensaje de sistema y esquema como sentencias CREATE TABLE) está en el notebook de la práctica.
Licencias
- Adaptadores: Apache 2.0, igual que los modelos base.
- Predicciones (
*.jsonl): contienen preguntas y consultas de Spider (Yu et al., 2018), con licencia CC BY-SA 4.0, y se distribuyen con esa misma licencia.
- Downloads last month
- -
Model tree for Chenyue10/dl4nlp-text2sql-qlora
Base model
Qwen/Qwen2.5-1.5B