LangToSQL / README.es.md
Komma-LuisMiSanVe's picture
Update files
c4225a4
---
language:
- "en"
thumbnail: "https://raw.githubusercontent.com/LuisMiSanVe/LuisMiSanVe/refs/heads/main/Resources/LangToSQL/LangToSQLLLM_banner.png"
tags:
- sql
- text-to-sql
- llm
- fine-tuning
- gguf
license: "apache-2.0"
datasets:
- xlangai/spider
base_model: "Qwen/Qwen2.5-Coder-1.5B-Instruct"
---
> [Ver en ingles/See in english](https://huggingface.co/Komma-LuisMiSanVe/LangToSQL/blob/main/README.md)
<img src="https://raw.githubusercontent.com/LuisMiSanVe/LuisMiSanVe/refs/heads/main/Resources/LangToSQL/LangToSQLLLM_banner.png" style="width: 100%; height: auto;" alt="LangToSQL LLM Banner">
# 🤖 Modelo de IA para sentencias PostgreSQL
[![image](https://img.shields.io/badge/postgres-%23316192.svg?style=for-the-badge&logo=postgresql&logoColor=white)](https://www.postgresql.org/)
[![image](https://img.shields.io/badge/json-5E5C5C?style=for-the-badge&logo=json&logoColor=white)](https://www.newtonsoft.com/json)
[![image](https://img.shields.io/badge/Visual_Studio_Code-0078D4?style=for-the-badge&logo=visual%20studio%20code&logoColor=white)](https://code.visualstudio.com/)
[![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge&logo=python&logoColor=ffdd54)](https://www.python.org/)
[![PyTorch](https://img.shields.io/badge/PyTorch-%23EE4C2C.svg?style=for-the-badge&logo=PyTorch&logoColor=white)](https://pytorch.org/)
[![NumPy](https://img.shields.io/badge/numpy-%23013243.svg?style=for-the-badge&logo=numpy&logoColor=white)](https://numpy.org/)
[![HuggingFace](https://img.shields.io/badge/Hugging%20Face-%23000040.svg?style=for-the-badge&logo=Hugging%20Face&logoColor=ffdf00)](https://huggingface.co/Komma-LuisMiSanVe)
>[!NOTE]
> Dale un vistazo a las otras versiones del programa:
>- [WinForms](https://github.com/LuisMiSanVe/LangToSQL/tree/main)
>- [REST API](https://github.com/LuisMiSanVe/LangToSQL_API/tree/main)
>- [ChatBot](https://github.com/LuisMiSanVe/LangToSQL_ChatBot/tree/main)
>- [NuGet](https://github.com/LuisMiSanVe/LangToSQL_NuGet/tree/main)
>- [Android](https://github.com/LuisMiSanVe/GeminiLiteSQL/tree/main)
El modelo de IA ha sido entrenado para convertir lenguaje natural a sentencias de PostgreSQL.
## 📝 Explicación de Tecnología
El modelo usa [Gwen Coder](https://huggingface.co/Qwen/Qwen2.5-Coder-1.5B-Instruct) de base y refinado con los datasets de [Spider](https://yale-lily.github.io/spider).
El dataset en archivo `JSON` contiene `train_spider.json` de **Spider**, ya que es el dataset principal.
El modelo se ha exportado a `GGUF` con [llama.cpp](https://github.com/ggml-org/llama.cpp) para que puedas usarlo en programas como [LM Studio](https://lmstudio.ai/).
## 🛠️ Instalación
Para ejecutar el script de entrenamiento por tu cuenta, primero necesitas instalar [Python](https://www.python.org/) y ejecuta este comando:
```
pip install transformers datasets peft accelerate bitsandbytes trl==1.0.0
```
Dependiendo en la versión, es posible que necesites usar este en su lugar:
```
py -m pip install transformers datasets peft accelerate bitsandbytes trl==1.0.0
```
>[!IMPORTANT]
>Asegurate que la libreria `TRL` está en la versión `1.0.0`, ya que es la única version compatible con el script de entrenamiento.
## 📂 Archivos
Este repositorio incluye los archivos del modelo LLM entrenado, su script de entrenamiento, el dataset para entrenar y un script para probar el modelo `.safetensors`.
Puedes descargar el `GGUF` final desde los [Lanzamientos](https://github.com/LuisMiSanVe/LangToSQL_LLM/releases).
## 🚀 Lanzamientos
Una versión será lanzada solo cuando se cumplan los siguientes puntos:\
Nuevas funciones importantes y arreglos de fallos criticos causarán la salida inmediata de una nueva versión, mientras que otros cambios/arreglos menores deberán esperar una semana desde que se incluyeron en el repositorio antes de ser incluidos en la nueva versión, para que otros posibles cambios puedan ser añadidos tambien.
>[!NOTE]
>Estos posibles nuevos cambios no alargarán la espera de la salida de la nueva versión a más de una semana.
El número de la versión seguirá este formato: \
\[Añadido Importante\].\[Añadido Menor\].\[Arreglos de Errores\]
## 💻 Tecnologías usadas
- Lenguaje de programación: [Python](https://www.python.org/)
- Librerías:
- [transformers](https://pypi.org/project/transformers/)
- [datasets](https://pypi.org/project/datasets/)
- [peft](https://pypi.org/project/peft/)
- [acceletare](https://pypi.org/project/accelerate/)
- [bitsandbytes](https://pypi.org/project/bitsandbytes/)
- [trl](https://pypi.org/project/trl/)
- Otros:
- [llama.cpp](https://lmstudio.ai/)
- [Gwen Coder](https://huggingface.co/Qwen/Qwen2.5-Coder-1.5B-Instruct)
- [Spider](https://yale-lily.github.io/spider)
- IDE Recomendado: [VS Code](https://code.visualstudio.com/)