Saltar al contenido
4.8Experto7 min

Reranking en RAG: cross-encoder vs. bi-encoder

Sebastian KarallActualizado el 28 de octubre de 2026
Definición

El reranking es la segunda fase de recuperación en un pipeline RAG: un cross-encoder vuelve a evaluar los mejores candidatos que ha encontrado el bi-encoder rápido y los ordena según su relevancia real para la consulta. Según Anthropic, el reranking reduce notablemente la tasa de error de recuperación frente a la recuperación puramente vectorial, a costa de una mayor latencia.

De un vistazo

  • Los bi-encoders codifican la consulta y el documento por separado y son lo bastante rápidos para la recuperación inicial sobre millones de chunks; los cross-encoders procesan la consulta y el documento juntos y son más precisos, pero demasiado caros para la primera pasada.
  • El reranking es una fase posterior a la recuperación: la recuperación híbrida devuelve entre el top-50 y el top-100 de candidatos, y el reranker se queda con los más relevantes, del top-5 al top-10, para el prompt del LLM.
  • Contextual Retrieval de Anthropic reduce en un 49 % la tasa de error de recuperación top-20; combinado con reranking, en un 67 % (del 5,7 al 1,9 %).
  • Modelos relevantes en la práctica (a octubre de 2026): Cohere Rerank 3.5 y 4.0 (API, multilingüe, incluido el alemán), BGE-Reranker v2-m3 (Apache 2.0, apto para on-premise), Jina Reranker v2, v3 y v3.5 (pesos abiertos, pero bajo CC BY-NC 4.0: uso comercial solo con licencia, a través de la API o de ofertas en la nube), Voyage rerank-3 y rerank-3-lite (API), además de rerankers LLM-as-Judge.
  • El compromiso es latencia frente a precisión: la recuperación híbrida con reranking suele situarse entre unos 100 y 800 milisegundos de latencia total.
  • Pasar al LLM un top-k demasiado grande provoca el efecto 'Lost-in-the-Middle' y costes más altos; la contramedida estándar es el reranking con un top-k de 5 a 10.

El reranking es la segunda fase de recuperación en un pipeline RAG: un cross-encoder vuelve a evaluar los mejores candidatos que ha encontrado el bi-encoder rápido y los ordena según su relevancia real para la consulta. Según Anthropic, el reranking reduce notablemente la tasa de error de recuperación frente a la recuperación puramente vectorial, a costa de una mayor latencia. Por tanto, el reranking no es un extra opcional: en sistemas en producción es la palanca más fiable para pasar de «semánticamente similar» a «realmente relevante».

  • Qué hace: el reranking reordena los candidatos de la primera recuperación antes de que lleguen al prompt del LLM.
  • Por qué dos fases: el bi-encoder rápido aporta recall sobre millones de chunks; el cross-encoder preciso, precisión en el top-k final.
  • Efecto concreto: Anthropic informa de una reducción de hasta el 67 % en la tasa de error de recuperación top-20 al combinar Contextual Retrieval con reranking.

Por qué no basta con una recuperación de una sola fase

La recuperación vectorial clásica trabaja con un bi-encoder. Este codifica de antemano cada chunk de documento en un vector y lo guarda en un índice ANN (normalmente HNSW). En el momento de la consulta, esta se proyecta en el mismo espacio vectorial y la similitud se calcula mediante la distancia coseno. Es extremadamente rápido y escala a millones de entradas, pero es una aproximación. La consulta y el documento nunca se «ven» juntos; el modelo solo compara dos representaciones comprimidas generadas de forma independiente.

La consecuencia es un antipatrón típico: los resultados top-k son semánticamente similares, pero no necesariamente relevantes para la pregunta concreta. Justo ahí actúa el reranking. Es una fase posterior a la recuperación que aplica un mecanismo más preciso, aunque más lento, a un pequeño conjunto de candidatos en lugar de a todo el corpus.

Bi-encoder vs. cross-encoder: la diferencia clave

El núcleo arquitectónico del reranking es el paso del bi-encoder al cross-encoder.

