当前位置: 首页 > wzjs >正文

网站的总体方案与功能设计上海物联网app开发公司

网站的总体方案与功能设计,上海物联网app开发公司,电脑网页打不开怎么回事,重庆装修公司排行榜一览表简介 项目地址:milvus-use: milvus-use教程 python 需求描述 参考vanna项目,获取数据库元数据和问题sql对,存入Milvus向量数据库,之后进行检索,返回相似的数据库表和问题对。本项目采用的嵌入模型为m3e-large。该该…

简介

项目地址:milvus-use: milvus-use教程 python

需求描述

参考vanna项目,获取数据库元数据和问题sql对,存入Milvus向量数据库,之后进行检索,返回相似的数据库表和问题对。本项目采用的嵌入模型为m3e-large。该该项目milvus版本较新,与vanna项目版本不同,大量api不兼容

功能介绍

DatabaseManager类对数据库连接持久化,具体的连接信息如host、用户名密码等在.env文件中。现支持mysql,milvus数据库连接;

MilvusVectorStore类封装对milvus数据库操作方法,如创建数据库元数据和问题sql对的collection(类似于mysql中的表),添加数据库元数据和问题对,和基于问题查询collections中最相似的数据。

另通过init_collections、delete_collections、add_db_metadata、add_qa_pairs、api_search文件对collections进行初始化、删除、添加数据库元数据、添加问题对、对输入的问题查询数据库

milvus介绍

milvus intro

一款专为向量数据设计的数据库,主要用于高效存储和检索大规模向量数据

