【ChatBI】超轻量Python库Vanna快速上手,对接oneapi

news2024/11/13 12:54:16

oneapi 准备

首先确保你有oneapi ,然后申请 kimi的api

需要去Moonshot AI - 开放平台     

然后添加一个api key

然后打开oneapi的渠道界面,添加kimi。

然后点击 测试, 如果能生成响应时间,就是配置正确。

然后创建令牌 http://xxx:3000/token   , 模型名是moonshot-v1-8k

然后复制token , token是sk开头的一串密码。

其他平台接入也是类似操作, 不懂的读者可以留言评论。

Vanna安装使用

pip install vanna就可以了

然后执行以下代码。

from openai import OpenAI
from vanna.openai.openai_chat import OpenAI_Chat
from vanna.chromadb.chromadb_vector import ChromaDB_VectorStore
# zhipu
from zhipuai import ZhipuAI

# oneapi kimi
url,API_KEY,model_name =  "http://10.106.153.12:3002/v1",'sk-NykXx0lml5gnMy6gEe8bA114BbB644C398Ac0d8b5a123d48','moonshot-v1-8k'

client = OpenAI(
    api_key=API_KEY,
    base_url=url,
)
def single_query(query):
  return [{"role": "user", "content": query}]

def qwen_chat(client,model,history):
  # create a chat completion temperature=0.9,
  completion = client.chat.completions.create(
    model=model, max_tokens=512,
    messages=history
  )
  return completion.choices[0].message.content
# print the completion
# 用这一行测试是否能正常访问 oneapi的接口
# print(qwen_chat(client,model_name,single_query('你好')))


class MyVanna(ChromaDB_VectorStore, OpenAI_Chat):
    def __init__(self, client=None, config=None):
        ChromaDB_VectorStore.__init__(self, config=config)
        OpenAI_Chat.__init__(self, client=client, config=config)


vn = MyVanna(client=client, config={"model": model_name})
#vn.max_tokens = 1000
vn.temperature = 1
vn.train(ddl="""
CREATE TABLE IF NOT EXISTS users (
    id INT PRIMARY KEY COMMENT '用户ID',
    username VARCHAR(50) COMMENT '用户名',
    email VARCHAR(100) COMMENT '电子邮件',
    age INT COMMENT '年龄',
    gender VARCHAR(10) COMMENT '性别(男/女)',
    city VARCHAR(50) COMMENT '城市'
) COMMENT='用户信息表' CHARACTER SET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
""")
res = vn.generate_sql('男性用户有多少个')


print('\n\n')

print({'sql':res })

vanna的优势是可以直接生成sql,不需要访问你的数据表。 只需要sql 建表信息, 或者是一些已有的sql ,它可以从已有的sql中进行学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1858274.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探秘美食新宠:嘴尚绝卤味,口感惊艳你的味蕾!

在繁华的都市中,一道独特的卤味小吃悄然走红,它就是“嘴尚绝卤味”。今天,就让我们一起走进这家卤味店,探寻那令人回味无穷的口感秘密。 一、初识嘴尚绝卤味 “嘴尚绝”这个名字,一听就让人联想到美食的极致诱惑。店内…

从零开始构建CNN模型

猫狗分类问题——从零开始构建CNN 我们将使用相同的体系结构,并进行一些小的更改,如下所示。 第一个线性层的输入尺寸发生变化,因为猫和狗的图像尺寸是(256,256)。添加了另一个线性层来为模型学习提供更多的灵活性。 让我们来看看实现网络架…

卷积的通俗解释

以时间和空间两个维度分别理解卷积,先用文字来描述: 时间上,任何当前信号状态都是迄至当前所有信号状态的叠加;时间上,任何当前记忆状态都是迄至当前所有记忆状态的叠加;空间上,任何位置状态都…

如何将视频里的语音转成文字?5种方法轻松解决

这个信息爆炸的时代,视频内容如同潮水般涌来,而我们经常需要从这些海量的视频资源中提取关键信息。无论是为了学习、工作还是娱乐,将视频里的语音转换成文字都是一种高效的方法。这不仅可以帮助我们更好地理解内容,还能方便我们进…

【自然语言处理系列】Python 字符串操作技巧:清理、替换与合并

在编写Python程序时,字符串处理是一项常见的任务。了解如何有效地清理、修改和合并字符串对于数据预处理、文本分析和日常编程都至关重要。本文将引导您通过一系列实用的示例来掌握Python中字符串的核心操作,包括去除不需要的空格和特殊字符、替换文本中…

轻松搞定数据可视化配色,这份指南助你一臂之力!

配色是数据可视化图表的主要因素。一组合适的配色可以表达数据的重点和趋势,而不良的配色会削弱可视化表达的有效性。在本文中,我将梳理数据可视化中使用的配色板类型,通过案例揭示数据可视化配色技巧,并介绍可生成配色板的插件&a…

