Busca híbrida em RAG: como combinar palavras-chave e vetores
Entenda como a busca híbrida combina pesquisa por palavras-chave e vetores para melhorar a recuperação de documentos em sistemas RAG.

Uma pergunta pode mencionar o código exato de um produto e, ao mesmo tempo, descrever uma necessidade com palavras que não aparecem em nenhum documento.
Se o seu sistema RAG depender apenas de correspondência textual, ele pode perder o significado.
Se usar somente similaridade vetorial, pode deixar escapar aquele código que precisava ser encontrado sem aproximações.
A busca híbrida em RAG resolve esse conflito ao executar uma recuperação por palavras-chave e outra por similaridade semântica, combinando depois os resultados em uma única lista.
Ela não garante respostas corretas por conta própria, mas aumenta a chance de o modelo receber evidências que sejam, ao mesmo tempo, conceitualmente relacionadas e lexicalmente precisas.
Neste guia, você vai entender como essa combinação funciona, quais métodos de fusão podem ser usados, onde filtros e reranking entram no pipeline e como avaliar se a arquitetura híbrida realmente supera uma busca mais simples.
O que é busca híbrida em RAG?
Busca híbrida é uma estratégia de recuperação que combina dois sinais diferentes: a correspondência lexical, baseada nos termos presentes na consulta e nos documentos, e a correspondência semântica, baseada na proximidade de significado.
Em uma arquitetura de geração aumentada por recuperação, ou RAG, essa busca acontece antes da geração da resposta. Seu objetivo é selecionar trechos confiáveis para compor o contexto enviado ao modelo de linguagem.
A parte lexical normalmente usa um índice invertido e um algoritmo de relevância como BM25. Ela favorece documentos que contêm termos importantes da pergunta.
Já a parte semântica transforma consulta e conteúdos em embeddings e procura vetores próximos, mesmo quando as palavras utilizadas são diferentes.
A documentação do Azure AI Search sobre pesquisa híbrida resume bem a complementaridade: a busca vetorial encontra similaridade conceitual, enquanto a pesquisa textual oferece precisão lexical.
O ganho não vem apenas de executar as duas; vem de combinar e ordenar os resultados de modo coerente.
Por que uma única forma de busca pode falhar
A busca por palavras-chave é forte quando a consulta contém nomes, códigos, versões, siglas ou expressões que precisam aparecer exatamente. Uma pergunta como “o erro ACME-104 ocorre na versão 3.7?” traz sinais raros e muito úteis.
Diluir esses sinais em uma representação vetorial pode colocar documentos vagamente relacionados acima do manual que contém o código correto.
Por outro lado, uma consulta como “como faço para receber meu dinheiro de volta?” pode precisar encontrar uma política intitulada “solicitação de reembolso”.
As palavras não coincidem, mas a intenção é próxima. É justamente o tipo de situação em que a busca semântica tende a recuperar melhor.
Há ainda perguntas mistas: “Posso pedir reembolso do plano Pro depois de 14 dias?”. A palavra “reembolso”, o nome “Pro” e o período são sinais exatos, enquanto o restante expressa uma intenção.
Combinar as duas recuperações costuma ser mais robusto do que apostar que uma delas resolverá todos os formatos de consulta.

