Parámetros de configuración de índices

Si deseas configurar índices para las búsquedas de similitud, debes configurar los siguientes campos. Para obtener instrucciones sobre cómo configurar un índice, consulta Configura parámetros de índice.

Campos
contentsDeltaUri

string

Permite insertar, actualizar o borrar el contenido del Index de Vector Search. La string debe ser una ruta de directorio de Cloud Storage válida, como gs://BUCKET_NAME/PATH_TO_INDEX_DIR/.

Si configuras este campo cuando llamas a IndexService.UpdateIndex, no se puede actualizar ningún otro campo Index como parte de la misma llamada. Aprende a estructurar archivos de datos individuales.

isCompleteOverwrite

boolean

Si este campo se configura junto con contentsDeltaUri cuando se llama a IndexService.UpdateIndex, el contenido existente de Index se reemplazará por los datos de contentsDeltaUri.

config

NearestNeighborSearchConfig

La configuración del Index de Vector Search.

NearestNeighborSearchConfig

Campos
dimensions

int32

Obligatorio. La cantidad de dimensiones de los vectores de entrada.

approximateNeighborsCount

int32

Es obligatorio si se usa el algoritmo de árbol AH.

Es la cantidad predeterminada de vecinos que se deben encontrar mediante la búsqueda aproximada antes de realizar el reordenamiento exacto. El reordenamiento exacto es un procedimiento en el que los resultados que muestra un algoritmo de búsqueda aproximada se ordenan a través de un cálculo de distancias más costoso.

ShardSize ShardSize

El tamaño de cada fragmento. Cuando un índice es grande, se fragmenta en función del tamaño de fragmento especificado. Durante la entrega, cada fragmento se entrega en un nodo separado y escala de forma independiente.

distanceMeasureType

DistanceMeasureType

La medida de distancia usada en la búsqueda de vecino más cercano.

featureNormType

FeatureNormType

Tipo de normalización que se realizará en cada vector.

algorithmConfig oneOf:

La configuración de los algoritmos que Vector Search usa para realizar una búsqueda eficiente.

  • TreeAhConfig: Opciones de configuración para usar el algoritmo de AH-Tree. Para obtener más información, consulta este blog Escala la recuperación profunda con los recomendadores de TensorFlow y Vector Search
  • BruteForceConfig: Con esta opción, se implementa la búsqueda lineal estándar en la base de datos de cada consulta. No hay campos para configurar en la búsqueda por fuerza bruta. Si deseas seleccionar este algoritmo, pasa un objeto vacío para BruteForceConfig.

DistanceMeasureType

Enums
SQUARED_L2_DISTANCE Distancia euclidiana (L2)
L1_DISTANCE Distancia de Manhattan (L1)
DOT_PRODUCT_DISTANCE Valor predeterminado Se define como un negativo del producto escalar.
COSINE_DISTANCE Distancia de coseno. Te sugerimos usar DOT_PRODUCT_distance + UNIT_L2_NORM en lugar de la distancia COSINE. Nuestros algoritmos se optimizaron más para la distancia DOT_ PRODUCT y, cuando se combina con UNIT_L2_NORM, ofrece la misma clasificación y equivalencia matemática que la distancia COSINE.

ShardSize

Enums
SHARD_SIZE_SMALL 2 GiB por fragmento
SHADE_SIZE_MEDIUM 20 GiB por fragmento
SHADE_SIZE_LARGE 50 GiB por fragmento

FeatureNormType

Enums
UNIT_L2_NORM Tipo de normalización de la unidad L2.
NONE Valor predeterminado No se especifica ningún tipo de normalización.

TreeAhConfig

Estos son los campos que se seleccionan para el algoritmo de AH-Tree.

Campos
fractionLeafNodesToSearch double
La fracción predeterminada de nodos de hoja que se pueden buscar en cualquier consulta. Debe estar entre 0.0 y 1.0, exclusivo. El valor predeterminado es 0.05 si no se configura.
leafNodeEmbeddingCount int32
Cantidad de incorporaciones en cada nodo hoja El valor predeterminado es 1,000 si no se configura.
leafNodesToSearchPercent int32
Obsoleto: Usa fractionLeafNodesToSearch.

El porcentaje predeterminado de nodos de hoja que se pueden buscar en cualquier consulta. Debe estar entre 1 y 100, inclusive. El valor predeterminado es 10 (significa 10%) si no se configura.

BruteForceConfig

Esta opción implementa la búsqueda lineal estándar en la base de datos para cada consulta. No hay campos para configurar en una búsqueda por fuerza bruta. A fin de seleccionar este algoritmo, pasa un objeto vacío para BruteForceConfig a algorithmConfig.