使用vanna实现Text2SQL

这节一起用vanna来实现自然语言转SQL,之前的大模型一直停留在问答阶段,答案基本都是大模型提供的,至多是加点本地知识库,tet,pdf等文档,丰富大模型的内容,但是想要大模型与一些管理系统对接还是无能为力,这节就一起尝试下用vanna对接数据库,将自然语言转成标准的SQL对数据库进行查询。这也是很多管理系统的开发者最需要落地实践的内容。

使用vanna之前需要打开vanna的官网申请一个key,如果之前没有注册过的话,还需要先注册一个vanna的账号,注册成功后,在申请KEY的页面申请key申请之后鼠标悬停在中间的输入框上,key就会显示出来。

因为vanna是python实现的,我这里也用python开发,用的pycharm编辑器,需要导入vanna,在pycharm的命令提示符输入:

复制代码
pip install vanna

安装成功后,按照官网的步骤对接vanna,这里使用的是vanna的数据库,

复制代码
from vanna.remote import VannaDefault
vn = VannaDefault(model='chinook', api_key='your_key')

vn.connect_to_sqlite('https://vanna.ai/Chinook.sqlite')
from vanna.flask import VannaFlaskApp
VannaFlaskApp(vn).run()

然后点击运行,运行成功后,会在控制台打印出访问地址,打开后页面如下

输入问题后,他会将问题转化成标准的SQL语句进行查询,并用表格展示,同时,vanna会根据自己的理解使用适当的表格展示

相关推荐
云飞云共享云桌面19 小时前
三维设计办公资源如何共享集中和安全管控?
运维·服务器·数据库·安全·自动化·制造
百锦再20 小时前
大型省级政务平台采用金仓数据库(KingbaseES)
开发语言·数据库·后端·rust·eclipse
Chloeis Syntax21 小时前
MySQL初阶学习日记(2)--- 数据库的数据类型和表的操作
数据库·学习·mysql
AI绘画小331 天前
渗透测试数据库判断卡壳?分类 + 方法 + SQL/NoSQL 脚本速用
服务器·数据库·sql·mysql·web安全·nosql
无敌最俊朗@1 天前
01-总结
java·jvm·数据库
think2cat1 天前
图书馆的"备份书库"与"时光机":MongoDB副本集深度揭秘
数据库·mongodb
清风6666661 天前
基于单片机的多模式智能洗衣机设计
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
武子康1 天前
Java-167 Neo4j CQL 实战:CREATE/MATCH 与关系建模速通 案例实测
java·开发语言·数据库·python·sql·nosql·neo4j
Fency咖啡1 天前
redis进阶 - 底层数据结构
数据结构·数据库·redis