BM25 e SPLADE podem compor uma busca de artigos técnicos em português por caminhos complementares. BM25 ordena documentos a partir dos termos da consulta e das estatísticas da coleção. SPLADE aprende representações esparsas com pesos sobre um vocabulário, permitindo expansão lexical. A combinação deve ser avaliada com perguntas e documentos relevantes do seu próprio acervo.
Comece com um índice BM25 bem preparado e preserve identificadores exatos, títulos e metadados dos artigos. Só acrescente SPLADE depois de verificar o modelo, o tokenizer e a qualidade em português. Busca esparsa aprendida não é busca densa: ambas podem usar redes neurais, mas suas representações e formas de recuperação são diferentes.
Resumo rápido
- BM25 oferece uma referência para recuperação lexical e merece avaliação antes de adicionar complexidade.
- SPLADE produz pesos esparsos no vocabulário do modelo e pode expandir os termos representados.
- Português, siglas e terminologia do seu domínio precisam de testes próprios.
- Combine listas por posição ou por pontuação calibrada, sem somar escalas incompatíveis.
- Avalie relevância, cobertura, latência e manutenção com uma coleção de perguntas reservadas.
O que muda entre BM25, SPLADE e busca densa
BM25 considera fatores como a frequência dos termos, a frequência deles na coleção e o comprimento dos documentos. A documentação de similaridade do Elasticsearch descreve os controles de saturação da frequência e normalização pelo comprimento. Ajustar esses controles sem perguntas de avaliação oferece pouca evidência de melhora.
O estudo original de SPLADE apresenta representações lexicais esparsas aprendidas, com regularização de esparsidade. Em termos práticos, consulta e documento recebem pesos em dimensões associadas ao vocabulário. A expansão pode atribuir peso a termos relacionados que não aparecem literalmente no texto de entrada.
| Aspecto | BM25 | SPLADE | Busca densa |
|---|---|---|---|
| Representação | Termos analisados e estatísticas | Pesos esparsos aprendidos sobre vocabulário | Vetores densos aprendidos |
| Relação lexical | Depende da análise e correspondência de termos | Permite expansão e ponderação aprendidas | Comparação no espaço vetorial |
| Ponto de atenção | Normalização e termos raros | Modelo, idioma e tamanho da representação | Modelo, métrica e índice vetorial |
| Teste indispensável | Siglas e consultas literais | Expansões úteis em português | Relevância por significado no domínio |
Um índice invertido associa termos aos documentos em que estão representados. Esse desenho pode ser usado na recuperação esparsa; não significa que uma representação SPLADE seja simplesmente texto com sinônimos anexados. Consulte o repositório oficial do projeto para conferir implementação, modelos e procedimentos de reprodução.
Se você já usa vetores, mantenha clara a diferença explicada no guia sobre embeddings e busca. Não é necessário incluir recuperação densa para testar BM25 com SPLADE. Acrescentar um terceiro recuperador também cria mais uma configuração para avaliar e manter.
Prepare artigos em português sem perder evidências
Defina primeiro a unidade de retorno. Uma biblioteca de papers pode devolver o artigo completo, um resumo ou um trecho. Armazene um identificador estável do artigo e outro do trecho, quando houver divisão. Preserve título, autores, idioma, ano informado pela fonte, endereço de origem e seção. Esses dados permitem conferir o resultado e agrupar trechos do mesmo trabalho.
Na extração de PDFs, inspecione exemplos com duas colunas, notas, tabelas e fórmulas. Um documento cuja leitura mistura o final de uma coluna ao começo da outra pode gerar uma representação pouco útil em qualquer recuperador. Remova cabeçalhos repetidos quando atrapalharem o conteúdo e mantenha a versão original disponível para conferência.
Use campos separados para título, resumo, corpo e identificadores. DOI, número de norma e código de equipamento merecem uma rota de correspondência exata. Transformações adequadas ao texto corrido podem alterar esses identificadores. A consulta por uma sigla deve ser testada em conjunto com sua forma extensa e com versões ambíguas em outras áreas.
A documentação de analisadores de idioma inclui o analisador brasileiro e suas etapas. Analise os tokens produzidos com termos reais da coleção antes de escolhê-lo. Redução de palavras à raiz, remoção de palavras frequentes e normalização podem ajudar algumas consultas e prejudicar outras.
Não aplique automaticamente o mesmo processamento ao SPLADE. O modelo precisa receber texto compatível com seu próprio tokenizer. Guarde o texto limpo de extração e derive dele as entradas de cada recuperador. Assim você pode corrigir uma configuração sem precisar recuperar novamente todos os documentos de origem.
Monte uma referência BM25 verificável
Uma referência útil exige mais do que criar o índice. Reúna perguntas de pesquisadores, analistas e leitores que representem tarefas distintas: localizar um trabalho conhecido, encontrar uma técnica para um problema e comparar evidências sobre determinado assunto. Registre a intenção da pergunta para que o julgamento não dependa de uma interpretação improvisada.
- Separe desenvolvimento e teste. Use um conjunto para escolher configurações e outro para a avaliação final. Não ajuste o índice repetidamente com base no teste reservado.
- Revise os campos. Verifique se título e resumo estão presentes, se os identificadores são pesquisáveis e se duplicatas foram agrupadas.
- Inspecione consultas problemáticas. Compare termos com acento, sem acento, siglas e expressões compostas.
- Crie julgamentos. Marque documentos relevantes, parcialmente relevantes e irrelevantes, registrando o motivo.
- Registre a configuração. Salve análise textual, pesos dos campos, versão do acervo e consultas utilizadas.
Os primeiros julgamentos não serão necessariamente completos. Um documento encontrado por um novo método pode ser relevante mesmo sem constar da lista inicial. Forme uma coleção de candidatos usando resultados de diferentes configurações e submeta os itens novos à revisão. Não interprete ausência de julgamento como prova automática de irrelevância.
Veja também o guia de rerankers para documentos técnicos para entender a etapa posterior. Recuperação traz candidatos; reordenação avalia esses candidatos com outro procedimento. Se o artigo necessário nunca entra na lista inicial, o reordenador não consegue recuperá-lo.
Acrescente SPLADE com controle de idioma e versão
Escolha um checkpoint e leia sua documentação antes de indexar a coleção. Registre idiomas de treinamento e avaliação quando informados, licença, limites de entrada e o procedimento de codificação. A existência do método SPLADE não comprova que todo checkpoint disponível funcione bem em português ou em textos científicos brasileiros.
Faça uma inspeção inicial das dimensões com maior peso em títulos e resumos. Veja se as expansões representam conceitos do domínio ou se puxam para outro sentido de uma palavra ambígua. Essa inspeção ajuda a formular hipóteses; a decisão deve usar relevância julgada, pois termos aparentemente estranhos podem participar de uma representação útil.
Codifique documentos e consultas com as configurações previstas pelo checkpoint. Mantenha o vínculo entre vetor esparso, documento e versão do codificador. Trocar modelo ou tokenizer sem reconstruir as representações dependentes pode deixar consulta e acervo incompatíveis. Planeje reindexação e retorno à configuração anterior antes da troca.
Avalie títulos, resumos e trechos com comprimentos diferentes. Se o conteúdo exceder o limite de entrada, defina uma estratégia explícita de divisão e agregação. Cortar sempre o fim do artigo pode remover a seção de resultados, enquanto indexar apenas referências pode privilegiar citações em vez do trabalho principal.
Somente depois compare BM25, SPLADE isolado e a combinação. Se o novo recuperador encontrar documentos úteis que BM25 não encontra, há uma razão para investigar a fusão. Se apenas repetir os mesmos candidatos com maior custo operacional, a complexidade adicional precisa de outra justificativa observável.
Combine resultados e meça o efeito
Não some diretamente a pontuação BM25 à pontuação do produto entre representações SPLADE. Elas pertencem a escalas diferentes, e a contribuição de cada método pode variar entre consultas. Uma alternativa de experimento é fundir posições: cada lista contribui conforme a colocação do documento, com um parâmetro de suavização definido no conjunto de desenvolvimento.
Documente o tamanho das listas, a regra de fusão, os pesos e a deduplicação. Se houver trechos, faça a agregação por artigo de modo explícito. Caso contrário, vários fragmentos do mesmo paper podem ocupar a primeira página e esconder a diversidade de trabalhos encontrados.
Meça Recall@k para investigar quantos documentos relevantes julgados chegaram aos primeiros k resultados. Use nDCG@k quando houver graus de relevância e a posição importar. Para consultas de trabalho conhecido, observe também a posição do primeiro resultado correto. Explique no relatório como julgamentos incompletos limitam a interpretação.
Registre latência por etapa e tamanho do índice no ambiente real de avaliação, sem transformar um teste local em promessa de produção. Separe tempo de codificar a consulta, recuperar listas e combiná-las. Compare consultas por sigla, por problema e por conceito. Uma média geral pode esconder regressões nos códigos técnicos que os leitores mais usam.
Se os artigos alimentarem um assistente, avalie primeiro a recuperação e depois a resposta produzida. O conteúdo sobre avaliação de fidelidade e relevância ajuda nessa segunda camada. Uma resposta convincente não demonstra que a biblioteca encontrou a evidência correta.
Exemplo: biblioteca técnica de uma empresa em Campinas
Considere um exemplo ilustrativo: uma empresa de engenharia em Campinas mantém artigos sobre manutenção de motores e análise de vibração. Um analista pesquisa “falha de rolamento por vibração”, enquanto outro informa uma sigla específica presente no título de um estudo. São intenções diferentes, que não devem ser representadas por uma única pergunta genérica.
A equipe prepara título, resumo, corpo e identificadores em campos separados. Primeiro testa BM25 para localizar trabalhos conhecidos e examina os casos em que a linguagem da pergunta difere da redação do resumo. Depois testa um checkpoint SPLADE, verificando se as representações ajudam nas consultas por problema sem prejudicar siglas.
Na fusão, cada artigo aparece uma vez, com indicação do trecho responsável pelo resultado. Os revisores recebem listas sem o nome do método e avaliam se o documento realmente trata do diagnóstico procurado. Um paper que menciona motores apenas na introdução pode receber avaliação diferente de outro que apresenta o procedimento buscado.
A decisão de implantação dependeria dessa revisão, da latência medida e do trabalho de atualizar o índice. O caso não pressupõe ganho de precisão ou redução de tempo. Ele mostra um roteiro para decidir com evidências, preservando uma busca lexical utilizável enquanto o experimento com expansão aprendida é avaliado.
Erros comuns
- Chamar SPLADE de busca densa. A representação é esparsa e vinculada a um vocabulário. Documente a arquitetura usada.
- Presumir qualidade em português. Verifique o checkpoint e julgue resultados do seu acervo antes de ampliar o índice.
- Normalizar identificadores como texto comum. Mantenha campos de correspondência exata e testes de regressão para códigos.
- Ignorar duplicatas. Agrupe versões e trechos para não medir várias ocorrências do mesmo artigo como descobertas independentes.
- Ajustar tudo ao mesmo tempo. Mude análise, campos, codificador ou fusão em rodadas separadas para entender o efeito.
Perguntas frequentes
SPLADE substitui BM25?
Pode ser avaliado sozinho ou combinado, mas a escolha depende das consultas e da coleção. Preserve BM25 como referência para medir se a nova configuração acrescenta valor.
É obrigatório usar um banco vetorial?
Não necessariamente. Representações esparsas podem ser recuperadas com estruturas apropriadas, incluindo índices invertidos. Confira o suporte do mecanismo escolhido ao formato e à pontuação utilizados no projeto.
Posso usar um modelo treinado em inglês?
Você pode investigar essa hipótese, mas não deve presumir transferência adequada. Examine a documentação e compare resultados em português com julgamentos do domínio antes de decidir.
Devo indexar o artigo inteiro?
Depende da unidade de retorno e dos limites do codificador. Teste resumo, seções e trechos, mantendo o vínculo com o artigo e avaliando a perda de contexto causada pela divisão.
Como saber se a fusão ajudou?
Compare as listas no conjunto reservado, avalie os documentos novos e examine regressões por intenção. Considere relevância, latência e esforço de manutenção na decisão final.