手撕RPC——前言

手撕RPC——前言 一、RPC是什么?二、为什么会出现RPC三、RPC的原理3.1 RPC是如何做到透明化远程服务调用?3.2 如何实现传输消息的编解码? 一、RPC是什么? RPC(Remote Procedure Call,远程过程调用&#xff…

Python笔记 文件的读取操作

1.open()打开函数 再Python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件,语法如下 open(name,mode,encoding) name:是要打开的文件名的字符串(可以包含文件所在的具体路径) mode&…

[FreeRTOS 基础知识] 信号量 概念

文章目录 信号量定义信号量特性 信号量定义 信号量是一个抽象的数据类型,通常包含一个整数值以及一个等待该值变为正数的任务列表(也称为等待队列)。信号量的整数值代表了系统中某种资源的可用数量。 在操作系统中信号量用于控制对共享资源访…

【Solr 学习笔记】Solr 源码启动教程

Solr 源码启动教程 本教程记录了如何通过 IDEA 启动并调试 Solr 源码,从 Solr9 开始 Solr 项目已由 ant 方式改成了 gradle 构建方式,本教程将以 Solr 9 为例进行演示,IDE 选择使用 IntelliJ IDEA。 Solr github 地址:https://gi…

技术干货|使用机器学习进行大数据信用评分实战演练

利用数据进行客户分类是当前金融信用风险、电商精准营销等的主流方法。那么,如何实现轻松实现客户分类呢?下面就为您介绍RapidMiner是如何快速实现客户分类的数据处理和可视化的。 例如,我们手上有某银行8000多名客户的贷款还款记录&#xff…

保姆级 | Windows 复古风格终端样式设置

0x00 前言 前段时间有朋友询问我 Windows 终端的样式是如何设置的,我也进行了一些简单的回复。在之前的 Windows 11 版本中,系统提供了一个界面按钮,可以直接将终端样式设置为复古风格。然而,系统更新之后,这个按钮好像…

对比A100和4090:两者的区别以及适用点

自2022年年末英伟达发布4090芯片以来,这款产品凭借着其优异的性能迅速在科技界占据了一席之地。现如今,不论是在游戏体验、内容创作能力方面还是模型精度提升方面,4090都是一个绕不过去的名字。而A100作为早些发布的产品,其优异的…

LLama 3的各种微调:拿我司七月的paper-review数据集微调LLama 3

前言 llama 3出来后,为了通过paper-review的数据集微调3,有以下各种方式 不用任何框架 工具 技术,直接微调原生的llama 3,毕竟也有8k长度了 效果不期望有多高,纯作为baseline通过PI,把llama 3的8K长度扩展…

标准立项 | 温室气体排放核算与报告要求 废油资源化企业

国内由于现有的废油再生企业规模较小,承担社会责任能力不强,在技术创新尤其是需要通过工程基础研究解决关键科技问题的创新积极性不高,由于经济成本的原因,多采用较落后的加工工艺,没有对废油中的特征污染物及毒害组分…

Vue和React总结

数据的更改更为简单,不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作 (5)虚拟dom 不再使用原生的dom操作节点,极大解放dom操作,但具体操作的还是dom不过是换了另一种方式 (6)各种指令;过滤器 v-text主要用来更新textContent,可以等同于JS的text属性。 v-…

browerify介绍和简单实用,github的这个作者运用的太妙了

官方代码仓库:https://github.com/browserify/browserify 在github闲逛的时候,发现了一个很神奇的项目,这个项目的特点就是实用纯vue和js代码实现了直播间消息的获取,获取的方式就是建立websocket连接,然后接收消息&a…

Redis队列自研组件

背景 年初的时候设计实践过一个课题:SpringBootRedis实现不重复消费的队列,并用它开发了一个年夜饭下单和制作的服务。不知道大家还有没有印象。完成这个课题后,我兴致勃勃的把它运用到了项目里面,可谁曾想,运行不久后…

1992-2019年全球实际国内生产总值数据集

国内生产总值(GDP),可以有效评价居民的经济状况和生活水平,在各项研究中都非常常用!然而目前在全球不少国家中,对GDP统计存在着统计方法不当、蓄意操纵的行为,导致官方GDP统计数据难以真正反映出真实的经济发展水平。 …

推荐三款必备软件,个个五星好评,你一定不要错过

WiseCare365 WiseCare365是一款由WiseCleaner推出的综合性Windows系统优化和加速工具。它集成了多种功能,旨在帮助用户清理、优化和维护电脑系统,提升电脑性能和安全性。 WiseCare365的主要功能包括: 系统清理:它可以清理各种缓存…