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

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部