Es importante mantenerse al día con las nuevas tecnologías de recuperación de información, pero es igualmente importante no romper componentes que han sido probados y han demostrado su valor comercial.
A pesar del crecimiento en la búsqueda vectorial impulsada por IA, la realidad es que la mayoría de las empresas aún dependen de tecnologías de búsqueda tradicionales, a menudo usando variantes del algoritmo BM25. Es una tecnología confiable y probada por el tiempo. Cambiar a un sistema completamente nuevo no es solo un gran paso, sino que a menudo resulta impráctico, exigiendo recursos sustanciales y una revisión exhaustiva de las operaciones. Además, BM25 es un pilar de los motores de búsqueda léxica, comúnmente empleado en plataformas de búsqueda populares como Elasticsearch y Solr. Ya ofrece buenos resultados para muchos casos de uso.
Por lo tanto, muchas empresas dudan en hacer una transición completa a la búsqueda neuronal, a pesar de la evidencia convincente de que la búsqueda basada en IA mejora significativamente la satisfacción del usuario y la calidad de los resultados.
tagReordenamiento Neural Agnóstico de Recuperación
Reranker es una incorporación revolucionaria al panorama de sistemas de búsqueda. Diseñado para mejorar el valor de los motores de búsqueda existentes como Elasticsearch, funciona como una capa adicional, trabajando como un complemento para refinar la calidad de búsqueda entregada. No necesita saber qué tipo de tecnología de búsqueda está conectada, simplemente toma una lista de coincidencias y las reordena para mejorarlas.
Jina Reranker añade un nivel más profundo de comprensión a las tecnologías de búsqueda tradicionales. Algoritmos como BM25 hacen un buen trabajo recuperando documentos basados en la frecuencia de términos pero luchan para evaluar el significado de los textos que recuperan a la luz de la intención del usuario. Aquí es donde la IA sobresale: Reranker ayuda a producir resultados que están mejor alineados con lo que los usuarios están buscando.
Por lo tanto, para las empresas que quieren traer las poderosas ventajas de los modelos de IA a sus marcos de búsqueda, añadir Jina Reranker puede ser una decisión sabia y no incurre en las cargas de reemplazar una infraestructura de búsqueda existente. Se trata de refinar los resultados de búsqueda para hacerlos no solo aceptables, sino excepcionales: más relevantes y más precisos.
tag¿Por qué Jina Reranker?
Entre los modelos de reordenamiento, los modelos Jina Reranker destacan como líderes con puntuaciones de vanguardia en pruebas de rendimiento.

En este artículo, te mostraremos cómo implementar un sistema de recomendación para plataformas de comercio electrónico. Primero, analizaremos el rendimiento de un recuperador BM25 por sí solo. Luego, agregaremos Jina Reranker al pipeline de recuperación y veremos cómo los resultados se vuelven más relevantes y efectivos.
tagAgrega Jina Reranker a tu flujo de trabajo existente:

Aquí está el desglose del flujo de trabajo actualizado que integra Jina Reranker:
- Recuperación Inicial: Cuando se ingresa una consulta, el motor de búsqueda BM25 recupera documentos relevantes basándose principalmente en la coincidencia de términos de la consulta con los documentos.
- Reordenamiento: jina-reranker-v1-base-en toma estos resultados iniciales y usa IA de última generación para evaluar la relevancia de cada documento recuperado a la luz de la consulta del usuario.
- Devolución de Resultados: Jina Reranker luego reordena los resultados de búsqueda, asegurando que los documentos más relevantes se presenten en la parte superior.
Nuestra API fácil de usar y documentación completa te guiarán a través de todo el proceso, requiriendo solo cambios mínimos en tu sistema.

tagVéalo en acción: Mejorando la búsqueda de comercio electrónico con Jina Reranker

