#RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天

这篇具有很好参考价值的文章主要介绍了#RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Vanna是麻省理工学院授权的开源Python RAG(检索增强生成)框架,用于SQL生成和相关功能。
#RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天,AIGC,数据分析,数据库,开发语言,RAG,AIGC,LLM,vector database,向量数据库

Vanna的工作原理

Vanna只需两个简单的步骤——在数据上训练RAG“模型”,然后提出问题,这些问题将返回SQL查询,这些查询可以设置为在数据库上自动运行。

  1. 根据您的数据训练RAG“模型”。
  2. 提出问题。
    #RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天,AIGC,数据分析,数据库,开发语言,RAG,AIGC,LLM,vector database,向量数据库
    如果你不知道什么是RAG,不要担心——你不需要知道它是如何在引擎盖下使用的。你只需要知道你“训练”了一个模型,它存储了一些元数据,然后用它来“提问”问题。

有关如何在引擎盖下工作的更多详细信息,请参见基类。

用户接口

这些是我们使用Vanna构建的一些用户界面。您可以按原样使用这些,也可以将其作为自己自定义界面的起点。
Jupyter Notebook
vanna-ai/vanna-streamlit
vanna-ai/vanna-flask
vanna-ai/vanna-slack

开始

有关所需数据库、LLM等的详细信息,请参阅文档。
如果您想在训练后感受一下它的工作原理,可以尝试这款 Colab 笔记本。

安装

pip install vanna

import

import vanna as vn

训练

您可能需要也可能不需要运行这些 vn.train 命令,具体取决于您的用例。请参阅文档了解更多详细信息。这些陈述可以让您了解它是如何工作的。

使用DDL语句进行训练

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 进行训练

您还可以将SQL查询添加到训练数据中。如果您已经有一些查询,这将非常有用。您只需从编辑器中复制并粘贴这些内容即可开始生成新的SQL。
vn.train(sql="SELECT name, age FROM my-table WHERE name = 'John Doe'")
你会得到 SQL

SELECT c.c_name as customer_name,
        sum(l.l_extendedprice * (1 - l.l_discount)) as total_sales
FROM   snowflake_sample_data.tpch_sf1.lineitem l join snowflake_sample_data.tpch_sf1.orders o
        ON l.l_orderkey = o.o_orderkey join snowflake_sample_data.tpch_sf1.customer c
        ON o.o_custkey = c.c_custkey
GROUP BY customer_name
ORDER BY total_sales desc limit 10;

如果您已连接到数据库,您将获得该表:

顾客姓名 总销售额
Customer#000143500 6757566.0218
Customer#000095257 6294115.3340
Customer#000087115 6184649.5176
Customer#000131113 6080943.8305
Customer#000134380 6075141.9635
Customer#000103834 6059770.3232
Customer#000069682 6057779.0348
Customer#000102022 6039653.6335
Customer#000098587 6027021.5855
Customer#000064660 5905659.6159

您还将获得一个自动绘图:
#RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天,AIGC,数据分析,数据库,开发语言,RAG,AIGC,LLM,vector database,向量数据库

RAG 与微调

RAG 检索增强生成技术
· 可跨LLM移植
· 如果培训数据中的任何一个已过时,则可以轻松删除这些数据
· 运行起来比微调便宜得多
· 更经得起未来考验——如果有更好的LLM问世,你可以把它换掉

FT 微调
· 如果您需要在提示中最小化令牌,这很好
· 起步缓慢
· 训练和运行费用高昂(通常)

为什么是Vanna?

  1. 在复杂数据集上具有高精度。
    · Vanna的能力与您提供的训练数据息息相关
    · 更多的训练数据意味着大型复杂数据集的准确性更高
  2. 安全且私密。
    · 您的数据库内容永远不会发送到LLM或矢量数据库
    · SQL执行发生在您的本地环境中
  3. 自学。
    · 如果通过Jupyter使用,您可以选择在成功执行的查询上“自动训练”它
    · 如果通过其他界面使用,则可以让界面提示用户提供对结果的反馈
    · 存储正确的问题到SQL对以供将来参考,并使将来的结果更加准确
  4. 支持任何SQL数据库。
    · 该包允许您连接到任何SQL数据库,否则您可以使用Python连接到这些数据库
  5. 选择你的前端。
    · 大多数人从Jupyter笔记本开始。
    · 通过Slackbot、web应用程序、Streamlight应用程序或自定义前端向您的最终用户展示。

扩展Vanna

Vanna设计用于连接任何数据库、LLM和矢量数据库。有一个VannaBase抽象基类定义了一些基本功能。该包提供了与OpenAI和ChromaDB一起使用的实现。您可以很容易地扩展Vanna以使用您自己的LLM或矢量数据库。有关更多详细信息,请参阅文档。

参考文献

https://vanna.ai/docs/ vanna.ai
https://vanna.ai/ Let Vanna.AI write your SQL for you
https://github.com/vanna-ai/vanna 代码仓库文章来源地址https://www.toymoban.com/news/detail-794191.html

