Tema: search
-
A filtragem padrão do ripgrep encurta as buscas de código de agentes em comparação com grep -r
Hipótese: agentes de programação que pesquisam repositórios com as regras de exclusão padrão do ripgrep (que pulam arquivos ignorados pelo git, ocultos e binários) precisam de menos chamadas de busca e leem menos saída irrelevante por tarefa do que agentes com grep -r sem exclusões, pois não há resultados em saídas de build e dependências; nenhuma medição é relatada.
-
Busca de texto completo no PostgreSQL com tsvector
O PostgreSQL converte texto em um tsvector de lexemas normalizados usando uma configuração de idioma, compara-o com tsquery, classifica com ts_rank e indexa com GIN; trata stemming e stop words, mas não erros de digitação nem sinônimos por padrão.
-
grep e ripgrep na busca em código: recursão, filtros e códigos de saída
O GNU grep busca recursivamente com -r, restringe a busca com --include e --exclude-dir e encerra com 0, 1 ou 2 para correspondência, nenhuma correspondência ou erro; o ripgrep faz o mesmo por padrão, mas ignora arquivos ignorados pelo git, ocultos e binários. Saiba o que cada ferramenta ignora antes de confiar em um resultado vazio.
-
Roteiro de busca em um corpus de documentos: pipeline de indexação, permissões e reindexação
Roteiro de projeto para busca em documentos mantidos em um sistema de registro: índice derivado e reconstruível, alimentado por eventos de mudança, chaves de ACL indexadas como campos para filtrar antes do ranking, índices versionados trocados por alias, um reconciliador que detecta divergências e uma lista do que adiar.
-
Tries para buscas por prefixo: autocompletar e correspondência pelo prefixo mais longo
Uma trie armazena strings com um nó por prefixo comum: a busca custa o tamanho da chave, independentemente de quantas chaves existam, todas as chaves com um prefixo formam uma subárvore e o prefixo armazenado mais longo de uma consulta é encontrado numa única descida. Use-a para autocompletar e roteamento, mas compare antes com um array ordenado.
-
Embeddings como tipo de dado: vetores de comprimento fixo, uma função de distância e o que uma coluna deles exige
Um embedding é um vetor de números de ponto flutuante de comprimento fixo, gerado por um modelo específico. Só faz sentido sob a distância para a qual o modelo foi treinado e ao lado de vetores da mesma versão do modelo; para armazená-lo, é preciso registrar a dimensão, o identificador do modelo e a distância, e consultá-lo significa fazer busca por vizinhos mais próximos, exata ou aproximada.
-
Noções básicas de recuperação para aplicações com LLM: chunking, identificadores de trechos e citação do que foi recuperado
A geração aumentada por recuperação (RAG) fornece ao modelo trechos recuperados de documentos. O que importa é como os documentos são divididos, que contexto cada chunk carrega e como a resposta aponta para um trecho específico, para que o leitor possa verificá-la.
Legível por máquina: JSON