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

东莞产品网站建设公司做网站最好的语言

东莞产品网站建设公司,做网站最好的语言,wordpress控制字数,彩票网站做代理一、Milvus 介绍及安装 Milvus 于 2019 年创建#xff0c;其目标只有一个#xff1a;存储、索引和管理由深度神经网络和其他机器学习 (ML) 模型生成的大量嵌入向量。它具备高可用、高性能、易拓展的特点#xff0c;用于海量向量数据的实时召回。 作为专门为处理输入向量查…一、Milvus 介绍及安装 Milvus 于 2019 年创建其目标只有一个存储、索引和管理由深度神经网络和其他机器学习 (ML) 模型生成的大量嵌入向量。它具备高可用、高性能、易拓展的特点用于海量向量数据的实时召回。 作为专门为处理输入向量查询而设计的数据库它能够对万亿规模的向量进行索引。与现有的关系数据库主要处理遵循预定义模式的结构化数据不同Milvus 是自下而上设计的旨在处理从非结构化数据转换而来的嵌入向量。 Milvus 采用共享存储架构存储计算完全分离计算节点支持横向扩展。从架构上来看Milvus 遵循数据流和控制流分离整体分为了四个层次分别为接入层access layer、协调服务coordinator service、执行节点worker node和存储层storage。各个层次相互独立独立扩展和容灾。 在 Milvus 中相关术语 Collection 包含一组 Entity可以理解为关系型数据库中的表。 Entity 包含一组 Field可以理解为关系型数据库中的行。 Field可以是代表对象属性的结构化数据也可以是代表对象特征的向量。可以理解为关系型数据库中的字段。 Partition分区针对 Collection 数据分区存储多个部分每个分区又可以包含多个段。 Segment分段一个 Partition 可以包含多个 Segment。一个 Segment 可以包含多个 Entity。在搜索时会搜索每个 Segment 合并后返回结果。 Sharding分片将数据分散到不同节点上充分利用集群的并行计算能力进行写入默认情况下单个 Collection 包含 2 个分片。 Index索引可以提高数据搜索的速度。但一个向量字段仅支持一种索引类型。 更多介绍可以参考官方文档 官网地址https://milvus.io/ Milvus Docker 单机部署 单机版 Milvus 主要包括三个组件 Milvus负责提供系统的核心功能。etcd 元数据引擎用于管理 Milvus 内部组件的元数据访问和存储例如proxy、index node 等。MinIO 存储引擎负责维护 Milvus 的数据持久化。 需要提前安装好 Docker、Docker-compose 环境。 官方介绍https://milvus.io/docs/install_standalone-docker.md 下载 docker-compose.yml 文件 wget https://github.com/milvus-io/milvus/releases/download/v2.3.1/milvus-standalone-docker-compose.yml -O docker-compose.yml启动 Milvus docker compose up -d查看启动服务 docker ps安装可视化工具 vi docker-compose-insight.ymlversion: 3.5services:insight:container_name: milvus-insightimage: milvusdb/milvus-insight:latestenvironment:HOST_URL: http://172.19.222.20:3000MILVUS_URL: 172.19.222.20:19530ports:- 3000:3000networks:- milvusnetworks:milvus:启动 docker-compose -f docker-compose-insight.yml up -d浏览器访问可视化页面 http://ip:3000 二、Python Api 使用 Milvus 与 Python Api 版本对应如下 Milvus 版本推荐的 PyMilvus 版本1.0.*1.0.11.1.*1.1.22.0.x2.0.22.1.x2.1.32.2.x2.2.32.3.02.3.72.4.0-rc.12.4.0 这里安装 2.3.7 版本依赖推荐 Python 版本 3.8 以上 pip install pymilvusv2.3.7 -i https://pypi.tuna.tsinghua.edu.cn/simple连接 Milvus from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)如果有用户名密码可以使用 from pymilvus import MilvusClientclient MilvusClient(urihttp://localhost:19530,tokenroot:Milvus,db_namedefault )1. 创建 Collection from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)client.create_collection(collection_nametest, # 集合的名称dimension5, # 向量的维度primary_field_nameid, # 主键字段名称id_typeint, # 主键的类型vector_field_namevector, # 向量字段的名称metric_typeL2, # 指标类型用于测量向量嵌入之间的相似性的算法。auto_idTrue # 主键ID自动递增 )或者自定义设置字段 from pymilvus import MilvusClient, DataTypeclient MilvusClient(http://172.19.222.20:19530)# 声明 schema schema MilvusClient.create_schema(auto_idFalse,enable_dynamic_fieldFalse, ) # 添加主键字段 schema.add_field(field_nameid, datatypeDataType.INT64, is_primaryTrue) # 添加向量字段 schema.add_field(field_namevector, datatypeDataType.FLOAT_VECTOR, dim5) # 添加其他字段 schema.add_field(field_namename, datatypeDataType.VARCHAR, max_length255) schema.verify() # 索引 index_params client.prepare_index_params() index_params.add_index(field_nameid,index_typeSTL_SORT )index_params.add_index(field_namevector,index_typeIVF_FLAT,metric_typeL2,params{nlist: 1024} )# 创建 collection client.create_collection(collection_nametest1,schemaschema,index_paramsindex_params ) 其中向量索引方式有如下选择 索引说明FLAT准确率高 适合数据量小暴力求解相似。IVF-FLAT量化操作 准确率和速度的平衡IVFinverted file 先对空间的点进行聚类查询时先比较聚类中心距离再找到最近的N个点。IVF-SQ8量化操作disk cpu GPU 友好SQ8对向量做标量量化浮点数表示转为int型表示4字节-1字节。IVF-PQ快速但是准确率降低把向量切分成m段对每段进行聚类HNSW基于图的索引高效搜索场景构建多层的NSW。ANNOY基于树的索引高召回率 执行后可在可视化工具中看到创建的 Collection : 2. insert 写入数据 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)# 写入一条 res1 client.insert(collection_nametest1, # 前面创建的 collection 名称data{id: 0, # 主键IDvector: [ # 向量0.6186516144460161,0.5927442462488592,0.848608119657156,0.9287046808231654,-0.42215796530168403],name: 测试1 # 其他字段} ) print(res1)# 批量写入 res2 client.insert(collection_nametest1,data[{id: 1, vector: [0.19886812562848388, 0.06023560599112088, 0.6976963061752597, 0.2614474506242501, 0.838729485096104], name: 测试3},{id: 2, vector: [0.43742130801983836, -0.5597502546264526, 0.6457887650909682, 0.7894058910881185, 0.20785793220625592], name: 测试4},{id: 3, vector: [0.3172005263489739, 0.9719044792798428, -0.36981146090600725, -0.4860894583077995, 0.95791889146345], name: 测试5},{id: 4, vector: [0.4452349528804562, -0.8757026943054742, 0.8220779437047674, 0.46406290649483184, 0.30337481143159106], name: 测试6},{id: 5, vector: [0.985825131989184, -0.8144651566660419, 0.6299267002202009, 0.1206906911183383, -0.1446277761879955], name: 测试7},{id: 6, vector: [0.8371977790571115, -0.015764369584852833, -0.31062937026679327, -0.562666951622192, -0.8984947637863987], name: 测试8},{id: 7, vector: [-0.33445148015177995, -0.2567135004164067, 0.8987539745369246, 0.9402995886420709, 0.5378064918413052], name: 测试9},{id: 8, vector: [0.39524717779832685, 0.4000257286739164, -0.5890507376891594, -0.8650502298996872, -0.6140360785406336], name: 测试10},{id: 9, vector: [0.5718280481994695, 0.24070317428066512, -0.3737913482606834, -0.06726932177492717, -0.6980531615588608], name: 测试11}], )print(res2)3. search 向量相似查询数据 3.1 向量相似检索 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.search(collection_nametest1,data[[0.05, 0.23, 0.07, 0.45, 0.13]],limit3,search_params{metric_type: L2,params: {}} )for row in res[0]:print(row)3.2 向量相似检索 过滤 过滤和 SQL 用法类似通过 filter 字段控制 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.search(collection_nametest1,data[[0.05, 0.23, 0.07, 0.45, 0.13]],limit3,filtername 测试5 and id 2,search_params{metric_type: L2,params: {}} )for row in res[0]:print(row) 3.3 向量相似检索 模糊查询过滤 模糊查询和 SQL 用法一直使用 like 。 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.search(collection_nametest1,data[[0.05, 0.23, 0.07, 0.45, 0.13]],limit3,filtername name like 测试% and id 2,search_params{metric_type: L2,params: {}} )for row in res[0]:print(row) 3.4 向量相似检索 指定输出字段 通过 output_fields 控制输出字段。 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.search(collection_nametest1,data[[0.05, 0.23, 0.07, 0.45, 0.13]],limit3,filtername like 测试% and id 2,output_fields[vector, name],search_params{metric_type: L2,params: {}} )for row in res[0]:print(row) 3.5 向量相似检索 分页 通过增加 offset limit 的方式实现 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.search(collection_nametest1,data[[0.05, 0.23, 0.07, 0.45, 0.13]],limit3,offset3,filtername like 测试% and id 2,output_fields[vector, name],search_params{metric_type: L2,params: {}} )for row in res[0]:print(row) 4. query 普通查询数据 query 用法和 search 类似只是不用传递 data 向量了 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.query(collection_nametest1,filterid 1,output_fields[*] ) for row in res:print(row) 5. upsert 插入或更新数据 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)## 查询 id 2 的数据 res client.query(collection_nametest1,filterid 2,output_fields[*] ) row res[0] print(row)# 修改name为张三 row[name] 张三# 保存修改 client.upsert(collection_nametest1,data[row] )再次查询 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)## 查询 id 2 的数据 res client.query(collection_nametest1,filterid 2,output_fields[*] ) row res[0] print(row)6. delete 删除数据 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)# 删除 id 为 1、2 的数据 client.delete(collection_nametest1,ids[1, 2] )查询数据 from pymilvus import MilvusClientclient MilvusClient(http://172.19.222.20:19530)res client.query(collection_nametest1,filter,output_fields[*],limit1000 ) for row in res:print(row)
http://www.w-s-a.com/news/674128/

