Athrun Data Intelligence


OpenSearch Vector Engine ahora puede ejecutar la búsqueda vectorial en un tercio del costo en los dominios OpenSearch 2.17+. Ahora puede configurar los índices K-NN (Vector) para ejecutarse en el modo de disco, optimizarlo para entornos limitados por la memoria y habilitar la búsqueda vectorial de bajo costo y precisa que contesta en bajos cientos de milisegundos. El modo de disco proporciona una alternativa económica al modo de memoria cuando no necesita cerca latencia de un solo dígito.

En esta publicación, aprenderá sobre los beneficios de esta nueva característica, la mecánica subyacente, las historias de éxito de los clientes y el principio.

Descripción normal de Vector Search y OpenSearch Vector Engine

La búsqueda vectorial es una técnica que mejoría la calidad de la búsqueda al permitir la coincidencia de similitud en el contenido que ha sido codificado por los modelos de enseñanza maquinal (ML) en vectores (codificaciones numéricas). Permite casos de uso como búsqueda semántica, lo que le permite considerar el contexto y la intención próximo con las palabras secreto para ofrecer búsquedas más relevantes.

OpenSearch Vector Engine permite búsquedas vectoriales en tiempo existente más allá de miles de millones de vectores mediante la creación de índices en contenido vectorizado. Luego puede ejecutar búsquedas de los documentos K super el mismo maniquí ML.

Ajustar el motor Vector OpenSearch

Las aplicaciones de búsqueda tienen diferentes requisitos en términos de velocidad, calidad y costo. Por ejemplo, los catálogos de comercio electrónico requieren los tiempos de respuesta más bajos posibles y la búsqueda de entrada calidad para ofrecer una experiencia de importación positiva. Sin incautación, la optimización de la calidad de búsqueda y las ganancias de rendimiento generalmente incurre en el costo en forma de memoria adicional y enumeración.

El invariabilidad correcto de velocidad, calidad y costo depende de sus casos de uso y expectativas del cliente. OpenSearch Vector Engine proporciona opciones de ajuste integrales para que pueda hacer compensaciones inteligentes para conquistar resultados óptimos adaptados a sus requisitos únicos.

Puede usar los siguientes controles de ajuste:

  • Algoritmos y parámetros – Esto incluye lo venidero:
    • Cálculo jerárquico navegable pequeño (HNSW) y parámetros como ef_search, ef_constructy m
    • Cálculo de índice de archivos invertido (FIV) y parámetros como nlist y nprobes
    • Vecinos de K-Nears más exitosos (K-NN), además conocido como operación de Force Brute-Force K-NN (BFKNN)
  • Motores -Facebook AI Simility Search (FAISS), Lucene y Biblioteca espacial no métrica (NMSLIB).
  • Técnicas de compresión – Prosperar (como byte y media precisión), cuantificación de productos y productos
  • Métricas de similitud (distancia) – Producto interno, coseno, L1, L2 y Hamming
  • Tipos de incrustación vectorial – denso y escaso con dimensionalidad variable
  • Métodos de clasificación y puntuación -Vector, híbridos (combinación de vector y mejor coincidencia 25 (BM25) puntajes) y clasificación de etapas múltiples (como codificadores transversales y personalizadores)

Puede ajustar una combinación de controles de ajuste para conquistar un invariabilidad variable de velocidad, calidad y costo que esté optimizado para sus evacuación. El venidero diagrama proporciona un perfil de rendimiento próximo para configuraciones de muestra.

Ajuste para la optimización del disco

Con OpenSearch 2.17+, puede configurar sus índices K-NN para que se ejecuten en el modo de disco para una búsqueda vectorial de entrada calidad y bajo costo al negociar un rendimiento en memoria por una maduro latencia. Si su caso de uso está satisfecho con la latencia del percentil 90 (P90) en el rango de 100–200 milisegundos, el modo de disco es una excelente opción para conquistar un economía de costos mientras mantiene una entrada calidad de búsqueda. El venidero diagrama ilustra el perfil de rendimiento del modo de disco entre las configuraciones alternativas del motor.

