BM25 e busca lexical
BM25 / Lexical Search
Algoritmo
IntermediárioCategoria: RAG, busca e conhecimentoSubcategoria: Recuperação
O que significa
É a busca por correspondência de palavras, em que os documentos são pontuados de acordo com a frequência dos termos da consulta e com a raridade desses termos no conjunto todo. BM25 é o algoritmo mais usado para isso, e está por trás de ferramentas como Elasticsearch.
A busca lexical não entende sinônimos nem significado: procura exatamente o que foi escrito. Por isso, é imbatível para termos exatos, como códigos, números de contrato, nomes próprios e siglas.
É rápida, barata e explicável: dá para saber exatamente por que um documento apareceu no resultado.
Como usar na prática de produto
Em Produto, um erro comum ao adotar RAG é abandonar a busca lexical. Perguntas com identificadores, como “contrato 48213”, “cláusula 7.2” ou “erro E-4471”, são muito melhor atendidas por BM25 do que por embeddings, que tendem a confundir códigos parecidos.
A recomendação é combinar as duas abordagens em uma busca híbrida, que atende tanto às perguntas vagas quanto às perguntas com termos exatos.
Também vale lembrar que a busca lexical é explicável, o que ajuda na depuração: quando um resultado aparece, é fácil entender o motivo.
Quando usar este termo ou outro
Use busca lexical para termos exatos, identificadores, códigos e nomes próprios.
Use busca semântica (vetorial) para perguntas em linguagem natural, sinônimos e paráfrases.
Use busca híbrida, combinando as duas, como padrão.
Uma forma simples de diferenciar: lexical acha a palavra; semântica acha o sentido; híbrida acha os dois.
Exemplos de aplicação
- Suporte técnico: “erro E-4471” encontra o manual certo pelo código exato.
- Contratos: localizar um documento pelo número do contrato.
- Catálogo: buscar produtos por código ou referência.
- Nomes: encontrar registros de uma pessoa ou empresa específica.
- Siglas: recuperar documentos que mencionam uma sigla interna.
Origem do termo
Robertson & Spärck Jones (anos 1970-90); BM25 formalizado em Robertson & Zaragoza (2009). Base do Elasticsearch, Lucene e Solr.
Fonte técnica
Robertson & Zaragoza, The Probabilistic Relevance Framework: BM25 and Beyond (2009)
