使用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会根据自己的理解使用适当的表格展示

相关推荐
-Xie-22 分钟前
Mysql杂志(十六)——缓存池
数据库·mysql·缓存
七夜zippoe25 分钟前
缓存与数据库一致性实战手册:从故障修复到架构演进
数据库·缓存·架构
一个天蝎座 白勺 程序猿1 小时前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode
QQ3596773452 小时前
ArcGIS Pro实现基于 Excel 表格批量创建标准地理数据库(GDB)——高效数据库建库解决方案
数据库·arcgis·excel
学编程的小程2 小时前
突破局域网限制:MongoDB远程管理新体验
数据库·mongodb
波波烤鸭2 小时前
Redis 高可用实战源码解析(Sentinel + Cluster 整合应用)
数据库·redis·sentinel
l1t6 小时前
利用DeepSeek实现服务器客户端模式的DuckDB原型
服务器·c语言·数据库·人工智能·postgresql·协议·duckdb
MarkHard12310 小时前
如何利用redis使用一个滑动窗口限流
数据库·redis·缓存
island131412 小时前
【Redis#10】渐进式遍历 | 数据库管理 | redis_cli | RES
数据库·redis·bootstrap
心想事成的幸运大王12 小时前
Redis的过期策略
数据库·redis·缓存