到了这里,关于#RAG##AIGC#开源 VannaSQL生成框架,与您的数据库聊天的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AIGC数据库工具-阿里开源Chat2DB

    今天无意间发现了一个AIGC数据库工具,chat2DB,重点!!!阿里开源,其设计产品的思想给了我很多灵感,故记录一下,并分享给大家。 Chat2DB 是一款有开源免费的多数据库客户端工具,支持windows、mac本地安装,也支持服务器端部署,web网页访问。和传统的数据库客户端软件

    2024年02月10日
    浏览(54)
  • 【带文字的图像生成-附开源代码】AIGC 如何在图像中准确生成文字?字体篇(上)

    文字图像生成是什么? “文字图像生成(Text-image generation)”即生成带有指定文字的图像。如下图所示,市面常见的通用文生图很难准确地生成带有指定文字的图像。文字图像生成也被称为文本渲染(Text rendering)。 为什么重要? 在图像生成中进行文本渲染至关重要,因为

    2024年04月24日
    浏览(37)
  • 阿里开源!集成了 AIGC 的免费数据库工具:Chat2DB

    今天推荐的这个项目是「 Chat2DB 」,一款开源免费的数据库客户端工具,支持 Windows、Mac 本地安装,也支持服务器端部署,Web 网页访问。 和传统的数据库客户端软件 Navicat、DBeaver 相比 Chat2DB 集成了 AIGC 的能力,能够将自然语言转换为 SQL,也可以将 SQL 转换为自然语言。 可以

    2024年02月08日
    浏览(55)
  • AIGC接下来的研究思路 生成式AI投资研究框架

    AIGC接下来的研究思路 | AIGC 原创 科技周竖人 科技周竖人 2023-04-26 23:22 发表于上海 文 | 科技周竖人 欢迎关注同名公众号获取更详细内容 写在前面:AIGC全称生成式AI(AI Generated Content),与传统AI最大的区别体现在其强大的创造性。传统AI侧重于从现有的数据中识别出模式,其

    2024年02月09日
    浏览(53)
  • AIGC内容分享(三):AIGC应用:基于RAG构建个人知识库

    目录 前言 Collect (收集) 收集是什么? Organize (组织) 组织信息 Distill (提炼) 提炼信息 Express (表达) 表达见解 Finetune调优 调整输出内容 总结一下 在信息爆炸的时代,如何有效地处理和汲取大量的信息成为一个关键的挑战,尤其对于知识工作者。如果有一个知识库就像外挂大脑

    2024年02月02日
    浏览(44)
  • 开源项目:数据库表结构生成文档工具

    目录 一、软件介绍 二、技术框架 三、功能介绍 四、代码展示 1、获取数据库信息部分代码 2、导出Html文档代码 五、运行效果 六、项目开源地址 数据库表结构说明文档是程序员了解业务系统非常重要的资料、另外项目验收的时候,也需要提供给甲方数据库字典相关的技术验

    2023年04月10日
    浏览(41)
  • 《向量数据库指南》——开源框架NVIDIA Merlin & 向量数据库Milvus

    推荐系统 pipeline 中至关重要的一环便是为用户检索并找到最相关的商品。为了实现这一目标,通常会使用低维向量(embedding)表示商品,使用数据库存储及索引数据,最终对数据库中数据进行近似最近邻(ANN)搜索。这些向量表示是通过深度学习模型获取的,而这些深度学习

    2024年02月05日
    浏览(58)
  • RAG应用开发实战(01)-RAG应用框架和解析器

    第三方的工具去对文件解析拆分,去将我们的文件内容给提取出来,并将我们的文档内容去拆分成一个小的chunk。常见的PDF word mark down, JSON、HTML。都可以有很好的一些模块去把这些文件去进行一个东西去提取。 支持丰富的文档类型 每种文档多样化选择 与开源框架无缝集成

    2024年04月11日
    浏览(46)
  • 有道开源RAG引擎 QAnything 版本更新啦

    https://github.com/netease-youdao/QAnything 近日,我们将我们的RAG(基于检索增强的生成,Retrieval Augmented Generation)引擎QAnything开源了 ,用户可以传入doc, pdf, 图片,ppt, excel 等各种类型的文档,就可以基于这些文档问答,像 \\\"chatgpt\\\" 一样的体验。本次开源包括了embedding, rerank, LLM,向量

    2024年01月21日
    浏览(32)
  • 端到端 RAG 解决方案 RAGFlow 正式开源

    继 AI 原生数据库 Infinity 于去年底正式开源之后,我们的端到端 RAG 解决方案 RAGFlow 也于今日正式开源。在回答 RAGFlow 是一款怎样的产品之前,我们先来谈谈为何要做这样一款产品。 RAG 发展到今日,已经成为 LLM 面向 B 端服务的共识,然而时至今日,针对它的疑问却从来没有

    2024年04月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包