Veamos un ejemplo práctico de comercio electrónico para demostrar el impacto de Jina Reranker en aplicaciones del mundo real. El objetivo aquí es buscar listados de productos basados en la consulta de un usuario.
Para ilustrar esto, configuraremos dos pipelines de búsqueda usando el popular framework de búsqueda y orquestación de IA Haystack by deepset. El primer pipeline usa BM25 por sí solo. El segundo integra jina-reranker-v1-base-en en el sistema BM25. Puedes fácilmente reemplazar el componente InMemoryDocumentStore
de Haystack con ElasticsearchDocumentStore
para hacer el mismo experimento si tienes un cluster de Elasticsearch existente.
Usaremos un conjunto de datos de muestra de Kaggle. Puedes descargar directamente el CSV aquí. Esta comparación lado a lado muestra las mejoras aportadas al incorporar Jina Reranker en el flujo de trabajo de búsqueda.
Para empezar, instala todos los componentes necesarios:
pip install --q haystack-ai jina-haystack
Configura la clave API de Jina como una variable de entorno. Puedes generar una aquí.
import os
import getpass
os.environ["JINA_API_KEY"] = getpass.getpass()
Consulta un producto basado en nombres de productos. Por ejemplo:
short_query = "Nightwear for Women"
Transforma cada fila CSV en un Document
:
import csv
from haystack import Document
documents = []
with open("fashion_data.csv") as f:
data = csv.reader(f, delimiter=";")
for row in data:
row_text = ''.join(row)
row_doc = Document(content=row_text, meta={"prod_id": row[0], "prod_image": row[1]})
documents.append(row_doc)
tagPipeline #1: Solo BM25
from haystack import Pipeline
from haystack.document_stores.types import DuplicatePolicy
from haystack.document_stores.in_memory import InMemoryDocumentStore
from haystack.components.retrievers.in_memory import InMemoryBM25Retriever
document_store=InMemoryDocumentStore()
document_store.write_documents(documents=documents, policy=DuplicatePolicy.OVERWRITE)
retriever = InMemoryBM25Retriever(document_store=document_store)
rag_pipeline = Pipeline()
rag_pipeline.add_component("retriever", retriever)
result = rag_pipeline.run(
{
"retriever": {"query": query, "top_k": 50},
}
)
for doc in result["retriever"]["documents"]:
print("Product ID:", doc.meta["prod_id"])
print("Product Image:", doc.meta["prod_image"])
print("Score:", doc.score)
print("-"*100)
Aquí están las miniaturas de los 50 resultados devueltos por BM25:

Podemos ver que los resultados están relacionados con ropa de dormir, coincidiendo parcialmente con la consulta, pero las coincidencias más relevantes (imágenes resaltadas en negrita en la cuadrícula anterior) parecen perderse entre la multitud de productos recuperados por BM25. En la práctica, usar solo BM25 significa que un usuario recibiría principalmente resultados no relacionados en la parte superior de la página.
tagPipeline #2: BM25 + Jina Reranker
El siguiente script describe cómo construir este pipeline paso a paso:
from haystack_integrations.components.rankers.jina import JinaRanker
ranker_retriever = InMemoryBM25Retriever(document_store=document_store)
ranker = JinaRanker()
ranker_pipeline = Pipeline()
ranker_pipeline.add_component("ranker_retriever", ranker_retriever)
ranker_pipeline.add_component("ranker", ranker)
ranker_pipeline.connect("ranker_retriever.documents", "ranker.documents")
result = ranker_pipeline.run(
{
"ranker_retriever": {"query": query, "top_k": 50},
"ranker": {"query": query, "top_k": 10},
}
)
for doc in result["ranker"]["documents"]:
print("Product ID:", doc.meta["prod_id"])
print("Product Image:", doc.meta["prod_image"])
print("Score:", doc.score)
print("-"*100)
Aquí están los 10 mejores resultados devueltos por Jina Reranker:

En comparación con BM25, Jina Reranker devuelve una colección de respuestas mucho más relevante. En nuestro entorno de comercio electrónico, esto se traduce en una mejor experiencia de usuario y una mayor probabilidad de compras.
tagImpacto de la Integración de Jina Reranker con BM25
Siguiendo nuestro caso de estudio en el dominio del comercio electrónico, está claro que la integración de Jina Reranker con motores de búsqueda tradicionales como Elasticsearch marca un salto significativo en la tecnología de búsqueda. Aquí hay una descripción general de cómo esta integración mejora la experiencia de búsqueda:
- Tasas de Acierto Mejoradas: La fusión de Jina Reranker y la búsqueda tradicional ha aumentado notablemente la frecuencia de resultados relevantes. Esto hace que el proceso de búsqueda sea más preciso, alineándose estrechamente con las consultas de los usuarios.
- Mejor Experiencia de Usuario: Hay una mejora tangible en la calidad de los resultados de búsqueda. Esto indica que las capacidades combinadas de Jina Reranker y BM25 están mejor alineadas con las necesidades específicas de los usuarios, mejorando su experiencia general de búsqueda.
- Alta Precisión para Consultas Complejas: Cuando se trata de búsquedas difíciles, esta sinergia asegura una comprensión más detallada tanto de la consulta como del contenido relacionado. Esto se traduce en resultados más precisos y exactos.
tag¿Listo para Elevar tu Experiencia de Búsqueda?
Jina Reranker es tu solución ideal para aumentar la relevancia de tus resultados de búsqueda. Se integra perfectamente con tu sistema de búsqueda existente y puede implementarse rápidamente con un mínimo de codificación.
Si te intriga lo que has leído hasta ahora y estás ansioso por ver la diferencia que Jina Reranker puede hacer, ¿por qué no lo pruebas? Comienza tu viaje y sé testigo del poder transformador de los modelos Search Foundation de Jina AI en tu propio entorno.