Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Realiza una búsqueda híbrida con MongoDB Vector Search y MongoDB Search

Este tutorial demuestra una búsqueda híbrida que es una agregación de búsqueda de texto completo y búsqueda semántica para los mismos criterios de query. Aunque la búsqueda de texto completo es eficaz para encontrar coincidencias exactas de los términos de query, la búsqueda semántica ofrece el beneficio adicional de identificar documentos semánticamente similares, incluso si los documentos no contienen el término de query exacto. Esto asegura que las coincidencias sinónimas y contextualmente similares también se incluyan en los resultados combinados de ambos métodos de búsqueda.

Por el contrario, si tienes tokens para nombres propios o palabras clave específicas en el conjunto de datos que no esperas que se tengan en cuenta en el entrenamiento de un modelo de incrustación en el mismo contexto que se usan en el conjunto de datos, la búsqueda vectorial podría beneficiarse de combinarse con una búsqueda en texto completo.

También puedes establecer pesos para cada método de búsqueda por query. En función de si los resultados de búsqueda semántica o de texto completo son los más relevantes y adecuados para un query, puedes aumentar la ponderación de ese método de búsqueda por query.

Este tutorial demuestra cómo ejecutar una búsqueda híbrida que combina búsqueda vectorial de MongoDB y consultas de búsqueda de MongoDB en la colección sample_mflix.embedded_movies, que contiene detalles sobre películas, para obtener resultados de búsqueda unificados. Específicamente, este tutorial le guía a través de los siguientes pasos:

  1. Crea un índice de MongoDB Vector Search en el campo plot_embedding_voyage_3_large . Este campo contiene incrustaciones vectoriales que representan el resumen de la trama de una película.

  2. Crea un índice de MongoDB Search en el campo title de la colección sample_mflix.embedded_movies. Este campo contiene el nombre de la película como un string de texto.

  3. Ejecutar una query que use $rankFusion o $scoreFusion para combinar los resultados de una $vectorSearch consulta en el plot_embedding_voyage_3_large campo y una consulta en $search el title campo.

Antes de empezar, completa los prerrequisitos.

Esta sección demuestra cómo crear los siguientes índices en los campos de la colección sample_mflix.embedded_movies:

  • un índice de MongoDB Vector Search en el campo plot_embedding_voyage_3_large para ejecutar queries de vectores en ese campo.

  • un índice de MongoDB Search en el campo title para realizar una búsqueda de texto completo en ese campo.

Volver

Búsqueda híbrida

En esta página