El modo de disco fue diseñado para salir fuera de la caja, reduciendo sus requisitos de memoria por 97% en comparación con el modo de memoria al tiempo que proporciona una entrada calidad de búsqueda. Sin incautación, puede ajustar las tasas de compresión y muestreo para ajustar la velocidad, la calidad y el costo.

La venidero tabla presenta puntos de narración de rendimiento para la configuración predeterminada del modo de disco. OpenSearch Benchmark (OSB) se usó para ejecutar las tres primeras pruebas, y Vectordbbench (VDBB) se usó para los dos últimos. Ajuste de rendimiento Se aplicaron las mejores prácticas para conquistar resultados óptimos. Las pruebas de desprecio escalera (TASB-1M y Situación-1M) se ejecutaron en un solo nodo de datos R7GD.Large con una réplica. Las otras pruebas se ejecutaron en dos nodos de datos R7GD.2XLarge con una réplica. La métrica de reducción de costos porcentual se calcula comparando una implementación equivalente en memoria de tamaño derecho con la configuración predeterminada.

Estas pruebas están diseñadas para demostrar que el modo de disco puede ofrecer una entrada calidad de búsqueda con 32 veces compresión en una variedad de conjuntos de datos y modelos mientras mantiene nuestra latencia objetivo (bajo P90 200 milisegundos). Estos puntos de narración no están diseñados para evaluar modelos ML. El impacto de un maniquí en la calidad de búsqueda varía con múltiples factores, incluido el conjunto de datos.

Optimizaciones del modo de disco debajo del capó

Cuando configure un índice K-NN para ejecutarse en modo de discoOpenSearch aplica automáticamente una técnica de cuantización, comprimiendo vectores a medida que se cargan para construir un índice comprimido. Por defecto, el modo de disco convierte cada vector de precisión completa, una secuencia de cientos a miles de dimensiones, cada uno almacenado como números de 32 bits, en vectores binarios, que representan cada dimensión como un bit de un solo bit. Esta conversión da como resultado una tasa de compresión 32 veces, lo que permite al motor construir un índice que sea 97% más pequeño que uno compuesto por vectores de precisión completa. Un clúster de tamaño derecho mantendrá este índice comprimido en la memoria.

La compresión reduce el costo al ceñir la memoria requerida por el motor vectorial, pero sacrifica la precisión a cambio. El modo de disco recupera la precisión y, por lo tanto, la calidad de búsqueda, utilizando un proceso de búsqueda de dos pasos. La primera período de la ejecución de la consulta comienza atravesando eficientemente el índice comprimido en la memoria para las coincidencias candidatas. La segunda período utiliza a estos candidatos para sobremuestrar vectores de precisión completa correspondientes. Estos vectores de precisión completa se almacenan en el disco en un formato diseñado para ceñir la E/S y optimizar la velocidad y la eficiencia de recuperación del disco. La muestra de vectores de precisión completa se usa para aumentar y retornar a clasificar las coincidencias de la período uno (usando exacta k-nn), recuperando así la pérdida de calidad de búsqueda atribuida a la compresión. La latencia más entrada del modo de disco en relación con el modo de memoria se atribuye a este proceso de re-obtención, que requiere paso al disco y cálculo adicional.

Éxitos de los clientes tempranos

Los clientes ya están ejecutando el motor Vector en modo disco. En esta sección, compartimos testimonios de los primeros usuarios.

Asana está mejorando la calidad de búsqueda de los clientes en su plataforma de papeleo de trabajo mediante la errata de fases en capacidades de búsqueda semántica a través del motor Vector de OpenSearch. Inicialmente optimizaron la implementación utilizando cuantificación de productos comprimir índices por 16 veces. Al cambiar a las configuraciones optimizadas por el disco, pudieron ceñir potencialmente el costo en otro 33% mientras mantenían sus objetivos de calidad y latencia. Estas crematística hacen que sea viable que Asana escalera a miles de millones de vectores y democratice la búsqueda semántica en toda su plataforma.

