Pular para o conteúdo

Inteligência artificial · Fundamentos · 5 min de leitura

Embeddings e busca vetorial

Embeddings transformam textos em vetores de números; textos com significado parecido ficam próximos, o que permite buscar por sentido e não só por palavras.

Documentos → Modelo deModelo de → Banco vetorial: vetoresPergunta → Modelo deModelo de → Banco vetorial: consultaconsultaBanco vetorial → Mais parecidosDocumentos — divididos em trechosDocumentosdivididos em trechosModelo de — embeddingsModelo deembeddingsBanco vetorial — índice ANNBanco vetorialíndice ANNPerguntaPerguntaModelo de — embeddingsModelo deembeddingsMais parecidos — top-k por cossenoMais parecidostop-k por cosseno

Arraste para o lado para ver o diagrama inteiro.

Em cima, a indexação (feita uma vez); embaixo, a busca (a cada pergunta). O mesmo modelo de embeddings precisa ser usado nos dois lados.

Significado em coordenadas

Um embedding é uma lista de centenas ou milhares de números que representa o sentido de um texto. Modelos treinados para isso colocam “como cancelar meu plano” perto de “quero encerrar a assinatura”, mesmo sem palavras em comum.

Como a busca funciona

Os documentos são divididos em trechos (chunks), cada trecho vira um vetor e tudo vai para um índice. Na pergunta, calcula-se o vetor dela e procuram-se os vizinhos mais próximos, em geral pela similaridade de cosseno. Bancos vetoriais usam índices aproximados (ANN, como HNSW) para responder rápido mesmo com milhões de vetores.

Boas práticas

  • Trechos com algumas centenas de tokens e um pouco de sobreposição costumam funcionar bem.
  • Combine com busca por palavras-chave (busca híbrida) para nomes próprios e códigos.
  • Guarde metadados (fonte, data, permissão) para filtrar e citar.

Em resumo

Referências

Continue aprendendo

Todos os temas de inteligência artificial →