如要設定相似性搜尋的索引,您需要設定下列欄位。
如需設定索引的操作說明,請參閱「設定索引參數」。
NearestNeighborSearch
NearestNeighborSearchConfig
| 欄位 | |
|---|---|
dimensions |
這是必要旗標,輸入向量的維度數量。僅用於密集嵌入。 |
approximateNeighborsCount |
如果使用 tree-AH 演算法,則為必要項目。 執行確切重新排序之前,要透過近似搜尋尋找的預設鄰點數量。確切重新排序程序會使用更耗費資源的距離計算,重新排序近似搜尋演算法傳回的結果。 |
ShardSize |
ShardSize
每個分片的容量。如果索引很大,系統會根據指定的資料分割大小進行資料分割。在服務期間,每個分片都會在個別節點上提供服務,並可獨立擴充。 |
distanceMeasureType |
最鄰近搜尋所使用的距離度量。 |
featureNormType |
要針對各個向量執行的正規化類型。 |
algorithmConfig |
oneOf:
Vector Search 用於高效率搜尋的演算法設定。僅適用於密集嵌入。
|
DistanceMeasureType
| 列舉 | |
|---|---|
SQUARED_L2_DISTANCE |
歐幾里得 (L2) 距離 |
L1_DISTANCE |
曼哈頓 (L1) 距離 |
DOT_PRODUCT_DISTANCE |
預設值。定義為點積的負數。請注意,稀疏索引僅支援點積距離。 |
COSINE_DISTANCE |
餘弦距離。強烈建議您將 DOT_PRODUCT_DISTANCE 與 UNIT_L2_NORM 搭配使用,而不要使用 COSINE 距離。我們的演算法已針對 DOT_PRODUCT 距離進行最佳化,如將 DOT_PRODUCT 距離與 UNIT_L2_NORM 搭配使用,在數學上就等同於 COSINE 距離,並能產生相同排名。 |
ShardSize
| 列舉 | |
|---|---|
SHARD_SIZE_SMALL |
每個分片 2 GiB |
SHARD_SIZE_MEDIUM |
每個分片 20 GiB |
SHARD_SIZE_LARGE |
每個分片 50 GiB |
FeatureNormType
| 列舉 | |
|---|---|
UNIT_L2_NORM |
單位 L2 正規化類型。 |
NONE |
預設值。未指定任何正規化類型。 |
TreeAhConfig
這些是 tree-AH 演算法要選取的欄位。
| 欄位 | |
|---|---|
fractionLeafNodesToSearch |
double |
| 任何查詢可能獲得搜尋的預設分葉節點比率。 必須介於 0.0 到 1.0 之間 (不含 0.0 與 1.0)。如未設定,則預設值為 0.05。 | |
leafNodeEmbeddingCount |
int32 |
| 每個分葉節點的嵌入項目數量。如未設定,則預設值為 1000。 | |
leafNodesToSearchPercent |
int32 |
已淘汰,請改用 fractionLeafNodesToSearch。任何查詢可能獲得搜尋的預設分葉節點百分比。 必須介於 1 到 100 之間 (含 1 和 100)。如未設定,預設值為 10 (即 10%)。 |
|
BruteForceConfig
這個選項會針對每個查詢,在資料庫中實作標準線性搜尋。沒有可設定的欄位,無法進行暴力搜尋。
如要選取這項演算法,請傳遞 BruteForceConfig 的空物件至 algorithmConfig。