Vanna.AI 学习记录

Vanna.AI

官方文档

https://vanna.ai/docs/

个人理解

Vanna本身是python的一个第三方库,定义上是耦合市面上已有的大模型(LLM)与用户数据库,主要作用是增强大模型对数据库的查询效果,通过对

的使用,在向量库中存储已有的(数据库中的数据结构等)和后续加入的(人为训练的数据)查询问题,并且按照DDL、Document、SQL三种类型在向量库中进行分类存储,还包含一种SQL/Question类型,这种类型格式为{“question”:“年龄大于5随的人”,“sql”:“select name from user where age>5;”},在进行交互查询时,Vanna在向量库中匹配最倾向的DDL、Document、SQL类型数据,生成prompt,将其交由LLM进行解析,生成相应的sql查询语句,使用SQL语句对集成的数据库进行准确查询,之后由Vanna进行数据处理以及输出,用户对输出数据进行判断并选择是否将其更新入向量库。

附上官网数据流图

在这里插入图片描述

过程中可选用多种向量库、LLM、Database进行组合,并且Vanna也支持很多的选择。

快速开始

  • 使用官方mock数据

    • 安装库包
    pip intall vanna
    
    • 实现demo

      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 albums by sales?")
      
      from vanna.flask import VannaFlaskApp
      VannaFlask(vn).run()
      

功能介绍

Vanna框架使用可分为两大部分,1、模型训练Train,2、提问Ask

相应的功能为

vn.train、vn.ask

vn就是我们实例化的类,不是哪个和影子玩拳击的那位

  1. vn.train 使用方式整理

    1. DDL statements:主要告诉模型那些表、那些列、那些数据可以用

      1. vn.train(ddl="CREATE TABLE my_table (id INT,name TEXT,age INT)")
        
    2. Documentation strings: 设计数据库之外的一些文档、业务什么的数据

      1. vn.train(documentation=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值