如何快速使用向量检索服务DashVector?

免费体验阿里云高性能向量检索服务:https://www.aliyun.com/product/ai/dashvector


本文将介绍如何快速上手使用向量检索服务DashVector。

前提条件

说明

  1. 需要使用您的api-key替换示例中的YOUR_API_KEY、您的Cluster Endpoint替换示例中的YOUR_CLUSTER_ENDPOINT,代码才能正常运行。

  2. Cluster Endpoint,可在控制台"Cluster详情"中查看。

Step1. 创建Client

使用HTTP API时可跳过本步骤。

Python示例:

复制代码
import dashvector

client = dashvector.Client(
    api_key='YOUR_API_KEY',
    endpoint='YOUR_CLUSTER_ENDPOINT'
)
assert client

Step2. 创建Collection

创建一个名称为quickstart,向量维度为4的collection。

Python示例:

复制代码
client.create(name='quickstart', dimension=4)

collection = client.get('quickstart')
assert collection

说明

1.在未指定距离度量参数时,将使用默认的Cosine距离度量方式。

2.在未指定向量数据类型时,将使用默认的Float数据类型。

Step3. 插入Doc

Python示例:

复制代码
from dashvector import Doc

# 通过dashvector.Doc对象,插入单条数据
collection.insert(Doc(id='1', vector=[0.1, 0.2, 0.3, 0.4]))

# 通过dashvector.Doc对象,批量插入2条数据
collection.insert(
    [
        Doc(id='2', vector=[0.2, 0.3, 0.4, 0.5], fields={'age': 20, 'name': 'zhangsan'}),
        Doc(id='3', vector=[0.3, 0.4, 0.5, 0.6], fields={'anykey': 'anyvalue'})    
    ]
)

Step4. 相似性检索

Python示例:

复制代码
rets = collection.query([0.1, 0.2, 0.3, 0.4], topk=2)

print(rets)

Step5. 删除Doc

Python示例:

复制代码
# 删除1条数据
collection.delete(ids=['1'])

Step6. 查看Collection统计信息

Python示例:

复制代码
stats = collection.stats()

print(stats)

Step7. 删除Collection

Python示例:

复制代码
client.delete('quickstart')

免费体验阿里云高性能向量检索服务:https://www.aliyun.com/product/ai/dashvector

相关推荐
SuniaWang1 分钟前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题六:《Vue3 前端开发实战:打造企业级 RAG 问答界面》
java·前端·人工智能·spring boot·后端·spring·架构
韩立学长4 分钟前
Springboot校园跑腿业务系统0b7amk02(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
阿贵---9 分钟前
使用XGBoost赢得Kaggle比赛
jvm·数据库·python
无敌昊哥战神13 分钟前
【LeetCode 257】二叉树的所有路径(回溯法/深度优先遍历)- Python/C/C++详细题解
c语言·c++·python·leetcode·深度优先
想七想八不如1140824 分钟前
数据库--样题复习
数据库·sql·oracle
551只玄猫27 分钟前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理
q54314708739 分钟前
MySQL SQL100道基础练习题
数据库·mysql
IDZSY04301 小时前
AI社交平台进阶指南:如何用AI社交提升工作学习效率
人工智能·学习
zhoupenghui1681 小时前
mysql 中如果条件where中有or,则要求or两边的字段都必须有索引,否则不能用到索引, 为什么?
数据库·mysql·索引
七七powerful1 小时前
运维养龙虾--AI 驱动的架构图革命:draw.io MCP 让运维画图效率提升 10 倍,使用codebuddy实战
运维·人工智能·draw.io