用自然语言查询你的 SQL 数据库

Vanna 是一个开源的 Python RAG(检索增强生成)框架,用于 SQL 生成和其他相关功能。它使用大型语言模型(LLM)来实现准确的文本到 SQL 生成。

用自然语言查询你的 SQL 数据库

Vanna 的工作原理:

1.在你的数据上训练一个 RAG “模型”。2.提出问题,Vanna 会返回 SQL 查询,这些查询可以被设置为自动运行在你的数据库上。

用户界面:

Vanna 提供了多种用户界面,例如 Jupyter Notebook、Streamlit、Flask 和 Slack,方便你使用。

安装:

pip install vanna

使用示例:

from vanna.openai.openai_chat import OpenAI_Chatfrom 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-...'})

训练:

使用 DDL 语句进行训练,例如:

vn.train(ddl="""  CREATE TABLE IF NOT EXISTS my-table (      id INT PRIMARY KEY,      name VARCHAR(100),      age INT  )""")

使用文档进行训练,例如:

vn.train(documentation="Our business defines XYZ as ...")

使用 SQL 查询进行训练,例如:

vn.train(sql="SELECT name, age FROM my-table WHERE name = 'John Doe'")

提问:

vn.ask("What are the top 10 customers by sales?")

Vanna 的优势:

•高精度:在复杂数据集上表现出色。•安全和私密:你的数据库内容不会被发送到 LLM 或向量数据库。•自学习:可以根据成功执行的查询进行自动训练。•支持任何 SQL 数据库。•可扩展性强:可以轻松扩展到使用自定义的 LLM 或向量数据库。

原创文章,作者:guozi,如若转载,请注明出处:https://www.sudun.com/ask/90786.html

(0)
guozi's avatarguozi
上一篇 2024年6月7日 上午11:07
下一篇 2024年6月7日 上午11:08

相关推荐

  • 如何优化莱芜网站?

    想要在莱芜地区的网络市场占据一席之地,那么必须要了解如何优化莱芜网站这一重要的行业内容。但是为什么要优化莱芜网站呢?莱芜网站有着怎样的特点和挑战?如何选择合适的关键词来提升网站的排…

    行业资讯 2024年3月20日
    0
  • 虚拟主播动作捕捉软件,虚拟主播动作捕捉怎么弄

    虚拟主播动作捕捉技术是近年来云服务器行业备受关注的技术。现在可以使用虚拟主播制作逼真的动作,让观众体验到身临其境的真实感。那么什么是虚拟主播动作捕捉技术呢?它是如何发展的?有哪些应…

    行业资讯 2024年3月31日
    0
  • gpu云服务器打游戏

    在当今互联网时代,游戏已经成为人们生活中不可或缺的一部分。而随着科技的发展,GPU云服务器作为一种新兴的云计算服务方式,也逐渐走进了人们的视野。那么什么是GPU云服务器?它又有哪些…

    行业资讯 2024年4月15日
    0
  • 清除域名dns污染,域名dns被污染解决办法

    尽管近年来互联网行业发展迅速,但挑战也随之而来。其中,DNS域名污染问题备受关注。您是否曾经打开网页并被重定向到广告页面?或者在浏览器中输入正确的网址但仍然无法访问?这些可能是由D…

    行业资讯 2024年5月11日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注