前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >pymilvus创建FLAT向量索引

pymilvus创建FLAT向量索引

原创
作者头像
melodyshu
发布2024-04-03 15:24:00
发布2024-04-03 15:24:00
18100
代码可运行
举报
文章被收录于专栏:milvus数据库milvus数据库
运行总次数:0
代码可运行

索引简介

索引的作用是加速大型数据集上的查询。

目前,向量字段仅支持一种索引类型,即只能创建一个索引。

milvus支持的向量索引类型大部分使用近似最近邻搜索算法(ANNS,approximate nearest neighbors search) 。ANNS 的核心思想不再局限于返回最准确的结果,而是仅搜索目标的邻居。 ANNS 通过在可接受的范围内牺牲准确性来提高检索效率。

FLAT索引

暴力搜索。召回率100%。

对于需要完美精度并依赖于相对较小(百万级)数据集的向量相似性搜索应用程序,FLAT 索引是一个不错的选择。 FLAT不压缩向量,是唯一能保证精确搜索结果的索引。

FLAT 是准确的,因为它采用穷尽的搜索方法,这意味着对于每个查询,目标输入都会与数据集中的每组向量进行比较。这使得 FLAT 成为我们列表中最慢的索引,并且不太适合查询大量向量数据。 Milvus 中 FLAT 索引不需要任何参数,使用它不需要数据训练。

创建其它索引需要耗费一定时间,FLAT是瞬间完成。

使用attu创建FLAT索引

使用pymilvus创建FLAT索引

代码语言:python
代码运行次数:0
复制
from pymilvus import (
    connections,
    Collection,
)

collection_name = "hello_milvus"
host = "192.168.230.71"
port = 19530
username = ""
password = ""

print("start connecting to Milvus")
connections.connect("default", host=host, port=port,user=username,password=password)

coll = Collection(collection_name, consistency_level="Bounded",shards_num=1)

print("Start creating index")
index_params = {
    "index_type": "FLAT",
    "metric_type": "L2",
    "params": {}
}

coll.create_index(
  field_name="embeddings",
  index_params=index_params,
  index_name="idx_em"
)

print("done")

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 索引简介
  • FLAT索引
  • 使用attu创建FLAT索引
  • 使用pymilvus创建FLAT索引
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档