Un bi-encoder procesa la consulta y el documento por separado. Cada uno se codifica en un vector, y la relevancia se obtiene después a partir de la distancia entre esos vectores. Como los embeddings de los documentos se pueden calcular e indexar de antemano, el bi-encoder es la única opción viable para la recuperación inicial sobre corpus grandes.

Un cross-encoder procesa la consulta y el documento juntos en un único forward pass. El modelo ve ambos textos a la vez y puede tener en cuenta interacciones palabra por palabra, negaciones y matices de significado. El resultado es una evaluación de relevancia mucho más precisa, aunque hay que hacer el cálculo para cada par consulta-documento. Sobre millones de chunks sería prohibitivamente caro; sobre 50 a 100 candidatos prefiltrados es asumible.

Característica

Bi-encoder

Cross-encoder

Entrada

Consulta y documento por separado

Consulta y documento juntos

Indexación previa

Sí (los vectores de documentos se pueden almacenar)

No (por pares, en tiempo de ejecución)

Velocidad

Muy rápido

Lento (forward pass por par)

Precisión

Aproximación

Alta

Papel en el pipeline

Recuperación inicial (recall)

Reranking (precisión)

Escala a

Millones de chunks

De decenas a unos pocos cientos de candidatos

En medio se sitúa el enfoque de late interaction (ColBERT): almacena embeddings a nivel de token por documento y calcula la relevancia mediante una operación MaxSim entre los tokens de la consulta y los del documento. Ofrece más precisión que un bi-encoder clásico y escala mejor que un cross-encoder completo, pero consume bastante más memoria para los vectores de tokens.

Posición en el pipeline y estrategia de top-k

El reranking es una fase bien definida dentro de la ruta de consulta. La disposición canónica es esta:

```
[Recuperación híbrida, top_k = 50-100]
-> [Cross-Encoder Reranker (Cohere Rerank / BGE / Jina)]
-> [top_k = 5-10]
-> [Prompt + citas de fuentes]
-> [LLM]
```

Lo decisivo: el reranker entra solo después del recall barato del bi-encoder. La recuperación híbrida inicial (búsqueda densa más BM25, fusionadas mediante Reciprocal Rank Fusion) entrega a propósito un conjunto generoso de 50 a 100 candidatos para maximizar el recall. Después, el cross-encoder reduce ese conjunto a los 5 a 10 chunks realmente relevantes que entran en el prompt.

Este estrechamiento no es solo una cuestión de costes. Un top-k demasiado grande enviado al LLM provoca el efecto «Lost-in-the-Middle»: la información relevante situada en mitad de un contexto largo se procesa peor y los costes de tokens aumentan. El reranking con un top-k ajustado de 5 a 10 es la contramedida estándar, con una recomendación adicional: colocar los chunks más importantes al principio del prompt.

Modelos de reranking: panorama (a octubre de 2026)

Modelo

Tipo

Hosting / licencia

Idiomas

Observaciones

Cohere Rerank 3.5 / 4.0 (pro, fast)

Cross-encoder

API

multilingüe, incl. alemán

Estándar vía API

BGE-Reranker v2-m3

Cross-encoder

Pesos abiertos, Apache 2.0

multilingüe

Apto para on-premise, uso comercial libre

Jina Reranker v2 / v3 / v3.5

Cross-encoder (listwise desde v3)

Pesos abiertos, CC BY-NC 4.0 (uso comercial solo con licencia, vía API u ofertas en la nube)

multilingüe

Jina AI (Berlín), parte de Elastic desde octubre de 2025

Voyage rerank-3 / rerank-3-lite

Cross-encoder

API

multilingüe

Voyage AI, parte de MongoDB desde febrero de 2025

LLM-as-Judge (Haystack LLMRanker)

Prompt de LLM

prompt propio de GPT/Claude

cualquiera

flexible, pero más caro

