You need to enable JavaScript to run this app.
导航

embedding

最近更新时间2024.01.19 13:57:50

首次发布时间2023.11.03 15:00:09

概述

/data/embedding 接口用于请求 Embedding 服务,通过深度学习神经网络提取文本、图片、音视频等非结构化数据里的内容和语义,把文本、图片、音视频等变成特征向量。

说明

  • 当前 Embedding 服务仅支持将文本生成向量。
  • 当前对 Embedding 模型设置了 TPM(Tokens Per Minute,每分钟 tokens 数量)的调用限制,每个账号(含主账号下的所有子账号,合并计算)的 TPM 不超过 120000/模型。

请求接口

说明

请求 Embedding 服务的 OpenAPI 接口时,需要构造签名进行鉴权,详细的 OpenAPI 签名调用方法请参见 API签名调用指南

URI

/api/data/embedding

统一资源标识符

方法

POST/GET

客户端对Embedding服务请求的操作类型

请求头

Content-Type: application/json

请求消息类型

Authorization: HMAC-SHA256 ***

鉴权

请求参数

参数

子参数

类型

是否必选

说明

model

model_name

string

指定模型名称,当前支持的模型有 bge-large-zh、multilingual_e5_large。

  • bge-large-zh:最多能处理 512 个 token,数量超长时会截断,数量不足时会做 padding。 输出 embedding 维度是 1024,类型是 float。
  • multilingual_e5_large:最多能处理 514 个 token,数量超长时会截断,数量不足时会做 padding。 输出 embedding 维度是 768,类型是 float。

data

说明

最大 100 个。

data_type

string

指定数据类型,当前仅支持文本 text。

text

string

当 data_type=text 时,直接传入类型为 string 的文本。

响应消息

参数

参数说明

code

状态码

message

返回信息

request_id

标识每个请求的唯一标识符

data

embedding 结果。

状态码说明

状态码

http状态码

返回信息

状态码说明

0

200

success

请求 Embedding 服务成功。

1000003

400

invalid request:%s

非法参数:

  • 缺失必选参数, 如 model_name。
  • 字段值与字段类型不匹配。

1000001

401

unauthorized

请求头中缺乏鉴权信息。

1000025

404

failed to calcTextEmbedding

请求模型服务失败:

  • 模型名称不对。
  • 输入类型和模型对应不上。

完整示例

请求消息

curl -i -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: HMAC-SHA256 ***' \
  http://***/api/data/embedding \
  -d '{
        "model": {
                "model_name": "bge-large-zh"
        },
        "data": [
                {
                        "data_type": "text",
                        "text": "如何使用torchserve部署模型"
                },
                {
                        "data_type": "text",
                        "text": "怎么使用训练机器学习模型"
                }
        ]
}'

响应消息

执行成功返回:

HTTP/1.1 200 OK
Content-Length: 43
Content-Type: application/json
 
{
    "code":0,
    "message":"success",
    "request_id":"021695029736548fd001de66666000000000000000000029aa917",
    "data": [ // 输出是个二维数组, [batch_size, model_output_dimension]
        [
            0.014988808892667294,
            -0.025562003254890442,
            -0.039532456547021866,
            ...
        ],
        ...
    ]
}

执行失败返回:

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"}