Embeddings e similaridade
Próximo no espaço vetorial não significa relevante
Embeddings e similaridade: o que um vetor realmente mede
Um usuário procura o procedimento de parada de emergência. Seu sistema retorna em primeiro lugar um trecho intitulado procedimento de partida de emergência, com um score de similaridade de 0,94. O trecho sobre a parada existe, mas está na quinta posição, com 0,88. O modelo recebe primeiro o procedimento errado e responde fora do alvo. Você fica tentado a culpar o banco vetorial: ele fez seu trabalho perfeitamente. Os dois textos compartilham vocabulário, sintaxe e domínio, e diferem por uma única palavra, cuja inversão semântica é total.
Esse é o comportamento normal de um embedding, e não um defeito. Um embedding codifica uma proximidade de assunto, não uma identidade de sentido. Antônimos, negações e referências numéricas exatas são seus pontos cegos estruturais. Entender com precisão o que um vetor captura evitará que você passe três semanas trocando de modelo por um problema que só a busca híbrida resolverá.
O que um vetor codifica
Um modelo de embedding projeta um texto em um espaço de várias centenas de dimensões, treinado para que textos que humanos consideram relacionados fiquem geometricamente próximos. Nenhuma dimensão tem um significado interpretável individualmente: apenas as distâncias relativas contam.
Comentários
Os comentários são alimentados pelo GitHub Discussions
Conecte-se com o GitHub para participar da discussão