文本向量
AI搜索開放平臺(tái)支持通過API的方式調(diào)用文本向量服務(wù),您可以使用下面服務(wù)將文本數(shù)據(jù)轉(zhuǎn)化為稠密向量形式表達(dá),可用于信息檢索、文本分類、相似性比較等場(chǎng)景。
服務(wù)名稱 | 服務(wù)ID | 服務(wù)描述 |
OpenSearch通用文本向量服務(wù)-001 | ops-text-embedding-001 |
|
OpenSearch文本向量服務(wù)-中文-001 | ops-text-embedding-zh-001 |
|
OpenSearch文本向量服務(wù)-英文-001 | ops-text-embedding-en-001 |
|
OpenSearch通用文本向量服務(wù)-002 | ops-text-embedding-002 | 相比001模型支持更多語(yǔ)言,同時(shí)在Retrieval任務(wù)中表現(xiàn)更佳
|
前提條件
獲取身份鑒權(quán)信息
通過API調(diào)用AI搜索開放平臺(tái)服務(wù)時(shí),需要對(duì)調(diào)用者身份進(jìn)行鑒權(quán),如何獲取鑒權(quán)信息請(qǐng)參見獲取API-KEY。
獲取服務(wù)調(diào)用地址
支持通過公網(wǎng)和VPC兩種方式調(diào)用服務(wù),詳情請(qǐng)參見獲取服務(wù)接入地址。
請(qǐng)求說(shuō)明
公共說(shuō)明
請(qǐng)求body最大不能超過8MB。
請(qǐng)求方式
POST
URL
{host}/v3/openapi/workspaces/{workspace_name}/text-embedding/{service_id}
host:調(diào)用服務(wù)的地址,支持通過公網(wǎng)和VPC兩種方式調(diào)用API服務(wù),可參見獲取服務(wù)接入地址。
workspace_name:工作空間名稱,例如default。
service_id: 系統(tǒng)內(nèi)置服務(wù)id,例如ops-text-embedding-001。
請(qǐng)求參數(shù)
Header參數(shù)
API-KEY認(rèn)證
參數(shù) | 類型 | 必填 | 描述 | 示例值 |
Content-Type | String | 是 | 請(qǐng)求類型:application/json | application/json |
Authorization | String | 是 | API-Key | Bearer OS-d1**2a |
Body參數(shù)
參數(shù) | 類型 | 必填 | 描述 | 示例值 |
input | Array/String | 是 | 輸入內(nèi)容,支持多條文本輸入,每次請(qǐng)求最多 32 條,每一條的長(zhǎng)度取決于選擇的模型。不支持空字符串。 | ["科學(xué)技術(shù)是第一生產(chǎn)力","opensearch產(chǎn)品文檔"] |
input_type | String | 否 | input的數(shù)據(jù)類型
| document |
返回參數(shù)
參數(shù) | 類型 | 描述 | 示例值 |
request_id | String | 系統(tǒng)對(duì)一次API調(diào)用賦予的唯一標(biāo)識(shí)。 | B4AB89C8-B135-****-A6F8-2BAB801A2CE4 |
latency | Float/Int | 請(qǐng)求耗時(shí),單位ms。 | 10 |
usage | Object | 本次調(diào)用產(chǎn)生的計(jì)量信息。 | "usage": { "token_count": 3072 } |
usage.token_count | Int | Token數(shù)量。 | 3072 |
result.embeddings | List | 輸出embedding內(nèi)容,是一個(gè)由結(jié)果組成的數(shù)組。 | [{ "index": 0, "embedding": [0.003143,0.009750,...,-0.017395] }, {}] |
result.embeddings[].index | Int | 對(duì)應(yīng)請(qǐng)求文本在input中的序號(hào)。 | 0 |
result.embeddings[].embedding | List(Float) | 向量化結(jié)果。 | [0.003143,0.009750,省略,-0.017395] |
Curl請(qǐng)求示例
curl -XPOST -H"Content-Type: application/json"
"http://****-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/text-embedding/ops-text-embedding-001"
-H "Authorization: Bearer 您的API-KEY"
-d "{
\"input\": [
\"科學(xué)技術(shù)是第一生產(chǎn)力\",
\"opensearch產(chǎn)品文檔\"
],
\"input_type\": \"query\"
}"
響應(yīng)示例
正常響應(yīng)示例
{
"request_id": "B4AB89C8-B135-****-A6F8-2BAB801A2CE4",
"latency": 38,
"usage": {
"token_count": 3072
},
"result": {
"embeddings": [
{
"index": 0,
"embedding": [
-0.02868066355586052,
0.022033605724573135,
-0.0417383536696434,
-0.044081952422857285,
0.02141784131526947,
-8.240503375418484E-4,
-0.01309406291693449,
-0.02169642224907875,
-0.03996409475803375,
0.008053945377469063,
...
-0.05131729692220688,
-0.016595875844359398
]
}
]
}
}
異常響應(yīng)示例
在訪問請(qǐng)求出錯(cuò)的情況下,輸出的結(jié)果中會(huì)通過code和message指明出錯(cuò)原因。
{
"request_id": "651B3087-8A07-****-B931-9C4E7B60F52D",
"latency": 0,
"code": "InvalidParameter",
"message": "JSON parse error: Cannot deserialize value of type `InputType` from String \"xxx\""
}
狀態(tài)碼說(shuō)明
請(qǐng)參見AI搜索開放平臺(tái)狀態(tài)碼說(shuō)明。