La búsqueda semántica es un enfoque de recuperación que clasifica y devuelve resultados basándose en el significado subyacente de una consulta, en lugar de exigir que las palabras literales de la consulta aparezcan en el contenido coincidente. Mientras que la búsqueda tradicional por palabras clave, ejemplificada por los sistemas de índice invertido y las fórmulas de clasificación TF-IDF y BM25, coincide con documentos que contienen los mismos tokens que la consulta, la búsqueda semántica plantea una pregunta diferente: qué elementos almacenados están conceptualmente más cerca de lo que el usuario quiso decir. Una búsqueda de "lugar asequible para alojarse cerca de la playa" debería mostrar un anuncio descrito como "habitaciones económicas frente al océano", aunque ambas frases no compartan casi ninguna palabra.
Cómo funciona
La técnica dominante representa tanto la consulta como cada elemento de un corpus como un embedding, un vector numérico denso producido por un modelo entrenado de modo que texto semánticamente similar genere vectores cercanos. En el momento de la consulta, el sistema incorpora la consulta entrante y recupera los elementos cuyos vectores están más próximos mediante una métrica de distancia como la similitud del coseno, una operación realizada a escala por una base de datos vectorial que utiliza indexación aproximada de vecinos más cercanos. Este enfoque general, a menudo llamado recuperación densa, contrasta con los métodos dispersos de coincidencia de términos que lo precedieron.
La búsqueda semántica tiene raíces anteriores al enfoque actual basado en embeddings. El análisis semántico latente, a finales de los años 1980 y principios de los 1990, utilizaba la factorización de matrices sobre estadísticas de co-ocurrencia palabra-documento para capturar cierta noción de similitud temática, y los motores de búsqueda construidos sobre un grafo de conocimiento intentaban razonar sobre entidades y relaciones en lugar de cadenas de texto. La versión basada en embeddings se volvió dominante solo después de que Word2vec y, más tarde, los modelos de embeddings contextuales de la era del transformador, desarrollados dentro del campo más amplio del procesamiento del lenguaje natural, hicieran que los vectores densos de alta calidad fueran baratos de producir a escala.
Aplicaciones
La búsqueda semántica es el mecanismo de recuperación detrás de los sistemas de generación aumentada por recuperación, donde se extraen pasajes relevantes de un almacén de documentos y se insertan en la indicación de un LLM para fundamentar su salida en material fuente específico y reducir la alucinación. También se utiliza directamente en productos de búsqueda para consumidores y empresas, descubrimiento de productos en comercio electrónico, desvío de atención al cliente, revisión de documentos legales y médicos, y búsqueda de código, siempre que la redacción del usuario sea poco probable que coincida exactamente con el vocabulario del contenido objetivo.
Enfoques híbridos y limitaciones
La búsqueda semántica pura puede rendir de manera deficiente en consultas que dependen de cadenas exactas, como códigos de producto, nombres propios o términos técnicos raros, donde una coincidencia por palabra clave es inequívoca y la recuperación densa puede derivar hacia un resultado meramente relacionado por tema pero incorrecto. Por esta razón, la mayoría de los sistemas de producción utilizan búsqueda híbrida, que combina una señal dispersa basada en palabras clave, como BM25, con una señal densa basada en embeddings, y luego fusiona o re-clasifica los dos conjuntos de resultados. Un re-clasificador de segunda etapa, a menudo un modelo transformador más pequeño entrenado específicamente para puntuar la relevancia consulta-documento, se aplica comúnmente a los candidatos principales de la pasada de recuperación inicial para mejorar la precisión.
La calidad de la búsqueda semántica depende en gran medida de los datos de entrenamiento del modelo de embeddings y de su coincidencia con el dominio: un modelo entrenado principalmente con texto web general puede recuperar mal dentro de un corpus especializado, como jurisprudencia o literatura química, a menos que se haya adaptado mediante ajuste fino o que el corpus se incruste con un modelo específico del dominio. Como con cualquier sistema basado en similitud, la búsqueda semántica también puede mostrar resultados incorrectos con confianza cuando no existe ningún elemento realmente relevante en el índice, ya que siempre devolverá la coincidencia más cercana, incluso si esa coincidencia es un ajuste pobre.