AIGC系列 篇一:Text-to-SQL 工具Vanna:SQL 自动生成的神奇魔法
你是否厌倦了手动编写复杂的 SQL 查询?是否希望有一种工具能够自动生成准确无误的 SQL 代码?那么,让我们来认识一下 Vanna!
Vanna 是一个开源的、基于 Python 的 RAG(检索增强生成)框架,它将为你的 SQL 世界带来一场革命。有了 Vanna,SQL 自动生成将变得轻而易举!
想象一下,你只需点击几下鼠标,Vanna 就能理解你的需求,并为你生成完美的 SQL 语句。不再需要花费大量时间在调试和修改代码上,Vanna 会帮你节省时间,提高效率。
Vanna 不仅是一个自动生成工具,它还具备许多令人惊喜的相关功能。它可以增强你的检索能力,让你更快地找到所需的数据。无论是数据分析、数据库管理还是应用开发,Vanna 都将成为你的得力助手。
开放源代码:
https://github.com/vanna-ai/vanna
基于Python语言。可通过PyPi包vanna在自己项目中直接使用
RAG框架。RAG最典型的应用是 私有知识库问答,通过Prompt注入私有知识以提高LLM回答的准确性。但RAG本身是一种Prompt增强方案,完全可以用于其他LLM应用场景。
· Vanna 能够将用户用平时说话的方式提出的问题自动转换成SQL语句,以便查询数据库。
· Vanna 可以连接到多种类型使用SQL的数据库。
· 用户可以使用自己的数据和需求对Vanna进行训练,从而使其在将问题转换为SQL语句时更加准确。
· Vanna 提供了多种界面选择,如Jupyter Notebook、Web应用、Slack机器人等,以满足不同需求的用户,并支持自定义前端开发。
· 在处理查询时,Vanna 保证数据库内容不会被发送到LLM或向量数据库,SQL执行在用户的本地环境中进行,以确保数据的安全和隐私保护。
· Vanna 能够根据用户的历史查询和反馈进行自我学习和优化,以提高未来查询的准确性。
· Vanna 适用于非技术用户,提供了一种简单直观的方式与数据库进行交互,即使对SQL不熟悉的用户也能轻松使用。
使用三步骤
安装
pip install vanna
训练
提问
vn.ask("年龄最大的用户是谁")
控制台可以看到输出的结果,包含了SQL和执行结果
使用 Web UI
除了直接使用ask方法提问,Vanna 也提供了 Web UI,可以更方便用户查询。
from vanna.flask import VannaFlaskApp
app = VannaFlaskApp(vn)
app.run()
访问http://vana.hassis.top,即可与你的数据库对话,界面如下:
快来部署和应用 Vanna 吧!让 SQL 自动生成的神奇魔法为你的工作带来更多的乐趣和便利。与 Vanna 一起开启高效数据处理的新篇章!