GetVectors API を呼び出して、キーを指定してベクトルデータを取得します。
アクセス許可
Alibaba Cloud アカウントには、デフォルトですべてのアクセス許可があります。Alibaba Cloud アカウント配下の Resource Access Management (RAM) ユーザーまたは RAM ロールには、デフォルトではアクセス許可がありません。Alibaba Cloud アカウントまたは管理者は、RAM ポリシーまたはバケットポリシーを使用して、この操作のアクセス許可を付与する必要があります。
|
API |
アクション |
説明 |
|
GetVectors |
|
ベクトルデータを取得します。 |
リクエスト構文
POST /?getVectors HTTP/1.1
Host: examplebucket-123***456.cn-hangzhou-internal.oss-vectors.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Content-type: application/json
{
"indexName": "string",
"keys": [string, string, string],
"returnData": boolean,
"returnMetadata": boolean
}
リクエストヘッダー
この操作では、共通リクエストヘッダーのみを使用します。詳細については、「共通 HTTP ヘッダー」をご参照ください。
リクエストパラメータ
|
名前 |
データ型 |
必須 |
例 |
説明 |
|
indexName |
String |
はい |
vectorindex1 |
インデックスの名前です。 |
|
keys |
文字列の配列 |
はい |
["doc-001", "doc-002"] |
クエリ対象のベクトルのプライマリキーです。重複したプライマリキーも指定できます。制約:
|
|
returnData |
Boolean |
いいえ |
false |
ベクトルデータを返すかどうかを指定します。有効な値:
|
|
returnMetadata |
Boolean |
いいえ |
false |
メタデータを返すかどうかを指定します。有効な値:
|
レスポンスヘッダー
この操作では、共通レスポンスヘッダーのみを使用します。詳細については、「共通 HTTP ヘッダー」をご参照ください。
レスポンス要素
|
名前 |
データ型 |
例 |
説明 |
|
vectors |
オブジェクトの配列 |
- |
返されるベクトルのリストです。クエリで指定したプライマリキーが存在しない場合、エラーは報告されず、そのキーに対応する結果は返されません。 |
|
key |
String |
doc-001 |
ベクトルのプライマリキーです。リクエストで指定したキーに対応するベクトルが存在しない場合でも、エラーは報告されません。レスポンスには、存在するベクトルのデータのみが含まれます。 親ノード:vectors |
|
data |
Object |
- |
ベクトルデータです。このパラメータは、returnData が true に設定されている場合にのみ返されます。 親ノード:vectors |
|
metadata |
Object |
- |
メタデータです。このパラメータは、returnMetadata が true に設定されている場合にのみ返されます。 親ノード:vectors |
例
リクエストの例
POST /?getVectors HTTP/1.1
Host: examplebucket-123***456.cn-hangzhou-internal.oss-vectors.aliyuncs.com
Date: Thu, 17 Apr 2025 01:33:47 GMT
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218
Content-type: application/json
{
"indexName": "vectorindex1",
"keys": ["doc-001", "doc-002"],
"returnData": true,
"returnMetadata": true
}
レスポンスの例
HTTP/1.1 200 OK
x-oss-request-id: 534B371674E88A4D8906****
Date: Thu, 17 Apr 2025 01:33:47 GMT
Connection: keep-alive
Server: AliyunOSS
Content-type: application/json
{
"vectors": [
{
"data": {
"float32": [0.1, 0.2, 0.3, 0.4, 0.5]
},
"key": "doc-001",
"metadata": {
"category": ["technology", "ai"],
"title": "Introduction to Vector Search"
}
},
{
"data": {
"float32": [0.2, 0.3, 0.4, 0.5, 0.6]
},
"key": "doc-002",
"metadata": {
"category": ["science"],
"title": "Advanced Vector Operations"
}
}
]
}
SDK
以下の SDK が GetVectors 操作をサポートしています。
ossutil コマンドラインインターフェイス
GetVectors 操作に対応する ossutil コマンドについては、「get-vectors」をご参照ください。
エラーコード
|
エラーコード |
HTTP ステータスコード |
説明 |
|
VectorIndexParameterInvalid |
400 |
リクエストで指定されたベクトルインデックスパラメータが無効です。 |
|
MalformedJson |
400 |
リクエスト本文の JSON 形式が無効です。 |
|
AccessDenied |
403 |
このエラーの考えられる原因:
|
|
NoSuchVectorIndex |
404 |
指定されたベクトルインデックスが存在しません。 |
|
QpsLimitExceeded |
503 |
レート制限。 |