Tüm Ürünler
Search
Belge Merkezi

Object Storage Service:QueryVectors

Son Güncelleme:Oct 02, 2026

QueryVectors işlemini kullanarak vektör benzerlik araması yapın.

Not

QueryVectors, Standard mod dizinlerinde vektör benzerlik araması yapar. Fusion mod dizinleri için bunun yerine QueryVectorsFusion işlemini kullanın. Geriye dönük uyumluluk amacıyla, Fusion mod bir dizinin şemasında yalnızca float32 adlı tek bir vektör alanı tanımlanmışsa aramayı QueryVectors işlemiyle de sürdürebilirsiniz.

İzinler

Varsayılan olarak bir Alibaba Cloud hesabının tam izni bulunurken bir RAM kullanıcısının veya RAM rolünün izni yoktur. Alibaba Cloud hesap sahibi veya yönetici RAM ilkesi veya paket ilkesi ile izin vermelidir.


API


Eylem


Açıklama


QueryVectors


oss:QueryVectors


Vektör verilerini sorgular.

İstek sözdizimi

Bir vektör dizini oluşturulduktan sonraki 30 saniye içinde QueryVectors çağrılarının hatırlama oranı düşük olabilir. PutVectors işlemiyle yazılan veriler yaklaşık 2 ila 3 saniye içinde sorgulanabilir duruma gelir.
POST /?queryVectors HTTP/1.1
Host: examplebucket-123***456.cn-hangzhou-internal.oss-vectors.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Content-type: application/json

{
   "filter": {
       "$and": [{
           "type": {
               "$in": ["comedy", "documentary"]
           }
       }, {
           "year": {
               "$eq": "2020"
           }
       }]
    },
   "indexName": "string",
   "queryVector": {
       "float32":[float]
    },
   "returnDistance": boolean,
   "returnMetadata": boolean,
   "topK": int
}

İstek üst bilgileri

Bu işlem yalnızca ortak istek üst bilgilerini kullanır. Daha fazla bilgi için bkz. Ortak HTTP üst bilgileri.

İstek parametreleri

Parametre

Tür

Gerekli

Örnek

Açıklama

indexName

String

Evet

vectorindex1

Vektör dizininin adı.

queryVector

Konteyner

Evet

Yok

Sorgu vektörü. Boyut, vektör dizininin boyutuyla eşleşmelidir.

filter

Konteyner

Hayır

Yok

Verileri meta verilere göre filtreler. Meta veri filtreleri için aşağıdaki sınırlamalar geçerlidir:

  • Tek bir filtreye ait meta verilerin toplam boyutu 20 KB'ı aşamaz.

  • Tek bir filtreye ait meta veri öğelerinin sayısı 1.024'ü aşamaz.

  • Filtre koşulları en fazla 8 düzey derinliğinde iç içe yerleştirilebilir.

returnDistance

Boolean

Hayır

false

Benzerlik mesafesinin döndürülüp döndürülmeyeceğini belirtir. Geçerli değerler:

  • true

  • false (varsayılan)

returnMetadata

Boolean

Hayır

false

Meta verilerin döndürülüp döndürülmeyeceğini belirtir. Geçerli değerler:

  • true

  • false (varsayılan)

topK

Sayı

Evet

10

Döndürülecek en benzer sonuçların sayısı. Değer 1 ile 500 arasında bir tamsayı olmalıdır.

Filtre operatörleri


Operatör


Tür


Açıklama


$eq


Dize, Sayı, Boolean


Tam eşleşme (tek bir değer için). Dizi türündeki meta veriler üzerinde kullanıldığında operatör, değer dizideki herhangi bir öğeyle eşleşiyorsa true döndürür.


$ne


Dize, Sayı, Boolean


Belirtilen değere eşit olmayan değerlerle eşleşir.


$gt


Sayı


Büyüktür.


$gte


Sayı


Büyük veya eşittir.


$lt


Sayı


Küçüktür.


$lte


Sayı


Küçük veya eşittir.


$in


Boş olmayan ilkel değer dizisi


Bir dizideki herhangi bir değerle eşleşir (SQL IN işlemine benzer)


$nin


Boş olmayan ilkel değer dizisi


Dizideki değerlerin hiçbiriyle eşleşmez (SQL NOT IN işlemine benzer).


$exists


Boolean


Bir meta veri anahtarının var olup olmadığını kontrol eder.


