目录
概述
开始前
单向量搜索
本文介绍如何在 Zilliz Cloud 中执行近似最近邻(Approximate Nearest Neighbour,ANN)搜索和查询。搜索是指在 Collection 中查找与指定查询向量最接近的向量,查询是基于指定条件筛选出满足条件的数据。

概述
Zilliz Cloud 采用 ANN 算法来处理向量搜索请求,支持搜索并返回与指定查询向量最相似的前 K 个 Entity。为优化性能和吞吐,Zilliz Cloud 支持批量搜索,即同时指定多个查询向量并行搜索。您可以定义布尔表达式来缩小 ANN 搜索的范围。
开始前

执行 ANN 搜索或查询前,请确保已完成以下步骤:
- 已连接到创建了 Collection 的目标集群。详情请参见连接集群和创建 Collection。
- 已下载示例数据集并已将数据插入到 Collection 中。详情请参见示例数据集和插入 Entity。
- 阅读本指南系列时,建议下载代码示例。
说明
本指南系列中创建的 Collection 包含 id 主键和 vector 向量字段。如果您希望完全自定义 Collection,请参见定制 Schema、开启动态 Schema 和 JSON。
单向量搜索
单向量搜索是指搜索并返回与指定的某个查询向量最相似的前 K 个Entity。

以下是单向量搜索的示例代码:
- Python
- NodeJS
with open("path/to/downloaded/medium_articles_2020_dpr.json") as f:
data = json.load(f)
# 'client' 是 MilvusClient 实例。
res = client.search(
collection_name="medium_articles_2020",
data=[data["rows"][0]["title_vector"]],
output_fields=["title"]
)
print(res)
# 输出:
# [
# [
# {
# "id": 0,
# "distance": -1.0,
# "entity": {
# "title": "The Reported Mortality Rate of Coronavirus Is Not Important"
# }
# },
# {
# "id": 70,
# "distance": -0.7525784969329834,
# "entity": {
# "title": "How bad will the Coronavirus Outbreak get? \u2014 Predicting the outbreak figures"
# }
# },
# {
# "id": 160,
# "distance": -0.7132074236869812,
# "entity": {
# "title": "The Funeral Industry is a Killer"
# }
# },
# {
# "id": 111,
# "distance": -0.6888885498046875,
# "entity": {
# "title": "The role of AI in web-based ADA and WCAG compliance"
# }
# },
# {
# "id": 196,
# "distance": -0.6882869601249695,
# "entity": {
# "title": "The Question We Should Be Asking About the Cost of Youth Sports"
# }
# },
# {
# "id": 51,
# "distance": -0.6719912886619568,
# "entity": {
# "title": "What if Facebook had to pay you for the profit they are making?"
# }
# },
# {
# "id": 178,
# "distance": -0.6699185371398926,
# "entity": {
# "title": "Is The Environmental Damage Due To Cruise Ships Irreversible?"
# }
# },
# {
# "id": 47,
# "distance": -0.6680259704589844,
# "entity": {
# "title": "What Happens When the Google Cookie Crumbles?"
# }
# },
# {
# "id": 135,
# "distance": -0.6597772836685181,
# "entity": {
# "title": "How to Manage Risk as a Product Manager"
# }
# }
# ]
# ]
您可以在搜索请求中引用搜索参数,并指定查询向量、向量字段名称、返回结果限制以及其他相关参数。以上代码搜索与指定查询向量最相近的 10 条 Entity,并返回各 Entity 的主键、距离等信息。


















