$rankFusion y $scoreFusion etapas están disponibles como funciones de vista previa. Para obtener más información, consulte Características de vista previa.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.
Acerca del Tutorial
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:
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.Crea un índice de MongoDB Search en el campo
titlede la colecciónsample_mflix.embedded_movies. Este campo contiene el nombre de la película como un string de texto.Ejecute una consulta que utilice
$rankFusiono para combinar los resultados de$scoreFusionuna$vectorSearchconsulta en elplot_embedding_voyage_3_largecampo y una consulta en$searcheltitlecampo.
Requisitos previos
Antes de comenzar, complete los requisitos previos.
Procedimientos
Cree los índices de búsqueda vectorial de MongoDB y los índices de búsqueda de MongoDB
Esta sección demuestra cómo crear los siguientes índices en los campos de la colección sample_mflix.embedded_movies:
Un índice de búsqueda vectorial de MongoDB en el campo
plot_embedding_voyage_3_largepara ejecutar consultas vectoriales en ese campo.Un índice de búsqueda de MongoDB en el campo
titlepara ejecutar una búsqueda de texto completo en ese campo.