/collection/create 接口用于创建一个新的数据集 Collection。创建成功后,可以写入数据。
说明
说明
请求向量数据库 VikingDB 的 OpenAPI 接口时,需要构造签名进行鉴权,详细的 OpenAPI 签名调用方法请参见 API签名调用指南。
URI | /api/collection/create | 统一资源标识符 |
---|---|---|
请求方法 | POST | 客户端对向量数据库服务器请求的操作类型 |
请求头 | Content-Type: application/json | 请求消息类型 |
Authorization: HMAC-SHA256 *** | 鉴权 |
参数 | 子参数 | 类型 | 是否必选 | 默认值 | 参数说明 |
---|---|---|---|---|---|
collection_name | -- | string | 是 | -- | 指定创建的 Collection 名称。
|
collection_aliases | -- | array | 否 | -- | 自定义数据集的别名。
|
description | -- | string | 否 | "" | 自定义 Collection 的描述。
|
primary_key | -- | string | 是 | -- | 主键用于唯一标识一行数据。
|
fields 说明 一个 Collection 里的 fields 数量上限是 200。 | field_name | string | 是 | -- | 指定自定义字段的名称。
|
field_type | string | 是 | -- | 指定自定义字段类型,可选值详见 field_type 可选值说明。 | |
default_val | 和field_type一致 | 否 | -- | 指定自定义字段默认值,默认值详见 field_type 可选值说明。
| |
dim | int | field_type 为vector 时必选 | -- | 指定自定义字段向量维度。
| |
pipeline_name | string | field_type 为 text 时可选 | -- | 文本。纯文本预处理能力 pipeline 是指向量数据库将文本切片、文本向量化、入库、存储自动化的预处理流程。支持以string形式写入原始数据。
|
字段类型 | 可用索引类型 | default_val默认值 | 数据写入时 | default_val | 可为主键 | 说明 |
---|---|---|---|---|---|---|
int64 | 范围 | 0 | int64 范围 | int64 范围 | 是 | 整数 |
float32 | 范围 | 0.0 | float32 范围 | float32 范围 | 否 | 浮点数 |
string | 枚举 | "default" | -- | 长度<=128 | 是 | 字符串 |
bool | 枚举 | false | true/false | true/false | 否 | 布尔类型 |
list<string> | 枚举 | ["default"] | List 长度<=32 | List 长度<=32 | 否 | 字符串数组 |
list<int64> | 枚举 | [0] | List 长度<=32 | List 长度<=32 | 否 | 整数数组 |
vector | 向量 | -- | 维度 4-2048 | -- | 否 | 稠密向量。
|
sparse_vector | 稀疏向量 | -- | 非零元下标无限制 | -- | 否 | 稀疏向量。
|
text | -- | -- | -- | -- | 否 | 文本,注意事项:
|
参数 | 参数说明 |
---|---|
code | 状态码 |
message | 返回信息 |
request_id | 标识每个请求的唯一标识符 |
状态码 | http状态码 | 返回信息 | 状态码说明 |
---|---|---|---|
0 | 200 | success | 创建 Collection 执行成功。 |
1000004 | 400 | collection exist | Collection 已存在。 |
1000003 | 400 | invalid request:%s | 非法参数:
|
1000001 | 401 | unauthorized | 请求头中缺乏鉴权信息。 |
1000002 | 403 | no permission | 权限不足。 |
创建带有稠密向量、稀疏向量字段和标量字段的 Collection 为例:
curl -i -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: HMAC-SHA256***' \ https://api-vikingdb.volces.com/api/collection/create \ -d '{ "collection_name": "test_name", "description": "test dataset", "primary_key": "id", "fields": [ { "field_name": "id", "field_type": "int64" }, { "field_name": "text", "field_type": "string", "default_val": "" }, { "field_name": "vector_field", "field_type": "vector", "dim": 768 }, { "field_name": "sparse_vector_field", "field_type": "sparse_vector" }, { "field_name": "time", "field_type": "int64", "default_val": 0 }, { "field_name": "author", "field_type": "string", "default_val": "null" }, ] }'
创建带有文本字段的 Collection 为例:
curl -i -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: HMAC-SHA256***' \ https://api-vikingdb.volces.com/api/collection/create \ -d '{ "collection_name": "test_raw_data_collection", "description": "test_raw_data_collection", "primary_key": "id", "fields": [{ "field_name": "id", "field_type": "int64", "default_val": 0 }, { "field_name": "gap", "field_type": "float32", "default_val": 3.1 }, { "field_name": "content", # 文本字段名 "field_type": "text", "pipeline_name": "text_split_bge_large_zh" }] }'
执行成功返回:
HTTP/1.1 200 OK Content-Length: 43 Content-Type: application/json {"code":0,"message":"success","request_id":"021695029537650fd001de666660000000000000000000230da93"}
执行失败返回:
HTTP/1.1 400 OK Content-Length: 43 Content-Type: application/json {"code":1000004,"message":"collection exist","request_id":"021695029537650fd001de666660000000000000000000230da93"}