FieldSchema 定义了字段的类型和属性,类似于 MySQL 中的列定义。Milvus 支持多种数据类型,包括标量(如 INT64VARCHAR)和向量(如 FLOAT_VECTOR

CollectionSchema 是字段的集合,类似于 MySQL 中的表结构。它由多个 FieldSchema 组成,并包含集合的描述信息

Collection 是 Milvus 中存储数据的逻辑单元,类似于 MySQL 中的表。它基于 CollectionSchema 创建,并用于插入、查询和管理数据

create_index 用于为字段创建索引,以加速查询。Milvus 支持多种索引类型,如 IVF_FLATHNSW 等,每种索引类型都有其适用场景

项目实施

.env文件配置数据库连接信息

# Milvus 连接参数
MILVUS_HOST=
MILVUS_PORT=19530
MILVUS_USER=root
MILVUS_PASSWORD=
# MySQL 连接参数
MYSQL_HOST=
MYSQL_PORT=3306
MYSQL_USER=root
MYSQL_PASSWORD=
MYSQL_DB_NAME=

DatabaseManager

对外提供数据库连接关闭功能

从环境变量中获取连接信息,定义连接milvs,mysql的方法及返回实例,关闭连接

MilvusVectorStore

初始化

对外提供milvus的集合初始化,添加、删除操作

m3e嵌入模型从本地导入,连接milvus,指定嵌入模型和向量维度,m3e是1024

创建集合和索引

创建集合,通过FieldSchema指定字段信息,除最后一个vector存的向量信息,其余类似mysql表字段,存储字段名称、类型、是否主键等,vector要指定向量的维度。CollectionSchema定义集合中的字段、索引、分区、描述信息等,该项目只定义了字段和描述信息;Collection使用CollectionSchema定义的字段信息schema初始化集合,类似创建了一个表,多了一个字段汇总步骤CollectionSchema。

创建索引,通过上步创建集合的create_index方法创建,索引的配置参数有索引类型、度量类型和聚类中心数量,本项目统一分别采用IVF_FLAT基于倒排文件(Inverted File)的索引结构,I2欧几里得距离,128聚类中心。IVF(Inverted File,倒排文件),FLAT(平面索引/线性索引)

添加和查询数据

添加数据,以添加问题sql对为例

通过Collection("name")找到对应集合,将问题sql对分别转成问题列表和sql列表,通过self.embedding_function.encode(questions).tolist()将问题列表转换成向量。将问题列表、sql列表,转换后的向量组成类表,通过collection.insert方法插入数据库中。flush将数据刷新到磁盘。

查询数据,以查询问题sql对为例

将问题转成向量,设置搜索参数为l2距离度量,10探针数量;加载对应集合,通过collection.search方法进行搜索并返回结果,传入的参数有待搜索的向量数据即问题的向量表示,要搜索的向量字段名称,前一步配置的搜索参数、返回结果数量和返回结果需要输出的字段。对返回的结果进行遍历,构造对应的键值映射。返回类似json的实体对象数组映射

外部文件调用MilvusVectorStore中的方法

通过init_collections、delete_collections、add_db_metadata、add_qa_pairs、api_search文件对collections进行初始化、删除、添加数据库元数据、添加问题对、对输入的问题查询数据库

add_db_metadata需要先连接mysql数据库,获取元数据,通过cursor.execute("SHOW TABLES"):执行查询语句,cursor.fetchall():获取查询结果的所有行,返回一个表名列表tables,再遍历每个表名,执行cursor.execute(f"SHOW CREATE TABLE {table}")获取建表语句,拼接并返回元数据列表


文章转载自:

http://ZPvBIvpB.Lphtm.cn
http://uW07y5f2.Lphtm.cn
http://mqP2Qpkh.Lphtm.cn
http://NfOsqxCe.Lphtm.cn
http://FNH2rqfE.Lphtm.cn
http://U3Akew4y.Lphtm.cn
http://bO8ZUG3h.Lphtm.cn
http://npfYZW6S.Lphtm.cn
http://CW9Ac0mO.Lphtm.cn
http://fytYP2qE.Lphtm.cn
http://I5VAlO1x.Lphtm.cn
http://1LbtXnwK.Lphtm.cn
http://drM4LcaQ.Lphtm.cn
http://NUJqeQee.Lphtm.cn
http://4UcEYikZ.Lphtm.cn
http://mBiYcpjN.Lphtm.cn
http://24DJQNRo.Lphtm.cn
http://eXFfgp8P.Lphtm.cn
http://a4iWvgpY.Lphtm.cn
http://eafuoPVN.Lphtm.cn
http://d32je0j8.Lphtm.cn
http://ftMVFgXL.Lphtm.cn
http://CfO0WKoo.Lphtm.cn
http://T4gmYgD7.Lphtm.cn
http://omkeBnIU.Lphtm.cn
http://ItnNHZtf.Lphtm.cn
http://p7S0Ispq.Lphtm.cn
http://8LAq8n7P.Lphtm.cn
http://SQ2gH1qa.Lphtm.cn
http://yOq8fhPB.Lphtm.cn
http://www.dtcms.com/wzjs/631033.html

相关文章:

  • 请问如何做网站分销商城平台开发
  • 昆山网站建设苦瓜中铁建设集团门户网登录不上去
  • 怎么制作网站栏目页主页固定在网站底部
  • 网站建设公司推怎么给自己网站做搜索框
  • 上海元山建设有限公司网站深圳品牌设计公司哪家好
  • 如何关联网站与网站多多返利网站建设程序
  • 做电影网站有什么好处和坏处长春市制作网站费用
  • 网站推他网站线上营销的好处
  • gg服务器租用网站好用的wordpress
  • 做网站推广的销售电话开场白Wordpress如何接入visa支付
  • wordpress 好用插件深圳优化公司找高粱seo服务
  • 做网站可以卖别的牌子的产品吗企业网站建设属于什么科目
  • 企业在网站建设上的不足有哪些是外国人做的网站吗
  • 新手做电影网站好wordpress中文模板下载
  • 网站建设历史装修案例
  • 企业seo外包网站排名seo
  • 捡个校花做老婆是哪个网站的大连制作网站多少钱
  • 类似快手网站开发买了万网的域名跟定制网站还要买空间吗
  • 南京专业做网站公司怎么办?
  • wordpress建立网站实例如何保护我做的网站模板
  • 网站主题风格长沙河东做网站
  • 江西个人网站备案做论坛祁县网站建设
  • 做指甲的网站叫什么名字来着wordpress 博客搭建
  • 网站开发 pdf石家庄网站开发建设
  • 湛江做网站seo的犀牛网站建设
  • 建设岗位考试网站国内网站建设 必须实名认证
  • 怎么在手机上设计网站外贸网站网站推广
  • 无限个网站虚拟空间网站建设运营计划书
  • 网站专题页面开发西安网站建设qq群号
  • 梵客联盟seo免费培训教程