本文介绍如何通过Python SDK创建一个新的Collection。

前提条件

接口定义

Python示例:

Client.create(
name: str,
dimension: int,
dtype: Union[Type[int], Type[float]]=float,
fields_schema: Optional[Dict[str, Union[Type[str], Type[int], Type[float], Type[bool], Type[long]]]]=None,
metric: str='cosine',
extra_params: Dict[str, Any]=None,
timeout: Optional[int]=None,
vectors: Union[None, VectorParam, Dict[str, VectorParam]] = None,
sparse_vectors: Union[None, Dict[str, VectorParam]] = None,
) -> DashVectorResponse

使用示例

说明

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

创建单向量集合

Python示例:

import dashvector

client = dashvector.Client(
api_key='YOUR_API_KEY',
endpoint='YOUR_CLUSTER_ENDPOINT'
) # 创建一个名称为quickstart、向量维度为4、
# 向量数据类型为float(默认)、
# 距离度量方式为dotproduct(内积)的Collection
# 并预先定义四个Field,名称为name、weight、age、id,数据类型分别为str、float、int、dashvector.long
# timeout为-1 ,开启create接口异步模式
ret = client.create(
name='quickstart',
dimension=4,
metric='dotproduct',
dtype=float,
# 为保留类型注解的语义明确性,DashVector通过typing模块定义long类型,为需要显式标注大整数场景提供了类型标注支持
fields_schema={'name': str, 'weight': float, 'age': int, 'id': dashvector.long},
timeout=-1
) # 判断collection是否创建成功
if ret:
print('create collection success!')
# 等同于下列代码
# from dashvector import DashVectorCode
# if ret.code == DashVectorCode.Success:
# print('create collection success!')

创建多向量集合

ret = client.create(
'multi_vector_demo',
vectors={
"title": VectorParam(4),
"content": VectorParam(6, metric="euclidean"),
},
sparse_vectors={
"abstruct": VectorParam(metric="dotproduct"),
"keywords": VectorParam(metric="dotproduct"),
# 稀疏向量索引目前仅支持内积度量,dimension/dtype使用默认值无需设置
},
fields_schema={
'author': str,
}
)
assert ret

说明

多向量不支持仅有1条稠密向量+1条稀疏向量collection的建立,如有此需求,请创建单向量Collection,度量方式选内积。

如何通过Python SDK创建一个新的Collection的更多相关文章

  1. 【Cocos2d-x for WP8 学习整理】(1)创建一个新项目

    喜大普奔                         10.1假期之前看到了一个很振奋的消息,就是随着Cocos2d-x 2.2的发布,WP8/WIN8有史以来第一次的合并到主版本了. 之前 V2 ...

  2. ArcGIS Desktop python Add-in 创建一个插件

    1)创建一个项目 首先创建一个插件项目,本节介绍如何利用向导创建一个插件项目. 创建任何一个ArcGIS插件产品的过程都是一样的. 创建一个Python插件项目包括2个步骤: a) 选择一个插件项目文 ...

  3. android 创建一个新的每次project什么时候 请问自己主动 参加 V7依赖?

    android 创建一个新的每次project什么时候 请问自己主动 参加 V7依赖? 分析原因: 主要是由于.我之前的 SDK 的版本号 更新的有点高了.低版本号是不会有这样的问题g的,新版本号中g ...

  4. 创建一个新的解耦的Orchard Core CMS网站

    引言本文将介绍创建一个功能齐全.解耦的CMS网站的过程,该网站允许您编辑博客帖子并呈现它们.解耦是一种开发模型,其中站点的前端和后端(管理)托管在同一个Web应用程序中,但只有后端由CMS驱动.然后, ...

  5. linux内核分析作业6:分析Linux内核创建一个新进程的过程

    task_struct结构: struct task_struct {   volatile long state;进程状态  void *stack; 堆栈  pid_t pid; 进程标识符  u ...

  6. Step by Step 创建一个新的Dynamics CRM Organization

    原创地址:http://www.cnblogs.com/jfzhu/p/4012833.html 转载请注明出处 前面演示过如何安装Dynamics CRM 2013,参见<Step by st ...

  7. Step by step 如何创建一个新森林

    原创地址:http://www.cnblogs.com/jfzhu/p/4006118.html 转载请注明出处 创建一个新森林就是在一台计算机上安装AD DS,并将这台计算机提升为域控制器. 演示环 ...

  8. ZeroMQ接口函数之 :zmq_ctx_new – 创建一个新的ZMQ 环境上下文

    ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_ctx_new zmq_ctx_new(3)               ØMQ Manual - ØMQ/3.2 ...

  9. 第六周——分析Linux内核创建一个新进程的过程

    "万子恵 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 &q ...

  10. 分析Linux内核创建一个新进程的过程

    一.原理分析 1.进程的描述 进程控制块PCB——task_struct,为了管理进程,内核必须对每个进程进行清晰的描述,进程描述符提供了内核所需了解的进程信息. struct task_struct ...

随机推荐

  1. @FeignClient注解配置局部超时时间、OkHttp长连接和SocketTimeoutException异常解决办法

    问题描述:open feign配置OKhttp调用远程API,连续调用次数较少时,一切正常,次数非常多时(例如,连续请求600次)就抛出java.net.SocketTimeoutException: ...

  2. Filezilla提权漏洞复现

    FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能.可控性.有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户 ...

  3. 使用HTML完成一个最low的页面

    1 <body> 2 <div style="background: burlywood"> 3 <h1 style="text-align ...

  4. Web前端入门第 68 问:JavaScript 事件循环机制中的微任务与宏任务

    JS 是单线程语言.这句话对不对? 按照目前的情况来看,JS 自从支持了 Web Worker 之后,就不再是单线程语言了,但 Worker 的工作线程与主线程有区别,在 Worker 的工作线程中无 ...

  5. 1. 如何通过SSH连接到vector rob

    #anki #vector #robot #digital-dream-labs ssh连接到vector机器人操作系统: 将机器人放到充电底座上,连接电源,机器人自动启动,成功后,双击背部按钮打开蓝 ...

  6. windows vs使用grpc-cpp的坑

    1.通过vcpkg安装protoc和grpc-cpp 2.生成proto协议代码: protoc -I .. -I . --cpp_out=.  test.proto 3.生成grpc服务代码: pr ...

  7. .Net Core Winform 缩放比例不是100%设置界面只能看到一半问题

    <PropertyGroup> <TargetFramework>net8.0-windows</TargetFramework> <Nullable> ...

  8. INNER JOIN, LEFT JOIN, RIGHT JOIN 的区别

    今天我们来一起探索下 JOIN,JOIN 作为数据库操作的核心概念,用于合并两个或多个表中的数据. 一.JOIN (INNER JOIN) 1.基本功能:返回两个表中匹配成功的行. 2.特点: 只保留 ...

  9. Luogu P11157 【MX-X6-T3】さよならワンダーランド 题解

    P11157 [MX-X6-T3]さよならワンダーランド 神秘思维题. 考虑到转化式子,拆成 \(j\ge a_i\) 和 \(j\le a_{i+j}\).前一个不等式是容易满足的,我们只需要在 \ ...

  10. 前端开发系列062-网络篇之前端开发Ajax简单介绍

    一.Ajax技术简单介绍 Ajax是一门异步的用于发送网络请求的技术. 全称为:Async javascript and XML. 简单说明:Ajax 这个概念是由 Jesse James Garre ...