Para escenarios en Europa con requisitos de soberanía, el BGE-Reranker v2-m3 es la opción on-premise más evidente: está bajo Apache 2.0, es multilingüe y puede ejecutarse con fines comerciales en tu propio centro de datos o en una región de la UE. El anterior bge-reranker-large (licencia MIT) solo cubre chino e inglés, según su ficha de modelo. Los Jina Reranker v2, v3 y v3.5 (publicado el 27.07.2026) tienen pesos abiertos, pero están bajo CC BY-NC 4.0. Para un uso comercial on-premise necesitas una licencia de Jina AI; si no, te quedan la API de Jina, Elastic Inference Service o las ofertas en AWS, Azure y Google Cloud. Jina AI tiene su sede en Berlín, pero pertenece a Elastic desde octubre de 2025.

Si aceptas una API y necesitas calidad multilingüe, incluido el alemán, en la práctica recurrirás a Cohere Rerank. La alternativa, Voyage, pertenece a MongoDB desde febrero de 2025; sus modelos actuales son rerank-3 y rerank-3-lite. Según la publicación de lanzamiento del 30.09.2026, Voyage probó rerank-3 en 95 conjuntos de datos de 9 dominios, 51 de ellos multilingües en 31 idiomas. El enfoque LLM-as-Judge (por ejemplo, el LLMRanker de Haystack) es el más flexible, pero también el más caro por consulta, y solo debería usarse donde la calidad del reranking sea crítica y el presupuesto de latencia, holgado.

Compromiso entre latencia y calidad

El reranking es la fase más costosa de la parte de recuperación de la ruta online (antes de la generación del LLM), porque el cross-encoder hace un cálculo por cada candidato. En sistemas en producción, la latencia total de recuperación híbrida más reranking suele estar entre unos 100 y 800 milisegundos. Este margen se puede controlar directamente:

  • Tamaño del conjunto de entrada: hacer reranking de 100 candidatos cuesta más que de 30. Según el corpus, a menudo basta con un conjunto más pequeño.
  • Elección del modelo: los rerankers vía API como Cohere están optimizados para un alto volumen de procesamiento; un LLM-as-Judge es bastante más lento.
  • Hardware: los rerankers autoalojados se benefician mucho de la inferencia en GPU; en CPU, la latencia aumenta considerablemente.

Por tanto, el compromiso no es «reranking sí o no», sino «cuántos candidatos para qué presupuesto de latencia». En la mayoría de los casos de uso empresariales, la ganancia de precisión compensa la latencia adicional.

Ejemplo numérico: aumento de la precisión

En la publicación «Introducing Contextual Retrieval» (19.09.2024), Anthropic midió cifras concretas en sus propios benchmarks (código, ficción, artículos de ArXiv, ciencia); Cohere actuó como reranker. Hay que leerlo como la evaluación de un proveedor con intereses propios, aunque metodológicamente documentada:

  • Base (solo recuperación): tasa de error de recuperación top-20 del 5,7 %.
  • Solo Contextual Embeddings: reducción del 35 %, hasta el 3,7 %.
  • Contextual Retrieval (embeddings más BM25): reducción del 49 %, hasta el 2,9 %.
  • Contextual Retrieval más reranking: reducción del 67 %, hasta el 1,9 %.

En concreto: de 1.000 documentos relevantes, al principio faltan 57 en el top-20; con el pipeline completo, solo 19. El reranking por sí solo, como paso del 2,9 al 1,9 %, elimina en esta configuración aproximadamente otro tercio de los errores restantes. En un sistema RAG en producción, cada error de recuperación evitado supone un chunk menos que lleve al LLM a una respuesta errónea o sin fundamento. Precisamente por eso, la práctica de RAG considera «sin reranking» un antipatrón claro: los top-k son entonces semánticamente similares, pero no relevantes.

Para agencias y decisores B2B

