Vanna AI: framework RAG para la generación de SQL y soporte de sistemas de gestión de bases de datos relacionales

Vanna AI: framework RAG para la generación de SQL y soporte de sistemas de gestión de bases de datos relacionales 110

Un framework Python de código abierto basado en la tecnología RAG, que convierte preguntas en lenguaje natural a consultas SQL y es compatible con múltiples bases de datos y modelos de lenguaje.

#Ai工具箱 #Ai编程建站

Vanna AI: framework RAG para la generación de SQL y soporte de sistemas de gestión de bases de datos relacionalesIntroducción

¿Qué es Vanna ai?

vanna es un framework RAG especializado en la generación de SQL y compatible con múltiples sistemas de gestión de bases de datos relacionales (RDBMS), como PostgreSQL, MySQL y Oracle, entre otros. vanna puede obtener automáticamente la estructura de las tablas de la base de datos y dispone de una función de autoaprendizaje capaz de almacenar relaciones correctas de consultas SQL.

Características de Vanna AI

  • Conversión de lenguaje natural a SQL: los usuarios pueden introducir preguntas en lenguaje natural directamente, y Vanna AI las transformará en las correspondientes sentencias de consultas SQL, sin necesidad de que dominen la compleja sintaxis de SQL.

  • Alta precisión: gracias a la búsqueda semántica y el enriquecimiento de contexto del modelo RAG, Vanna AI mejora considerablemente la precisión en la generación de SQL, mostrando un rendimiento excelente especialmente en conjuntos de datos complejos.

  • Capacidad de autoaprendizaje: Vanna AI puede entrenarse automáticamente a partir de las consultas ejecutadas con éxito, y los usuarios también pueden optimizar el modelo proporcionando retroalimentación, mejorando así la precisión de forma progresiva.

  • Seguridad: el contenido de la base de datos del usuario no se envía al LLM ni a bases de datos vectoriales; la ejecución de SQL se realiza por completo en el entorno local, garantizando la seguridad de los datos.

  • Soporte de bases de datos: es compatible con múltiples bases de datos SQL, como Snowflake, BigQuery, PostgreSQL, etc., lo que permite a los usuarios conectarse fácilmente a diferentes bases de datos para realizar consultas.

  • Opciones de frontend flexibles: los usuarios pueden elegir entre Jupyter Notebook, Slackbot, aplicaciones web, aplicaciones Streamlit o un frontend personalizado para interactuar con Vanna AI.

Escenarios de aplicación de Vanna AI

  • Inteligencia empresarial: ayuda a los analistas de negocio a obtener y analizar rápidamente datos de ventas, clientes, inventario, etc., favoreciendo una toma de decisiones más rápida y precisa basada en datos.

  • Análisis financiero: asiste a los profesionales financieros en el complejo análisis de datos financiero y la evaluación de riesgos.

  • Investigación médica: apoya a los investigadores médicos en la extracción de información valiosa a partir de grandes volúmenes de datos clínicos.

  • Ámbito educativo: ayuda a estudiantes y educadores a comprender y analizar mejor los datos educativos.

  • Investigación de mercado: ofrece a los investigadores de mercado herramientas para analizar rápidamente el comportamiento del consumidor y las tendencias del mercado.

Método de instalación de Vanna AI

1. Instalar Vanna

pip install vanna

2. Importar e inicializar Vanna

from vanna.openai.openai_chat import OpenAI_Chat
from vanna.chromadb.chromadb_vector import ChromaDB_VectorStore
class MyVanna(ChromaDB_VectorStore, OpenAI_Chat):
    def __init__(self, config=None):
        ChromaDB_VectorStore.__init__(self, config=config)
        OpenAI_Chat.__init__(self, config=config)
vn = MyVanna(config={'api_key': 'sk-...', 'model': 'gpt-4-...'})

3. Entrenar Vanna

vn.train(ddl="CREATE TABLE IF NOT EXISTS my_table (...)")
vn.train(documentation="Our business defines XYZ as ...")
vn.train(sql="SELECT name, age FROM my_table WHERE ...")

4. Utilizar Vanna para realizar consultas

result = vn.ask("What are the top 10 customers by sales?")
Repositorio de código en GitHub:https://github.com/vanna-ai/vanna

Repositorio de código en GitHub:https://github.com/vanna-ai/vanna

Herramientas relacionadas con Vanna AI: framework RAG para la generación de SQL y soporte de sistemas de gestión de bases de datos relacionales