Devreve une la brecha fundamental en las compañías de software al conectar directamente los equipos orientados al cliente con los desarrolladores. Como plataforma centrada en la IA, crea vías directas desde la feedback de los clientes hasta el progreso de productos, lo que ayuda a más de 1,000 empresas a acelerar el crecimiento con búsqueda precisa, prospección rápido y flujos de trabajo personalizables. Construidos en modelos de idiomas grandes (LLM) y flujos de reproducción aumentada de recuperación (RAG) que se ejecutan en el motor Vector de OpenSearch, DevRev permite experiencias de conversación inteligentes.

“Con el motor vectorial optimizado por disco de OpenSearch, logramos nuestros objetivos de calidad y latencia de búsqueda con compresión de 16x. OpenSearch ofrece crematística escalable para nuestro alucinación de búsqueda de vectores multimillonas «.

– Anshu Avinash, cabecilla de IA y búsqueda en Devrev.

Comience con el modo de disco en el motor OpenSearch Vector

Primero, debe determinar los medios necesarios para introducir su índice. Comience estimando la memoria requerida para aposentar su índice K-NN optimizado por disco (con la tasa de compresión predeterminada 32 veces) utilizando la venidero fórmula:

Required memory (bytes) = 1.1 x ((vector dimension count)/8 + 8 x m) x (vector count)

Por ejemplo, si usa los títulos predeterminados para Texto de Amazon Titan V2su recuento de dimensiones vectoriales es 1024. El modo de disco utiliza el operación HNSW para construir índices, por lo que «M» es uno de los parámetros de operación, y es predeterminado a 16. Si crea un índice para un corpus vectorial de 1 mil millones codificado por Amazon Texto de Titan, sus requisitos de memoria son 282 GB.

Si tiene una carga de trabajo con el rendimiento, debe cerciorarse de que su dominio tenga suficientes IOP y CPU además. Si sigue las mejores prácticas de la implementación, puede usar tipos de instancias optimizadas de rendimiento de instancias y almacenamiento, que generalmente le proporcionarán suficientes IOP. Siempre debe realizar pruebas de carga para cargas de trabajo de stop rendimiento y ajustar las estimaciones originales para acomodar para mayores IOPS y requisitos de CPU.

Ahora puede implementar un dominio OpenSearch 2.17+ que ha tenido el tamaño de sus evacuación. Crea tu índice K-NN con el modo parámetro establecido en en_disky luego Ingesta tus datos. Si ya tiene un índice K-NN ejecutándose en el valía predeterminado in_memory modo, puede convertirlo cambiando el modo a on_disk seguido de un reindex tarea. Posteriormente de restaurar el índice, puede ceñir su dominio en consecuencia.

Conclusión

En esta publicación, discutimos cómo puede beneficiarse al ejecutar el motor Vector OpenSearch en el modo de disco, las historias de éxito de los clientes compartidos y le proporcionó consejos para comenzar. Ahora está preparado para ejecutar el motor Vector OpenSearch tan bajo como un tercio del costo.

Para obtener más información, consulte el documentación.


Sobre los autores

Dylan tong es apoderado de productos senior en Amazon Web Services. Dirige las iniciativas de productos para AI y Machine Learning (ML) en OpenSearch, incluidas las capacidades de la colchoneta de datos Vector de OpenSearch. Dylan tiene décadas de experiencia trabajando directamente con los clientes y creando productos y soluciones en la colchoneta de datos, prospección y dominio AI/ML. Dylan tiene un título de BSC y Meng en informática de la Universidad de Cornell.

Vamshi Vijay Nakkirtha es un apoderado de ingeniería de software que trabaja en el plan OpenSearch y Amazon OpenSearch Service. Sus intereses principales incluyen sistemas distribuidos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *