Do Cosseno à Borda: Busca Semântica em Produção
por Frank de Alcantara em 19/07/2026
Este artigo também está disponível em inglês.
- 1. Você Pensa Como Fala
- 2. A Temida Matemática
- 3. A Probabilidade da Linguagem
- 4. A Vetorização Básica
- 5. Redes Neurais Artificiais para Word Embedding
- 6. Embeddings Distribuídos e CBoW
- 7. SkipGram e Otimizações do Word2Vec
- 8. Word2Vec, a Ponte para o Contexto
- 9. Desvendando a Modelagem de Sequências
- 10. Prestando Atenção
- 11. Do Código à Geração
- 12. Masked Language Modeling: Esconder Tokens para Aprender Contexto
- 13. BERT: O Encoder que Lê dos Dois Lados
- 14. O Cisma e a Batalha da Eficiência
- 15. GEMM o Coração Matemático
- 16. Do Cosseno à Borda: Busca Semântica em Produção
1. Um Problema e um Projeto
Durante treze artigos, esta série construiu maquinário matemático: vetores que representam palavras, produtos de matrizes que os transformam, mecanismos de atenção que os contextualizam. Tudo com a promessa implícita de que essa matemática serve para alguma coisa. Este artigo paga a promessa. Vamos construir, do produto interno ao deploy, a busca semântica que está funcionando neste exato momento no menu deste blog e que a atenta leitora pode interrogar em /busca/ antes, durante e depois da leitura. A aplicação completa deste artigo, pela primeira vez na série, está em produção. Os laboratórios aparecem junto da matemática que permitem manipular: o cosseno na Seção 4, a InfoNCE na Seção 7 e a busca aproximada na Seção 9.
Uma busca client-side baseada no lunr.js leva os documentos indexáveis ao navegador para construir o índice. Em um site estático, essa arquitetura transfere para cada visitante o custo de baixar e processar uma estrutura cujo tamanho cresce com o acervo, mesmo quando nenhuma consulta é feita. No conjunto considerado neste artigo, o arquivo do índice léxico tem cerca de 70 kB e a biblioteca Lunr acrescenta aproximadamente 85 kB, ambos medidos antes da compressão HTTP. O problema de engenharia não é um volume descomunal; é a posição em que o custo ocorre e como ele cresce.
O segundo problema é de qualidade: a busca léxica, mesmo bem servida, não entende o que procura. Tratá-lo exige exatamente a matemática dos artigos anteriores: embeddings, atenção, softmax e produtos de matrizes, acrescidos de um ingrediente novo que deduziremos com calma, uma noção formal de proximidade entre significados. Há ainda uma restrição econômica: a solução completa precisa operar dentro das franquias gratuitas dos serviços usados pelo blog. No caminho, manteremos o compromisso da série: nenhum objeto será usado antes de definido, nenhuma afirmação ficará sem mecanismo, número ou exemplo, e a atenta leitora verá as contas feitas à mão antes de vê-las executadas por uma GPU da infraestrutura da Cloudflare.
Este artigo completo contém estratégias práticas e dados exclusivos reservados para nossos membros cadastrados.
Continuar com Google Acesso gratuito e instantâneo com sua conta Google(Updated: )