Definición

¿Qué es la búsqueda de vectores?

La búsqueda de vectores aprovecha el machine learning (ML) para capturar el significado y el contexto de los datos no estructurados, incluido el texto y las imágenes, y transformarlos en una representación numérica. La búsqueda de vectores, que se usa con frecuencia para la búsqueda semántica, encuentra datos similares usando algoritmos de vecino más cercano aproximado (ANN). En comparación con la búsqueda de palabras clave tradicional, la búsqueda de vectores logra resultados más relevantes y se ejecuta más rápido.

Video thumbnail

¿Por qué es importante la búsqueda de vectores?

¿Qué tan seguido has buscado algo, pero no estás seguro de cómo se llama? Quizá sepas qué hace o tengas una descripción. Pero sin las palabras clave, solo te quedas buscando.

La búsqueda de vectores supera esta limitación, ya que te permite buscar por lo que quieres decir. Puede brindar rápidamente respuestas a consultas basadas en la búsqueda por similitud. Esto se debe a que la incrustación de vectores captura los datos no estructurados más allá del texto, como videos, imágenes y audio. Puedes mejorar la experiencia de búsqueda combinando la búsqueda de vectores con filtrado y agregaciones para optimizar la relevancia implementando una búsqueda híbrida y combinándola con la puntuación tradicional.

How does a vector search engine work?

Vector search engines — known as vector databases, semantic, or cosine search — find the nearest neighbors to a given (vectorized) query.

Where traditional search relies on mentions of keywords, lexical similarity, and the frequency of word occurrences, vector search engines use distances in the embedding space to represent similarity. Finding related data becomes searching for nearest neighbors of your query.

Diagram of how a vector search engine works using vector embeddings
  • Vector embedding

    Vector embeddings are the numeric representation of data and related context, stored in high dimensional (dense) vectors. Models that generate embeddings can be trained on millions of examples to deliver more relevant and accurate results. For some cases, numeric data that you collected or engineered to represent key features of your documents can be used as embeddings. All you need is the ability to search efficiently.

  • Similarity score

    At the core of a vector search engine is the idea that if data and documents are alike, their vectors will be similar. By indexing both queries and documents with vector embeddings, you find similar documents as the nearest neighbors of your query.

  • ANN algorithm

    Traditional nearest neighbor algorithms, like k-nearest neighbor algorithm (kNN), lead to excessive execution times and zaps computational resources. ANN sacrifices perfect accuracy in exchange for executing efficiently in high dimensional embedding spaces, at scale.

Casos de uso de búsqueda de vectores

La búsqueda de vectores no solo impulsa la próxima generación de experiencias de búsqueda, abre la puerta a una variedad de nuevas posibilidades.

  • Búsqueda semántica

    La búsqueda de vectores impulsa la búsqueda semántica o por similitud. Como el significado y el contexto se capturan en la incrustación, la búsqueda de vectores encuentra lo que los usuarios quieren decir, sin necesitar una coincidencia exacta de palabras clave. Funciona con datos textuales (documentos), imágenes y audio. Encuentra con facilidad y rapidez productos que son similares o están relacionados con la búsqueda.

  • Recomendaciones

    El modelo que genera la incrustación aprende a reconocer documentos similares y sus vectores en el espacio de incrustación. Por ejemplo, una aplicación puede recomendar películas o productos que les hayan gustado a otras personas que compraron lo mismo que tú. Pero debes asegurarte de que las incrustaciones se deriven con cierto grado de popularidad o probabilidad de agradar como métrica objetivo.

    Las distancias de vectores pueden combinarse con otras métricas a fin de que las recomendaciones logren varios objetivos. Por ejemplo, clasifica las recomendaciones de productos según los puntajes de satisfacción y el potencial de ingresos.

  • Responder preguntas

    Se puede combinar la conversión de documentos a incrustaciones de texto con el procesamiento de lenguaje natural (NLP) moderno para brindar respuestas de texto completas a las preguntas. Este enfoque les ahorra a los usuarios estudiar manuales extensos y empodera a tus equipos para brindar respuestas más rápido.

    Un modelo de transformador para "responder preguntas" puede tomar la representación de la incrustación de texto correspondiente a la base de conocimientos de los documentos y tu pregunta actual para brindar la coincidencia más similar como una "respuesta".

Más cosas que puedes hacer con la búsqueda de vectores

No te detengas con la búsqueda semántica.

  • Buscar en datos no estructurados

    Busca en cualquier dato no estructurado. Puedes crear incrustaciones para mediciones de sensores, audio, imágenes o texto.

  • Filtrar metadatos

    Filtra los resultados de búsqueda de vectores usando metadatos. Mantén la recuperación sin sacrificar la velocidad aplicando un filtro en línea con la búsqueda de vecino más cercano aproximado (ANN).

  • Reclasificar los resultados de búsqueda

    Las similitudes de vectores pueden interpretarse como puntuaciones de similitud que puedes reclasificar con otros datos. Eso incluye campos estáticos que ya se encuentran en la base de datos de la búsqueda de vectores y propiedades nuevas aplicando modelos de machine learning.

  • Puntuación híbrida

    Para una mayor optimización, combina las similitudes de vectores con puntuaciones de BM25F, lo que se conoce como puntuación híbrida. Esto te permite tener imágenes clasificadas por similitud de vectores e implementar BM25F, lo cual puede brindar mejores clasificaciones de texto.

Cómo dar los primeros pasos

Búsqueda de vectores y NLP simplificados con Elastic

No tienes que mover montañas para implementar la búsqueda de vectores y aplicar los modelos de NLP. Con Elasticsearch Relevance Engine™ (ESRE), obtienes un kit de herramientas para compilar aplicaciones de búsqueda de AI que se puedan usar con AI generativa y modelos de lenguaje grandes (LLM).

Con el ESRE, puedes compilar aplicaciones de búsqueda innovadoras, generar incrustaciones, almacenar vectores y buscar en ellos, e implementar la búsqueda semántica con Learned Sparse Encoder de Elastic. Conoce más sobre cómo usar Elasticsearch como tu base de datos de vectores.

Video thumbnail
  • Búsqueda semántica lista para usar

    Elastic Learned Sparse Encoder proporciona búsqueda semántica sumamente relevante lista para usar, sin adaptación para el dominio. Está disponible con solo un clic mientras configuras la aplicación de búsqueda. El modelo amplía las búsquedas con palabras clave relacionadas y puntuaciones de relevancia, que aprendió durante el proceso de entrenamiento, para que no tengas que configurar sinónimos, y estas son fáciles de interpretar, a diferencia de las incrustaciones de vectores densos.

  • Modelos de lenguaje grandes

    Brinda a los LLM información específica del negocio mediante tus datos privados (no solo los datos de entrenamiento públicos). Usa Elasticsearch y accede a la AI generativa con API y plugins integrados en el LLM que prefieras.

  • Incrustación de texto y más

    Conoce cómo asignar sentimientos y otras categorías a tus datos con Elastic. Aplica el reconocimiento de entidades con nombre (NER) para mejorar las experiencias de búsqueda con metadatos adicionales.