Si vas a montar un sistema RAG en producción en Europa, planifica el reranking desde el principio como una fase fija del pipeline, no como un ajuste posterior. El impacto es grande y el esfuerzo de implementación, contenido: una llamada adicional a una API (Cohere) o un reranker autoalojado con licencia abierta, como BGE v2-m3, entre la recuperación y el LLM. Para las agencias que crean asistentes de conocimiento o buscadores internos para sus clientes, el reranking ofrece la mejor relación entre ganancia de calidad y esfuerzo, y un argumento medible en el pitch, porque el aumento de precisión se puede demostrar en frameworks de evaluación como RAGAS (Context Precision). Blck Alpaca diseña este tipo de arquitecturas de recuperación en dos fases, con una selección de modelos conforme a la normativa de la UE y un presupuesto de latencia definido. Pide una revisión de tu pipeline RAG actual para comprobar si los chunks correctos llegan de verdad a las primeras posiciones.

Resumir con IAChatGPTClaudePerplexity

Abre el chat con un prompt ya preparado.

Preguntas frecuentes

¿Cuál es la diferencia entre un bi-encoder y un cross-encoder?
Un bi-encoder codifica la consulta y el documento de forma independiente en vectores separados; la similitud se calcula después mediante la distancia coseno. Es rápido y permite indexar por adelantado, por lo que resulta ideal para la recuperación inicial. Un cross-encoder procesa la consulta y el documento juntos en un único forward pass y ofrece así una evaluación de relevancia mucho más precisa, pero exige demasiado cálculo para recorrer millones de chunks. Por eso el cross-encoder solo entra en juego en el reranking, sobre unos pocos candidatos.
¿Necesito reranking si ya uso búsqueda híbrida?
En la mayoría de los casos en producción, sí. La búsqueda híbrida mejora el recall, es decir, llegan más documentos relevantes al conjunto de candidatos. El reranking mejora la precisión en las primeras posiciones: se asegura de que los chunks realmente más relevantes queden al principio y entren en el contexto limitado del LLM. Según Anthropic, el reranking aporta una mejora de calidad medible más allá de Contextual Retrieval (la reducción de la tasa de error top-20 pasa del 49 al 67 %, y la propia tasa de error baja del 2,9 al 1,9 %).
¿Qué modelos de reranking son relevantes en 2026?
El estándar vía API es Cohere Rerank, actualmente en la versión 4.0 (pro y fast) junto a la 3.5, multilingüe y con soporte para alemán. El BGE-Reranker v2-m3 tiene pesos abiertos con una licencia libre para uso comercial (Apache 2.0); es la opción on-premise más evidente. Los Jina Reranker v2, v3 y v3.5 también tienen pesos abiertos, pero están bajo CC BY-NC 4.0: solo puedes usarlos comercialmente a través de la API de Jina, de ofertas en la nube (según la versión, AWS, Azure, Google Cloud o Elastic Inference Service) o con una licencia de Jina AI. Jina AI pertenece a Elastic desde octubre de 2025. Voyage rerank-3 y rerank-3-lite son otras variantes vía API (Voyage ya clasifica rerank-2.5 entre sus modelos anteriores); Voyage AI pertenece a MongoDB desde febrero de 2025. Un reranker LLM-as-Judge, como el LLMRanker de Haystack, es flexible pero más caro. Todos los datos están actualizados a octubre de 2026.
¿Cuánta latencia añade el reranking?
El reranking es la fase más costosa de la parte de recuperación de la ruta de consulta (antes de la generación del LLM), porque el cross-encoder calcula un forward pass completo por candidato. En la práctica, la latencia total de recuperación híbrida más reranking suele estar entre unos 100 y 800 milisegundos. Se controla con el número de candidatos que pasan por el reranking: cuanto más pequeño sea el conjunto de entrada, menores serán la latencia y los costes.
¿Qué es ColBERT o late interaction?
ColBERT es un enfoque de late interaction que se sitúa entre el bi-encoder y el cross-encoder. En lugar de un único vector por documento, almacena embeddings a nivel de token y calcula la relevancia mediante una operación MaxSim entre los tokens de la consulta y los del documento. Esto ofrece más precisión que un bi-encoder puro y escala mejor que un cross-encoder, pero requiere más memoria para los vectores de tokens.

¿Quieres profundizar?

Recibe nuevos análisis directamente en tu bandeja de entrada o descubre cómo aplicamos este conocimiento en empresas.