Per configurare gli indici per le ricerche per similarità, devi configurare i seguenti campi.
Per istruzioni su come configurare un indice, vedi Configurare i parametri dell'indice.
NearestNeighborSearch
| Campi | |
|---|---|
contentsDeltaUri |
Consente di inserire, aggiornare o eliminare i contenuti della
Ricerca vettoriale Se imposti questo campo quando chiami
|
isCompleteOverwrite |
Se questo campo viene impostato insieme a
|
config |
Configurazione della ricerca vettoriale
|
NearestNeighborSearchConfig
| Campi | |
|---|---|
dimensions |
Obbligatorio. Il numero di dimensioni dei vettori di input. Utilizzata solo per gli incorporamenti densi. |
approximateNeighborsCount |
Obbligatorio se viene utilizzato l'algoritmo tree-AH. Il numero predefinito di vicini da trovare tramite una ricerca approssimativa prima che venga eseguito il riordinamento esatto. Il riordino esatto è una procedura in cui i risultati restituiti da un algoritmo di ricerca approssimativa vengono riordinati utilizzando un calcolo della distanza più costoso. |
ShardSize |
ShardSize
Le dimensioni di ogni shard. Quando un indice è grande, viene suddiviso in shard in base alle dimensioni dello shard specificate. Durante la pubblicazione, ogni shard viene pubblicato su un nodo separato e viene scalato in modo indipendente. |
distanceMeasureType |
La misurazione della distanza utilizzata nella ricerca del vicino più prossimo. |
featureNormType |
Tipo di normalizzazione da eseguire su ciascun vettore. |
algorithmConfig |
oneOf:
La configurazione degli algoritmi utilizzati da Vector Search per una ricerca efficiente. Utilizzato solo per gli incorporamenti densi.
|
DistanceMeasureType
| Enum | |
|---|---|
SQUARED_L2_DISTANCE |
Distanza euclidea (L2) |
L1_DISTANCE |
Distanza di Manhattan (L1) |
DOT_PRODUCT_DISTANCE |
Valore predefinito. Definito come il negativo del prodotto scalare. Tieni presente che un indice sparso supporta solo la distanza prodotto scalare. |
COSINE_DISTANCE |
Distanza coseno. Consigliamo vivamente di utilizzare DOT_PRODUCT_DISTANCE + UNIT_L2_NORM anziché la distanza COSINE. I nostri algoritmi sono stati ottimizzati maggiormente per la distanza DOT_PRODUCT e, se combinata con UNIT_L2_NORM, offre lo stesso ranking ed equivalenza matematica della distanza COSINE. |
ShardSize
| Enum | |
|---|---|
SHARD_SIZE_SMALL |
2 GiB per shard |
SHARD_SIZE_MEDIUM |
20 GiB per shard |
SHARD_SIZE_LARGE |
50 GiB per shard |
FeatureNormType
| Enum | |
|---|---|
UNIT_L2_NORM |
Tipo di normalizzazione dell'unità L2. |
NONE |
Valore predefinito. Non è specificato alcun tipo di normalizzazione. |
TreeAhConfig
Questi sono i campi da selezionare per l'algoritmo tree-AH.
| Campi | |
|---|---|
fractionLeafNodesToSearch |
double |
| La frazione predefinita di nodi foglia in cui è possibile cercare qualsiasi query. Deve essere compresa tra 0,0 e 1,0, esclusi. Se non è impostata, il valore predefinito è 0,05. | |
leafNodeEmbeddingCount |
int32 |
| Numero di incorporamenti su ciascun nodo foglia. Se non è impostato, il valore predefinito è 1000. | |
leafNodesToSearchPercent |
int32 |
Deprecato, utilizza fractionLeafNodesToSearch.La percentuale predefinita di nodi foglia in cui è possibile cercare qualsiasi query. Deve essere compreso tra 1 e 100 inclusi. Se non è impostato, il valore predefinito è 10 (ovvero 10%). |
|
BruteForceConfig
Questa opzione implementa la ricerca lineare standard nel database per
ogni query. Non ci sono campi da configurare per una ricerca di tipo brute force.
Per selezionare questo algoritmo, passa un oggetto vuoto per BruteForceConfig
a algorithmConfig.