Como funciona o pipeline de busca híbrida
Na indexação, os documentos são preparados, divididos em trechos e armazenados com texto, vetor e metadados.
A qualidade do chunking em RAG continua sendo decisiva: nenhuma técnica de fusão recompõe uma informação que foi cortada de forma inadequada ou excluída do índice.
Quando chega uma pergunta, um pipeline típico segue estas etapas:
- Preparar a consulta: preservar a frase para a busca lexical e gerar seu embedding para a busca vetorial.
- Recuperar em paralelo: cada mecanismo produz sua própria lista ordenada de candidatos.
- Aplicar filtros: restringir resultados por permissão, idioma, data, produto ou outro metadado pertinente.
- Fundir as listas: combinar posições ou pontuações e remover duplicatas.
- Refinar o conjunto: opcionalmente reranquear os melhores candidatos com um modelo mais preciso.
- Montar o contexto: selecionar os trechos finais respeitando relevância, diversidade e limite de tokens.
Alguns mecanismos executam todo esse fluxo em uma única consulta. Outros exigem que a aplicação consulte dois índices e faça a fusão.
A arquitetura muda, mas a ideia central é a mesma: produzir duas perspectivas sobre a coleção antes de escolher os documentos que seguirão para o modelo.
Como combinar os resultados
As pontuações de BM25 e de similaridade vetorial não devem ser somadas diretamente sem cuidado.
Elas podem ter escalas e distribuições diferentes. Um valor alto em um método não representa necessariamente o mesmo grau de relevância no outro.
Fusão por posição com RRF
Reciprocal Rank Fusion, ou RRF, combina as posições dos documentos, não suas pontuações brutas.
Cada resultado recebe uma contribuição inversamente proporcional à posição que ocupa em cada lista.
Um documento bem colocado nas duas buscas tende a subir; outro que aparece apenas em uma ainda pode permanecer competitivo.
A referência do Elasticsearch sobre RRF destaca uma vantagem prática: os indicadores de relevância não precisam estar na mesma escala.
Isso torna o método uma boa linha de base quando você quer uma combinação estável sem começar por uma longa calibração de pesos.
Combinação por pontuação e pesos
Outra opção é normalizar os scores para uma faixa comparável e calcular uma soma ponderada.
Um peso maior para o componente lexical favorece códigos e terminologia exata; um peso maior para o componente vetorial favorece paráfrases e perguntas conversacionais.
Esse controle é útil, mas não existe um peso universal. A documentação de busca híbrida do Weaviate, por exemplo, expõe um parâmetro para equilibrar pesquisa por palavras-chave e vetores, além de diferentes formas de fusão.
O valor adequado depende das consultas e dos documentos do seu próprio sistema.
Exemplo prático de busca híbrida em RAG
Imagine um assistente interno que consulta manuais de equipamentos. Para a pergunta “Como redefinir o sensor XT-42 quando ele perde a conexão?”, a busca lexical pode priorizar o manual do modelo exato.
A busca vetorial pode encontrar um procedimento chamado “restauração após falha de comunicação”, que não usa a palavra “redefinir”.
O pseudocódigo abaixo mostra a sequência sem depender de um fornecedor específico:
const lexical = await keywordIndex.search(query, { limit: 30 });
const queryVector = await embed(query);
const semantic = await vectorIndex.search(queryVector, { limit: 30 });
const fused = reciprocalRankFusion([lexical, semantic], { k: 60 });
const candidates = removeDuplicates(fused).slice(0, 20);
const ranked = await rerank(query, candidates);
const context = ranked.slice(0, 5);
Os números são apenas pontos de partida. Recuperar 30 candidatos por método pode ser excessivo em uma base pequena e insuficiente em uma coleção difícil.
Da mesma forma, enviar cinco trechos ao gerador só faz sentido se eles couberem no contexto e acrescentarem evidências distintas.
Filtros, metadados e regras de negócio
Relevância não substitui autorização. Um documento pode ser a resposta perfeita e ainda assim não poder aparecer para aquele usuário.
Filtros de acesso, organização, confidencialidade e região precisam ser aplicados antes de o conteúdo chegar ao modelo.
Metadados também ajudam a resolver ambiguidades. Versão do produto, validade da política, idioma e tipo de documento podem limitar o espaço de busca. Isso evita que um manual antigo vença apenas porque contém mais ocorrências dos termos consultados.
O momento do filtro importa. Aplicá-lo antes da recuperação preserva segurança e reduz o conjunto pesquisado, mas alguns índices vetoriais podem perder cobertura quando o filtro é muito restritivo.
Aplicá-lo depois exige recuperar candidatos suficientes e nunca deve permitir que conteúdo proibido seja enviado a etapas externas. A decisão precisa considerar tanto relevância quanto controle de dados.
Busca híbrida e reranking são a mesma coisa?
Não. A busca híbrida amplia e combina a recuperação inicial. O reranking em RAG aplica uma avaliação adicional a um conjunto menor de candidatos para reorganizá-lo com mais precisão.
RRF já produz um novo ranking, mas usa principalmente as posições nas listas. Um reranker baseado em cross-encoder, por exemplo, lê a pergunta junto de cada trecho e estima sua relevância com interação mais detalhada.
Ele costuma ser mais caro e lento, por isso aparece depois da recuperação.
As técnicas podem coexistir: recuperação lexical e vetorial, fusão por RRF, reranking dos 20 melhores candidatos e seleção final de cinco chunks.
Porém, adicionar todas as camadas sem medir o ganho apenas aumenta latência, custo e dificuldade de diagnóstico.
Quando a busca híbrida vale a pena
Ela tende a trazer mais valor quando a coleção mistura linguagem natural com identificadores, nomes próprios e termos técnicos.
Catálogos de produtos, centrais de ajuda, contratos, documentação de software e bases corporativas são exemplos comuns.
- Os usuários formulam a mesma intenção com palavras muito diferentes.
- Códigos, versões, siglas ou referências exatas não podem ser ignorados.
- A busca lexical e a vetorial acertam grupos diferentes de perguntas.
- O custo de uma resposta sem fonte correta é relevante para o negócio.
Em uma base pequena, com vocabulário consistente e consultas previsíveis, uma pesquisa textual bem configurada pode ser suficiente. Em outro extremo, uma aplicação de descoberta conceitual pode funcionar bem com vetores.
Começar simples oferece uma linha de base honesta; a solução híbrida deve entrar quando os testes mostrarem lacunas complementares.
Como avaliar e ajustar a recuperação

