Vanna 是一个基于 MIT 许可的开源 Python RAG(检索增强生成)框架,用于 SQL 生成和相关功能。它允许用户在数据上训练一个 RAG “模型”,然后提问问题,这将生成在数据库上运行的 SQL 查询语句,并将查询结果通过表格和图表的方式展示给用户。
Vanna针对LLM、数据库和向量库提供了多种选择:
QuickStart
import vanna from vanna.remote import VannaDefault vn = VannaDefault(model='chinook', api_key=vanna.get_api_key('my-email@example.com')) vn.connect_to_sqlite('https://vanna.ai/Chinook.sqlite') vn.ask('What are the top 10 artists by sales?') from vanna.flask import VannaFlaskApp VannaFlaskApp(vn).run()
以上代码中
VannaDefault
使用的是Vanna官方提供的服务,登陆Vanna官网注册账号后每天可以获得一定免费限额。# 为了保护用户隐私,vanna默认不读取数据库中的信息,如果想要允许vanna读取,需要在源代码中设置: allow_llm_to_see_data = True