$and


Boş olmayan filtre dizisi


Bir dizi filtre koşulunda mantıksal AND işlemi uygular.


$or


Boş olmayan filtre dizisi


Bir dizi filtre koşulunda mantıksal OR işlemi uygular.


$nor


Boş olmayan filtre dizisi


Bir dizi filtre koşulunda mantıksal NOR işlemi uygular.

Filtre örnekleri

Aşağıda yaygın Filter ifade örnekleri verilmiştir. Operatör belirtilmediğinde varsayılan olarak $eq kullanılır.

// Simple equality (uses $eq by default when the operator is omitted)
{"category": "finance"}

// Explicit equality / inequality
{"category": {"$eq": "finance"}}
{"category": {"$ne": "archived"}}

// Numeric comparison
{"created_year": {"$gt": 2023}}
{"created_year": {"$gte": 2024}}
{"created_year": {"$lt": 2026}}
{"created_year": {"$lte": 2025}}

// Array matching
{"language": {"$in": ["zh", "en"]}}
{"language": {"$nin": ["ja", "ko"]}}

// Existence check
{"author": {"$exists": true}}

// Logical combination
{"$and": [{"category": {"$eq": "finance"}}, {"created_year": {"$gte": 2024}}]}
{"$or": [{"category": {"$eq": "finance"}}, {"category": {"$eq": "tech"}}]}
{"$nor": [{"category": {"$eq": "finance"}}, {"category": {"$eq": "tech"}}]}

// Multiple conditions on the same field (range)
{"score": {"$gte": 0.6, "$lte": 0.95}}

Yanıt üst bilgileri

Bu işlem yalnızca ortak yanıt üst bilgilerini kullanır. Daha fazla bilgi için bkz. Ortak HTTP üst bilgileri.

Yanıt öğeleri


Parametre


Tür


Örnek


Açıklama


vectors


Nesne dizisi


/


Vektör arama sonuçlarının listesi.


key


Dize


doc-001

Vektör birincil anahtarı.

Üst düğüm: vectors


distance


float32


0.25

Döndürülen vektör ile sorgu vektörü arasındaki benzerlik mesafesi. Daha küçük bir değer daha yüksek benzerliği gösterir. Bu parametre yalnızca returnDistance true olarak ayarlandığında döndürülür.

Üst düğüm: vectors


metadata


Nesne


/

Vektörün tam meta verileri. Bu parametre yalnızca returnMetadata true olarak ayarlandığında döndürülür.

Üst düğüm: vectors

Örnekler

POST /?queryVectors 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

{
   "filter": {
       "$and": [{
           "category": {
               "$in": ["technology", "science"]
           }
       }, {
           "year": {
               "$eq": "2020"
           }
       }]
    },
   "indexName": "vectorindex1",
   "queryVector": {
       "float32": [0.15, 0.25, 0.35, 0.45, 0.55]
    },
   "returnDistance": true,
   "returnMetadata": true,
   "topK": 5
}

Örnek yanıt

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": [ 
      { 
         "distance": 0.12,
         "key": "doc-001",
         "metadata": {
             "category": ["technology", "ai"],
             "title": "Introduction to Vector Search",
             "year": "2020"
         }
      },
      { 
         "distance": 0.25,
         "key": "doc-003",
         "metadata": {
             "category": ["science"],
             "title": "Advanced Vector Operations",
             "year": "2020"
         }
      }
   ]
}

SDK

QueryVectors işlemi aşağıdaki SDK'larda kullanılabilir:

ossutil CLI

Bu işlemi gerçekleştirmek için ossutil komut satırı aracındaki query-vectors komutunu kullanabilirsiniz.

Hata kodları

Hata kodu

HTTP durum kodu

Açıklama

VectorIndexParameterInvalid

400

İstek geçersiz vektör dizini parametreleri içeriyor.

MalformedJson

400

İstek gövdesinin JSON biçimi geçersiz.

AccessDenied

403

Bu hatanın olası nedenleri şunlardır:

  • İstek kullanıcı kimlik doğrulama bilgilerini içermiyor.

  • İşlem için gerekli izinlere sahip değilsiniz.

NoSuchVectorIndex

404

Belirtilen vektör dizini mevcut değil.

QpsLimitExceeded

503

İstek hızı QPS sınırını aştı. İstekleriniz kısıtlanıyor.