如何通过HTTP API新建Collection

39 阅读1分钟

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


前提条件

Method与URL

HTTP

POST https://{Endpoint}/v1/collections

使用示例

说明

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

创建单向量集合

Shell

# 创建一个名称为quickstart、向量维度为4、
# 向量数据类型为float(默认值)、
# 距离度量方式为dotproduct(内积)的Collection
# 并预先定义三个Field,名称为name、weight、age,数据类型分别为string、float、int

curl -XPOST \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "quickstart", 
    "dimension": 4, 
    "metric": "dotproduct", 
    "fields_schema": {
      "name": "STRING",
      "age": "INT",
      "weight": "FLOAT"
    }
  }' https://YOUR_CLUSTER_ENDPOINT/v1/collections

# example output:
# {"request_id":"19215409-ea66-4db9-8764-26ce2eb5bb99","code":0,"message":""}

创建多向量集合

curl -XPOST \
  -H 'dashvector-auth-token: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "multi_vector_demo", 
    "vectors_schema": {
      "title": {
        "dimension": 4
      },
      "content": {
        "dimension": 6,
        "metric": "dotproduct"
      }
    },
    "fields_schema": {
      "author": "STRING"
    }
}' https://YOUR_CLUSTER_ENDPOINT/v1/collections

# example output:
# {"request_id":"819b6ffe-bf44-42a4-8efa-a53a93d93bcd","code":0,"message":""}

入参描述

参数Location类型必填说明
{Endpoint}pathstrCluster的Endpoint,可在控制台Cluster详情中查看
dashvector-auth-tokenheaderstrapi-key
namebodystr待创建的Collection名称
dimensionbodyint向量维度,取值范围 (1, 20000]
dtypebodystr向量数据类型,"FLOAT"(默认)/"INT"
fields_schemabodyobjectFields定义
metricbodystr距离度量方式,"euclidean"/"dotproduct"/"cosine"(默认)值为cosine时,dtype必须为FLOAT
extra_paramsbodyobject可选参数:- quantize_type:量化策略,详情参考向量动态量化
  • auto_id: 自动生成主键,默认开启 | | vectors_schema | body | object | 否 | 多个向量字段定义,类型为 Map<String, VectorParam>,详情参考多向量检索 |

说明

出参描述

字段类型描述示例
codeint返回值,参考返回状态码说明0
messagestr返回消息success
request_idstr请求唯一id19215409-ea66-4db9-8764-26ce2eb5bb99