本文介紹如何通過Python SDK創建一個新的Collection。
前提條件
已創建Cluster:創建Cluster。
已獲得API-KEY:API-KEY管理。
已安裝最新版SDK:安裝DashVector SDK。
接口定義
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]]]]=None,
metric: str='cosine',
extra_params: Dict[str, Any]=None,
timeout: Optional[int]=None,
vectors: Union[None, VectorParam, Dict[str, VectorParam]] = None,
) -> DashVectorResponse
使用示例
需要使用您的api-key替換示例中的YOUR_API_KEY、您的Cluster Endpoint替換示例中的YOUR_CLUSTER_ENDPOINT,代碼才能正常運行。
創建單向量集合
import dashvector
client = dashvector.Client(
api_key='YOUR_API_KEY',
endpoint='YOUR_CLUSTER_ENDPOINT'
)
# 創建一個名稱為quickstart、向量維度為4、
# 向量數據類型為float(默認)、
# 距離度量方式為dotproduct(內積)的Collection
# 并預先定義三個Field,名稱為name、weight、age,數據類型分別為str、float、int
# timeout為-1 ,開啟create接口異步模式
ret = client.create(
name='quickstart',
dimension=4,
metric='dotproduct',
dtype=float,
fields_schema={'name': str, 'weight': float, 'age': int},
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"),
},
fields_schema={
'author': str,
}
)
assert ret
入參描述
參數 | 類型 | 默認值 | 說明 |
name | str | - | 待創建的Collection名稱 |
dimension | int | - | 向量維度 |
dtype(可選) | Union[Type[int], Type[float]] | float | 向量數據類型 |
fields_schema (可選) | Optional[Dict[str,Union[Type[str], Type[int], Type[float], Type[bool]]]] | None | Fields定義 |
metric(可選) | str | cosine | 距離度量方式, 值為 |
extra_params(可選) | Dict[str, Any] | None | 可選參數:
|
timeout(可選) | Optional[int] | None |
|
vectors (可選) | Union[None, VectorParam, Dict[str, VectorParam]] | None | 可選參數:
|
創建Collection時預先定義Fields的收益見Schema Free
量化策略詳情可參考向量動態量化
出參描述
返回結果為DashVectorResponse對象,DashVectorResponse對象中可獲取本次操作結果信息,如下表所示。
字段 | 類型 | 描述 | 示例 |
code | int | 返回值,參考返回狀態碼說明 | 0 |
message | str | 返回消息 | success |
request_id | str | 請求唯一id | 19215409-ea66-4db9-8764-26ce2eb5bb99 |