BM25 vs Embeddings vs Rerankers: stack de pesquisa em 2026

Tradução automática Este artigo foi traduzido automaticamente a partir da versão original em inglês.

Um bom stack de pesquisa funciona como um funil. Primeiro, os métodos baratos recolhem um conjunto amplo de candidatos; depois, os métodos dispendiosos refinam um conjunto muito menor. Os problemas começam frequentemente quando as equipas substituem a pesquisa por texto exato por embeddings, em vez de combinarem ambos.

Comece com filtros e BM25, um método forte de ranking por texto exato. Adicione dense retrieval para encontrar correspondências semânticas e, em seguida, combine ambas as listas de resultados com Reciprocal Rank Fusion (RRF) ou um método semelhante. Faça rerank da shortlist com um cross-encoder. Utilize um LLM apenas para um conjunto final muito pequeno, quando o ganho de qualidade justificar a latência e o custo adicionais.

Última revisão: 2026-08-10. O stack é avaliado por recall, ganho de ranking, correção das políticas, latência p95 e custo em segmentos de queries reais, não por um único número universal de candidatos.

Stack recomendado

FasePredefiniçãoFunção
FiltragemFiltros estruturadosAplicar tenant, permissões, produto, idioma, tempo e disponibilidade.
Lexical retrievalBM25Nomes exatos, IDs, códigos de erro, termos jurídicos e tokens de alta precisão.
Dense retrievalEmbeddingsSinónimos, paráfrases, intenção difusa e recall semântico.
FusionReciprocal Rank Fusion ou composição ponderada de retrieversCombinar candidatos sparse e dense sem presumir que as pontuações são comparáveis.
RerankingCross-encoderReordenar uma shortlist limitada pela latência com interação entre query e documento.
Precisão finalLLM reranker ou modelo de respostasResolver casos de relevância subtis apenas quando a lista for pequena.
AvaliaçãoRecall@k, nDCG, MRR, labels de cliques, labels humanosDemonstrar que cada fase melhora a anterior.

Predefinições por caso de utilização

Superfície do produtoBoa predefiniçãoMotivo
Pesquisa de documentaçãoBM25 mais embeddings mais cross-encoderTanto os nomes exatos de APIs como as questões semânticas são importantes.
Retrieval para RAGHybrid retrieval mais reranker mais verificações de citaçõesA falta de evidência é normalmente pior do que uma geração lenta.
Pesquisa de produtosFiltros lexicais mais hybrid retrieval mais atributos de negócioDisponibilidade, preço, popularidade e facetas exatas são importantes.
Pesquisa de suporteHybrid retrieval mais atualidade e metadados de ticketsTanto formulações semelhantes como a política atual são importantes.
Base de conhecimento internaBaseline BM25, seguido de dense retrieval a partir de logs de queriesComece por uma abordagem mensurável antes de adicionar custos de modelo.
Pesquisa jurídica ou de complianceBaseline lexical mais filtros rigorosos, seguido de expansão semântica cuidadosaTanto os falsos positivos como os falsos negativos têm custos elevados.

Porque é que BM25 continua a fazer parte do stack

Os embeddings encontram texto com significado semelhante, mas não substituem de forma fiável a correspondência exata. Códigos de erro, nomes de funções, SKUs de produtos, expressões jurídicas e nomes de pessoas transmitem frequentemente a intenção através da sua grafia exata. BM25 continua a ser um baseline forte porque dá prioridade aos termos que o utilizador escreveu efetivamente.

Dense retrieval aumenta o recall quando os utilizadores não conhecem o vocabulário exato. A escolha não é entre BM25 e embeddings. Utilize BM25 para recall lexical, embeddings para recall semântico e fusion para os combinar.

Quando adicionar um reranker

Adicione um cross-encoder quando os documentos relevantes entram no conjunto de candidatos, mas ficam demasiado abaixo no ranking. Escolha o número de candidatos com base no recall e na latência medidos; top 50 é uma experiência útil, não um limiar universal.

Não adicione um LLM reranker antes de um cross-encoder, a menos que o conjunto de candidatos seja muito pequeno. O julgamento de relevância também tem de ser suficientemente subtil para justificar o custo. O LLM reranking pode ajudar, mas é mais caro e lento. Compare-o com um reranker mais barato.

Sequência de avaliação

  1. Faça a anotação de queries reais abrangendo intenções importantes, idiomas, permissões e custos de falhas. Comece com um conjunto pequeno e expanda-o até que os segmentos e a incerteza permitam fundamentar a decisão.
  2. Meça apenas o BM25.
  3. Adicione dense retrieval e meça a variação do recall.
  4. Adicione fusion e meça nDCG e Recall@k.
  5. Adicione cross-encoder reranking e meça Precision@1 e nDCG.
  6. Adicione LLM reranking apenas se melhorar a qualidade depois de incluir o custo e a latência.
  7. Acompanhe as métricas de produção: taxa de resultados nulos, taxa de reformulação, click-through, correções de respostas, latência p95 e custo.

Leitura adicional

Referências