找回密码
 立即注册
首页 业界区 业界 如何通过Python SDK创建一个新的Collection

如何通过Python SDK创建一个新的Collection

聱嘹 2025-8-15 13:36:03
本文介绍如何通过Python SDK创建一个新的Collection。
前提条件


  • 已创建Cluster:创建Cluster
  • 已获得API-KEY:API-KEY管理
  • 已安装最新版SDK:安装DashVector SDK
接口定义

Python示例:
  1. Client.create(
  2.     name: str,
  3.     dimension: int,
  4.     dtype: Union[Type[int], Type[float]]=float,
  5.     fields_schema: Optional[Dict[str, Union[Type[str], Type[int], Type[float], Type[bool], Type[long]]]]=None,
  6.     metric: str='cosine',
  7.     extra_params: Dict[str, Any]=None,
  8.     timeout: Optional[int]=None,
  9.     vectors: Union[None, VectorParam, Dict[str, VectorParam]] = None,
  10.     sparse_vectors: Union[None, Dict[str, VectorParam]] = None,
  11. ) -> DashVectorResponse
复制代码
使用示例

说明
需要使用您的api-key替换示例中的YOUR_API_KEY、您的Cluster Endpoint替换示例中的YOUR_CLUSTER_ENDPOINT,代码才能正常运行。
创建单向量集合

Python示例:
  1. import dashvector
  2. client = dashvector.Client(
  3.     api_key='YOUR_API_KEY',
  4.     endpoint='YOUR_CLUSTER_ENDPOINT'
  5. )
  6. # 创建一个名称为quickstart、向量维度为4、
  7. # 向量数据类型为float(默认)、
  8. # 距离度量方式为dotproduct(内积)的Collection
  9. # 并预先定义四个Field,名称为name、weight、age、id,数据类型分别为str、float、int、dashvector.long
  10. # timeout为-1 ,开启create接口异步模式
  11. ret = client.create(
  12.     name='quickstart',
  13.     dimension=4,
  14.     metric='dotproduct',
  15.     dtype=float,
  16.     # 为保留类型注解的语义明确性,DashVector通过typing模块定义long类型,为需要显式标注大整数场景提供了类型标注支持
  17.     fields_schema={'name': str, 'weight': float, 'age': int, 'id': dashvector.long},
  18.     timeout=-1
  19. )
  20. # 判断collection是否创建成功
  21. if ret:
  22.     print('create collection success!')
  23. # 等同于下列代码
  24. # from dashvector import DashVectorCode
  25. # if ret.code == DashVectorCode.Success:
  26. #     print('create collection success!')
复制代码
创建多向量集合
  1. ret = client.create(
  2.     'multi_vector_demo',
  3.     vectors={
  4.         "title": VectorParam(4),
  5.         "content": VectorParam(6, metric="euclidean"),
  6.     },
  7.     sparse_vectors={
  8.         "abstruct": VectorParam(metric="dotproduct"),
  9.         "keywords": VectorParam(metric="dotproduct"),
  10.         # 稀疏向量索引目前仅支持内积度量,dimension/dtype使用默认值无需设置
  11.     },
  12.     fields_schema={
  13.         'author': str,
  14.     }
  15. )
  16. assert ret
复制代码
说明
多向量不支持仅有1条稠密向量+1条稀疏向量collection的建立,如有此需求,请创建单向量Collection,度量方式选内积。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册