相关文章:

  • 网站关键词代码怎么做公司 网站建设
  • 哈尔滨多语言网站建设wordpress分类链接
  • 购物网站项目介绍软件开发流程的五大步骤
  • 做的网站怎么放在网上2008 iis搭建网站
  • 网站维护服务公司上海兼职网站制作
  • 企业做网站需要多少钱湘潭九华网站
  • 嘉兴建站服务微营销官网
  • 比较好的网页模板网站浦项建设(中国)有限公司网站
  • 有趣的个人网站网页设计与制作的岗位职责
  • 有建设网站的软件吗长沙做网站的公司对比
  • 网站的外链接数中铝长城建设有限公司网站
  • 北京建设网站公司网站建设费用 无形资产
  • 适合seo的建站系统如何建立网页
  • 我想自己建立一个网站给大家分享个永久免费的云服务器
  • 怎样做网站和网站的友情链接官网优化 报价
  • 购买网站空间大小聊城网站空间公司
  • 做像美团淘宝平台网站多少钱开发网站企业
  • 网站建设前期费用二手购物网站策划书
  • dede学校网站百度联盟是什么
  • 献县网站建设网站开发专业定制
  • 龙华做网站yihe kj安徽六安彩礼一般给多少
  • flash网站建设公司我的小程序在哪里找
  • 建网站需要数据库吗如何制作简单的网页链接
  • 杭州设计企业网站高端公司上虞做网站公司
  • 做网站能赚钱么用wordpress搭建知名网站
  • 阿里云服务器网站开发青岛做网站找哪家
  • 凡科做的网站为什么打不开织梦cms仿某作文网站整站源码(带采集)安装数据库
  • 免费h5模板网站模板汽车报价网址
  • 蔡甸网站建设烟台网站建设yt
  • 最流行的网站开发新开的网页游戏平台