说明
embedding 接口升级为 v2 版本,新增长文本窗口模型及稀疏向量产出,支持用量统计。建议迁移到 v2 接口使用 embedding 功能。
data/embedding/version/2 接口用于请求 Embedding 服务,通过深度学习神经网络提取文本、图片、音视频等非结构化数据里的内容和语义,把文本、图片、音视频等变成特征向量。
说明
说明
请求 Embedding 服务的 OpenAPI 接口时,需要构造签名进行鉴权,详细的 OpenAPI 签名调用方法请参见 API签名调用指南。
URI | /api/data/embedding/version/2 | 统一资源标识符 |
---|---|---|
方法 | POST/GET | 客户端对Embedding服务请求的操作类型 |
请求头 | Content-Type: application/json | 请求消息类型 |
Authorization: HMAC-SHA256 *** | 鉴权 |
参数 | 子参数 | 类型 | 是否必选 | 可选值 | 说明 |
---|---|---|---|---|---|
model | model_name | string | 是 | doubao-embedding | 字节跳动研发的语义向量化模型,支持中英双语。当TPM超过5000时请前往火山方舟平台使用。
模型的计费规则可以前往向量库计费查看 说明 doubao-embedding 包括 240515 和 240715 两个版本,可通过 |
doubao-embedding-and-m3 |
模型的计费规则可以前往向量库计费查看 | ||||
doubao-embedding-large | 字节跳动语义向量化模型的最新升级版,采用能力更强的豆包语言模型为基座,支持中、英双语,当TPM超过5000时请前往火山方舟平台使用
模型的计费规则可以前往向量库计费查看 | ||||
doubao-embedding-large-and-m3 |
模型的计费规则可以前往向量库计费查看 | ||||
doubao-embedding-vision | 字节自研的图文多模态向量化模型,主要面向图文多模向量检索的使用场景,支持图片输入及中、英双语文本输入,当TPM超过5000时请前往火山方舟平台使用。
模型的计费规则可以前往向量库计费查看 | ||||
bge-large-zh |
模型的计费规则可以前往向量库计费查看 | ||||
bge-m3 |
模型的计费规则可以前往向量库计费查看 | ||||
bge-large-zh-and-m3 | 基于 bge v1.5 和m3 模型,使用混合检索模式。稠密向量由 bge v1.5 抽取,稀疏向量由 bge m3 抽取。
模型的计费规则可以前往向量库计费查看 | ||||
bge-visualized-m3 | 基于Visualized-BGE和m3 模型, 可对文本或图片进行单独编码,或者对文本图片对联合编码。
模型的计费规则可以前往向量库计费查看 | ||||
params | map | 否 | return_token_usage | 返回请求消耗的token数,默认关闭。 | |
return_dense | 返回稠密向量,默认打开。 | ||||
return_sparse | 返回稀疏向量,支持提取稀疏向量的模型默认打开, 其他模型开启了会报错。 | ||||
embedding_dimension | 用于对向量化结果降维。 | ||||
model_version | 用于切换模型版本。若模型有多版本,可以指定,不填则使用默认版本。当前doubao-embedding 模型支持"240515"(默认)和"240715"版本。 | ||||
data 说明 最大 100 个。 | data_type | string | 是 | text | 文本 |
image | 图片 | ||||
text-image | 文本-图片对联合编码 | ||||
text | string | data_type 为 text 或 text-image时,必选 | data_type=text时,直接传入文本string | ||
image | string | data_type 为 image 或 text-image时,必选 | data_type=image时,传入图片内容的base64编码 |
参数 | 参数说明 |
---|---|
code | 状态码 |
message | 返回信息 |
request_id | 标识每个请求的唯一标识符 |
data | 字典类型,现在包含 |
状态码 | http状态码 | 返回信息 | 状态码说明 |
---|---|---|---|
0 | 200 | success | 请求 Embedding 服务成功。 |
1000003 | 400 | invalid request:%s | 非法参数:
|
1000001 | 401 | unauthorized | 请求头中缺乏鉴权信息。 |
1000025 | 404 | failed to calcTextEmbedding | 请求模型服务失败:
|
curl -i -X POST \ -H 'Content-Type: application/json' \ -H 'Authorization: HMAC-SHA256 ***' \ https://api-vikingdb.volces.com/api/data/embedding/version/2 \ -d '{ "model": { "model_name": "doubao-embedding-and-m3", "params":{ "return_dense":true, "return_sparse":true, "return_token_usage":true, } }, "data": [ { "data_type": "text", "text": "如何使用torchserve部署模型" }, { "data_type": "text", "text": "怎么使用训练机器学习模型" } ] }'
执行成功返回:
HTTP/1.1 200 OK Content-Length: 43 Content-Type: application/json { "code": 0, "data": { "sentence_dense_embedding": [[0.005996500349661112, 0.01326021542580391, -0.00757963274399552, -0.022116572232986055, ...], [0.013724524677071628, 0.013717792739791143, 0.005816815453880527, -0.014414478409530515, ...]], "sentence_sparse_embedding": [{ "ch": 0.13818359375, "serve": 0.3193359375, "tor": 0.1937255859375, "使用": 0.1217041015625, "如何": 0.1177978515625, "模型": 0.258544921875, "部署": 0.2318115234375 }, { "使用": 0.168212890625, "学习": 0.1473388671875, "怎么": 0.1380615234375, "机器": 0.1451416015625, "模型": 0.2425537109375, "训练": 0.275390625 }], "token_usage": { "prompt_tokens": 32, "completion_tokens": 0, "image_tokens": 0, "total_tokens": 32 } }, "message": "success", "request_id": "02174159237407500000000000000000000ffff0a005875459994" }
执行失败返回:
HTTP/1.1 404 OK Content-Length: 43 Content-Type: application/json {"message":"failed to calcTextEmbedding, ModelNotFoundException: Model not found: bge-large-zh","code":1000025, "request_id":"021695029736548fd001de66666000000000000000000029aa917"}