AI搜尋開放平台支援通過API的方式調用文本稀疏向量服務,您可以使用下面服務將文本資料轉化為稀疏向量形式表達,稀疏向量儲存空間更小,常用於表達關鍵詞和詞頻資訊,可與稠密向量搭配進行混合檢索,提升檢索效果。
|
服務名稱 |
服務ID |
服務描述 |
API調用QPS限制(含主帳號與RAM子帳號) |
|
OpenSearch文本稀疏向量服務-001 |
ops-text-sparse-embedding-001 |
|
50 說明
如需擴充QPS,請通過工單聯絡支援人員協助。 |
前提條件
-
擷取身份鑒權資訊
通過API調用AI搜尋開放平台服務時,需要對調用者身份進行鑒權,如何擷取鑒權資訊請參見擷取API-KEY。
-
擷取服務調用地址
支援通過公網和VPC兩種方式調用服務,詳情請參見擷取服務接入地址。
公用說明
-
請求body最大不能超過8MB。
請求方式
POST
URL
{host}/v3/openapi/workspaces/{workspace_name}/text-sparse-embedding/{service_id}
參數說明
-
host:調用服務的地址,支援通過公網和VPC兩種環境調用API服務,可參見擷取服務接入地址。
在控制台API Keys頁面的訪問網域名稱地區可查看公網和私網API網域名稱,網域名稱格式為
http://<執行個體標識>.opensearch.aliyuncs.com(均支援HTTPS)。私網API網域名稱適用於上海、杭州、深圳、北京、張家口、青島地區的VPC環境。 -
workspace_name:工作空間名稱,例如default。
-
service_id: 系統內建服務ID,例如ops-text-sparse-embedding-001。
請求參數
Header參數
API-KEY認證
|
參數 |
類型 |
必填 |
描述 |
樣本值 |
|
Content-Type |
String |
是 |
請求類型:application/json |
application/json |
|
Authorization |
String |
是 |
API-Key |
Bearer OS-d1**2a |
Body參數
|
參數 |
類型 |
必填 |
描述 |
樣本值 |
|
input |
Array/String |
是 |
支援多條文本輸入,每次請求最多 32 條;每一條的長度取決於選擇的模型。不支援Null 字元串。 |
["科學技術是第一生產力","opensearch產品文檔"] |
|
input_type |
String |
否 |
指明input的資料類型,取值:
預設值為 document |
document |
|
return_token |
boolean |
否 |
是否返回分詞的常值內容,取值:
預設值為false,不返回分詞後的常值內容。 |
false |
返回參數
|
參數 |
類型 |
描述 |
樣本值 |
|
request_id |
String |
系統對一次API調用賦予的唯一標識。 |
B4AB89C8-B135-****-A6F8-2BAB801A2CE4 |
|
latency |
Float/Int |
請求耗時,單位ms。 |
10 |
|
usage |
Object |
本次調用產生的計量資訊。 |
"usage": { "token_count": 11 } |
|
usage.token_count |
Int |
Token數量。 |
11 |
|
result.sparse_emebddings |
List |
本次請求的演算法輸出內容,是一個由結構組成的數組,每一個數組中包含一個對應輸入text的演算法輸出內容。 |
[ { "index": 0, "embedding": [{ "tokenId": 6, "weight": 0.10137939453125 }] }, { "index": 1, "embedding": [{ "tokenId": 9803, "weight": 0.1951904296875 }] } ] |
|
result.sparse_embeddings[].index |
Int |
對應請求文本在input中的序號。 |
0 |
|
result.sparse_embeddings[].embedding |
List |
稀疏向量化結果。 |
[ { "token":"test", "token_id": 900, "weight":0.423 }] |
|
result.sparse_embeddings[].embedding[].token |
String |
文本Token,請求參數中設定return_token為true時,返回該值。 |
"xxx" |
|
result.sparse_embeddings[].embedding[].token_id |
Int |
文本Token的ID。 |
123 |
|
result.sparse_embeddings[].embedding[].weight |
Float |
權重。 |
0.121 |
Curl請求樣本
curl -XPOST -H"Content-Type: application/json"
"http://****-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/text-sparse-embedding/ops-text-sparse-embedding-001"
-H "Authorization: Bearer 您的API-KEY"
-d "{
\"input\": [
\"科學技術是第一生產力\",
\"opensearch產品文檔\"
],
\"input_type\": \"query\",
\"return_token\": false
}"
響應樣本
正常響應樣本
{
"request_id": "75C50B5B-E79E-4930-****-F48DBB392231",
"latency": 22,
"usage": {
"token_count": 11
},
"result": {
"sparse_embeddings": [
{
"index": 0,
"embedding": [
{
"tokenId": 6,
"weight": 0.10137939453125
},
{
"tokenId": 163040,
"weight": 0.2841796875
},
{
"tokenId": 354,
"weight": 0.1431884765625
},
{
"tokenId": 5998,
"weight": 0.161376953125
},
{
"tokenId": 8550,
"weight": 0.2388916015625
},
{
"tokenId": 2017,
"weight": 0.1614990234375
}
]
},
{
"index": 1,
"embedding": [
{
"tokenId": 9803,
"weight": 0.1951904296875
},
{
"tokenId": 86250,
"weight": 0.317138671875
},
{
"tokenId": 5889,
"weight": 0.17529296875
},
{
"tokenId": 2564,
"weight": 0.11614990234375
},
{
"tokenId": 59529,
"weight": 0.1666259765625
}
]
}
]
}
}
異常響應樣本
在訪問請求出錯的情況下,輸出的結果中會通過code和message指明出錯原因。
{
"request_id": "45C8C9E5-6BCB-****-80D3-E298F788512B",
"latency": 0,
"code": "InvalidParameter",
"message": "JSON parse error: Unexpected character ..."
}
狀態代碼說明
請參見AI搜尋開放平台狀態代碼說明。