O teste precisa começar antes da resposta do LLM. Monte um conjunto de perguntas reais ou representativas e registre quais documentos contêm a evidência necessária.
Inclua consultas exatas, paráfrases, perguntas curtas, termos ambíguos e casos sem resposta na base.
Compare pelo menos três linhas de base: somente lexical, somente vetorial e híbrida. Métricas como recall@k indicam em quantas perguntas o documento relevante apareceu entre os primeiros k resultados.
Precision@k observa quanto do conjunto recuperado é útil. MRR valoriza a posição do primeiro resultado correto, enquanto nDCG permite trabalhar com diferentes graus de relevância.
Depois, avalie a resposta final: fundamentação, precisão, citações, completude, latência e custo. O guia sobre evals em IA ajuda a transformar esses critérios em testes repetíveis.
Segmente os resultados. Uma média geral pode esconder que o híbrido melhorou perguntas conversacionais, mas piorou consultas com códigos.
Ajuste profundidade de recuperação, filtros, método de fusão e pesos a partir desses grupos. Mude uma variável por vez para saber de onde veio o ganho.
Erros comuns ao implementar
- Somar scores incompatíveis: pontuações de origens diferentes precisam de normalização ou de uma fusão baseada em posição.
- Ajustar pesos por intuição: a preferência do desenvolvedor não substitui um conjunto de avaliação.
- Ignorar duplicatas: o mesmo chunk recuperado pelos dois métodos deve ser consolidado, não ocupar duas vagas no contexto.
- Confundir mais candidatos com mais qualidade: ampliar o top-k pode aumentar recall, mas também traz ruído, tokens e latência.
- Usar filtros apenas no fim: conteúdo sem permissão não deve chegar ao modelo nem a serviços de reranking externos.
- Tentar corrigir ingestão ruim na busca: documentos desatualizados, metadados ausentes e chunks incoerentes continuam ruins em um pipeline híbrido.
A documentação de busca híbrida do OpenSearch mostra como normalização e rank fusion são tratadas como etapas explícitas do pipeline.
Essa separação também é útil fora de uma ferramenta específica: ela permite observar cada lista e explicar por que um documento ganhou ou perdeu posição.
Checklist para começar sem complicar
- Crie um conjunto pequeno, mas variado, de perguntas com documentos relevantes conhecidos.
- Meça separadamente a busca lexical e a vetorial.
- Use RRF como primeira combinação quando não houver motivo para calibrar scores.
- Remova duplicatas e preserve metadados de origem e permissões.
- Compare recall, posição dos resultados, latência e custo.
- Adicione reranking somente se a ordem dos candidatos ainda for um problema mensurável.
- Monitore consultas reais e atualize o conjunto de avaliação com falhas observadas.
Se a infraestrutura ainda está sendo definida, verifique se o banco vetorial ou mecanismo de busca escolhido suporta pesquisa lexical, vetorial, filtros e fusão.
Concentrar os recursos em um produto pode simplificar a operação, mas não dispense testes de relevância nem observabilidade.
Perguntas frequentes
Busca híbrida substitui a busca vetorial?
Não. A busca vetorial é um dos componentes da abordagem híbrida. Ela continua responsável por recuperar conteúdos semanticamente próximos, enquanto o componente lexical acrescenta correspondência por termos.
Todo sistema RAG precisa de busca híbrida?
Não. Bases pequenas ou consultas previsíveis podem funcionar bem com um único método. A busca híbrida faz sentido quando testes demonstram que os mecanismos lexical e vetorial encontram resultados relevantes diferentes.
O que significa BM25?
BM25 é uma função de ranking usada em busca textual. Ela considera a ocorrência dos termos, sua raridade na coleção e o tamanho dos documentos para estimar quais resultados são mais relevantes.
RRF e reranking são a mesma coisa?
Não exatamente. RRF funde listas com base nas posições. O termo reranking costuma indicar uma segunda avaliação de candidatos, frequentemente feita por um modelo que analisa cada par de pergunta e trecho com mais profundidade.
Qual peso dar à busca semântica?
O peso deve ser escolhido por testes, não por uma regra universal. Consultas conversacionais podem favorecer o componente semântico; códigos e nomes exatos podem exigir mais influência lexical. RRF é uma alternativa inicial quando você não quer calibrar scores.
Busca híbrida reduz alucinações?
Ela pode reduzir respostas sem fundamento ao melhorar o contexto recuperado, mas não elimina alucinações. O modelo ainda precisa receber instruções claras, citar evidências e recusar respostas quando a base não contém informação suficiente.
Conclusão
A busca híbrida em RAG funciona porque aceita uma realidade simples: significado e correspondência exata são sinais diferentes, e ambos podem ser decisivos.
A recuperação lexical protege códigos, nomes e termos raros; a vetorial encontra paráfrases e relações conceituais. A fusão transforma essas duas listas em candidatos mais equilibrados.
O melhor próximo passo não é adicionar todas as técnicas disponíveis. É medir as duas buscas separadamente, criar uma linha de base híbrida e observar em quais tipos de pergunta ela melhora o resultado.
Só então vale calibrar pesos, ampliar candidatos ou acrescentar reranking. Assim, cada camada entra para resolver uma falha comprovada, não apenas para tornar a arquitetura mais sofisticada.