Vanna ai是什么?
Vanna 是一个 RAG 框架,专为生成 SQL 和支持多种关系数据库管理系统(RDBMS)设计,例如 PostgreSQL、MySQL 和 Oracle 等。Vanna 能够自动获取数据库的库表结构,并具备自我学习功能,能够存储正确的 SQL 查询关系。
Vanna AI 功能特点
自然语言到 SQL 的转换:用户可以直接输入自然语言问题,Vanna AI 将其转换为相应的 SQL 查询语句,无需掌握复杂的 SQL 语法。
高准确性:通过 RAG 模型的语义检索和上下文增强,Vanna AI 大幅提高了 SQL 生成的准确性,尤其在复杂数据集上表现优异。
自我学习能力:Vanna AI 可以在成功执行的查询上自动训练,用户还可以通过提供反馈来优化模型,从而逐步提高准确性。
安全性:用户的数据库内容不会发送到 LLM 或向量数据库,SQL 执行完全在本地环境中进行,确保数据安全。
支持数据库:支持多种 SQL 数据库,如 Snowflake、BigQuery、PostgreSQL 等,用户可以轻松连接不同的数据库进行查询。
灵活的前端选择:用户可以选择使用 Jupyter Notebook、Slackbot、Web 应用、Streamlit 应用或自定义前端与 Vanna AI 进行交互。
Vanna AI 应用场景
商业智能:帮助业务分析师快速获取和分析销售、客户、库存等数据,促进更快、更准确的数据驱动决策。
金融分析:协助金融专业人士进行复杂的财务 数据分析 和风险评估。
医疗研究:支持医疗研究人员从大量临床数据中提取有价值的信息。
教育领域:帮助学生和教育工作者更好地理解和分析教育数据。
市场调研:为市场研究人员提供快速分析消费者行为和市场趋势的 工具。
Vanna AI 安装方法
1. 安装 Vanna
pip install vanna
2. 导入并初始化 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. 训练 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. 使用 Vanna 进行查询
result = vn.ask("What are the top 10 customers by sales?") GitHub代码库:https://github.com/vanna-ai/vanna
GitHub代码库:https://github.com/vanna-ai/vanna
发表评论 取消回复