Conozca a Vanna: un marco Python RAG (generación de recuperación aumentada) de código abierto para la generación de SQL

En el manejo de bases de datos, un desafío es elaborar consultas SQL complejas. Esto puede resultar difícil, especialmente para aquellos que no son expertos en SQL. Es evidente la necesidad de una solución fácil de usar que simplifique el proceso de generación de consultas SQL.

Si bien existen métodos para generar consultas SQL, a menudo requieren un conocimiento profundo de la estructura de la base de datos subyacente y pueden llevar mucho tiempo. Algunas herramientas pueden ayudar con la creación de consultas, pero pueden necesitar una mayor adaptabilidad a varias bases de datos o ayudar a mantener la privacidad y la seguridad.

Encontrarse vanna: un práctico marco Python de código abierto que tiene como objetivo simplificar la generación de SQL, ofreciendo un enfoque de dos pasos: primero, entrene un modelo de generación aumentada de recuperación (RAG) en sus datos y luego haga preguntas para obtener consultas SQL adaptadas a su base de datos. .

A diferencia de algunas alternativas, el punto fuerte de Vanna radica en su simplicidad y versatilidad. Los usuarios pueden entrenar el modelo utilizando declaraciones del lenguaje de definición de datos (DDL), documentación o consultas SQL existentes. Esto permite un proceso de formación personalizado y fácil de usar.

Vanna procesa sus consultas y devuelve consultas SQL que se pueden ejecutar directamente en su base de datos. Elimina la necesidad de realizar consultas manuales complejas y proporciona una forma más accesible para que los usuarios interactúen con las bases de datos.

Vanna cuenta con una alta precisión, particularmente en conjuntos de datos complejos. Su adaptabilidad a diferentes bases de datos y portabilidad entre modelos de lenguaje (LLM) la convierten en una solución rentable y preparada para el futuro. El marco funciona de forma segura, lo que garantiza que el contenido de su base de datos permanezca dentro de su entorno local sin comprometer la privacidad.

Además, Vanna admite un mecanismo de autoaprendizaje. En Jupyter Notebooks, se puede configurar para que se “entrene automáticamente” en función de las consultas ejecutadas correctamente. Otras interfaces pueden solicitar comentarios a los usuarios, almacenando pares correctos de preguntas y SQL para una mejora continua y una mayor precisión.

Ya sea que esté trabajando en un Jupyter Notebook o ampliando la funcionalidad a los usuarios finales a través de plataformas como Slackbot, aplicaciones web o aplicaciones Streamlit, Vanna brinda una experiencia de front-end flexible. Su facilidad de uso, privacidad y medidas de seguridad la convierten en una solución destacada para quienes buscan una forma accesible y eficiente de generar consultas SQL.

En conclusión, Vanna aborda el problema común de la generación de consultas SQL ofreciendo una solución sencilla y adaptable. Sus métricas subrayan su precisión y eficiencia, lo que la convierte en una herramienta valiosa para trabajar con bases de datos, independientemente de su experiencia en SQL. Con Vanna, el proceso de consulta de bases de datos se vuelve más accesible y fácil de usar.


Niharika es pasante de consultoría técnica en Marktechpost. Es estudiante de tercer año y actualmente cursa su licenciatura en tecnología en el Instituto Indio de Tecnología (IIT), Kharagpur. Es una persona muy entusiasta con un gran interés en el aprendizaje automático, la ciencia de datos y la inteligencia artificial y una ávida lectora de los últimos avances en estos campos.