1 pontos por GN⁺ 2024-02-26 | 1 comentários | Compartilhar no WhatsApp
  • O Marginalia Search começou como um pequeno experimento para encontrar uma “internet legal” e, em 3 anos, se tornou um projeto em tempo integral; o mecanismo de busca também está mais próximo do estado mais estável que já teve até agora
  • O trabalho central deste ano foi a organização da base de código e a simplificação da aplicação para reduzir a carga operacional e facilitar o uso por outros operadores e desenvolvedores
  • Antes, a troca de índice exigia interrupções de vários dias, mas agora essa pausa desapareceu e, recentemente, também passaram a ser possíveis atualizações sem downtime
  • A qualidade da busca melhorou após o suporte a palavras-chave em texto-âncora, e a capacidade de encontrar resultados relevantes avançou bastante à medida que os sinais de relevância se consolidaram
  • A meta de indexar 1 bilhão de documentos continua em andamento, mas a relação sinal-ruído da web é baixa e isso tem tornado o desafio maior do que o esperado; o próximo foco será melhorar o parsing e a execução de consultas

Três anos: de experimento a projeto em tempo integral

  • O Marginalia Search começou há 3 anos como um pequeno experimento e agora se tornou um projeto em que se trabalha em tempo integral
  • O mecanismo de busca ainda tem pontos a melhorar, mas é avaliado como estando no melhor nível de funcionamento desde o início até agora
  • Um dos maiores marcos foi o momento em que o mecanismo de busca saiu da sala de estar e foi transferido para um servidor enterprise
  • Neste ano, o foco esteve em reduzir a carga operacional a um nível administrável e em organizar a base de código e a aplicação para que outros operadores e desenvolvedores possam acessá-las com mais facilidade
  • A forma de operação também mudou bastante
    • Antes, era necessário interromper o serviço por vários dias durante a troca de índice
    • Agora, essa interrupção durante a troca de índice desapareceu
    • Recentemente, também passaram a ser possíveis atualizações sem downtime
    • Muitas tarefas que antes eram processos manuais de várias semanas agora se resumem a clicar em botões na GUI

Qualidade da busca e expansão do índice

  • O suporte a palavras-chave em texto-âncora teve grande impacto na relevância da busca
    • Logo após a mudança, o efeito não ficou claro de imediato porque a integração ainda não estava suficientemente madura
    • Depois que os novos sinais de relevância se consolidaram, a capacidade do mecanismo de busca de encontrar resultados relevantes melhorou muito
  • Graças ao apoio da NLnet, o projeto passou a ser um trabalho em tempo integral há cerca de 8 meses
    • Uma dificuldade que continua existindo é não trabalhar demais
    • A tentativa é descansar pelo menos 1 dia por semana, com a visão de que, quando se descansa bem, é possível trabalhar de forma mais inteligente
  • A meta de 1 bilhão de documentos indexados continua em andamento
    • A dificuldade está menos na capacidade de processamento do software e mais no fato de a relação sinal-ruído da web não ser boa
    • Um dos grandes motivos pelos quais o mecanismo de busca funciona relativamente bem está em decidir o que não indexar
    • O tamanho do índice cresceu de 50 milhões a 100 milhões há 1 ano para 220 milhões com base no último crawl
    • Quando a próxima rodada de crawl terminar, com base no crescimento das duas partições já concluídas, o total pode chegar a 290 milhões a 300 milhões

Próximas melhorias e apoio

  • O próximo alvo de melhoria é o parsing e a execução de consultas
    • Há muito espaço para melhorias nessa área
    • Antes do trabalho principal, está em andamento uma preparação para organizar o código afetado
  • Os grandes saltos do projeto sempre vieram de experimentos e, mesmo havendo trabalhos planejados, é bem possível que o que realmente gere grandes mudanças sejam coisas não planejadas, como o texto-âncora
  • Agradecimentos à NLnet, à FUTO, aos apoiadores no Patreon, aos simpatizantes e aos usuários

1 comentários

 
GN⁺ 2024-02-26
Opiniões no Hacker News
  • Tenho isso nos favoritos e uso para encontrar materiais super nichados sobre modelagem numérica
    Para solvers, geração de malhas e métodos de otimização, os materiais que ele encontra são muito melhores do que o que dá para achar no Google, e também aparecem bem materiais dos anos 80 e 90
    Para quem não usa apenas pacotes comerciais prontos, poder encontrar esse tipo de conhecimento e exemplos de código em Fortran é muito valioso

    • Fico curioso se há exemplos de páginas de especialistas de nicho que foram mais fáceis de encontrar no Marginalia do que no Google
  • Sim, isso é muito parecido com a busca antiga
    Mesmo que ele não encontre algo como “all quiet on the western front book movie differences”, em 1998 o AltaVista também não encontraria desse jeito
    Em vez disso, se você digitasse apenas “all quiet on the western front”, apareciam muitos sites raros, como blogs pessoais; se digitasse “polytopes”, apareciam artigos universitários e sites com código; e “rust generics” também traz discussões em mailing lists, blogs, grupos de discussão sobre Rust, sites pessoais e discussões especializadas
    Isso era exatamente a busca na web de antigamente, e a questão é como torná-la financeiramente sustentável no longo prazo

    • No momento, ela funciona com subsídios e doações, e isso dá uma folga de alguns anos
      Os custos reais de operação são cerca de US$ 100 por mês de colocation, mais despesas pessoais, então o dinheiro que entra dura mais do que se imagina
      No futuro, se for mais refinada, talvez surja financiamento adicional de pessoas com ideias parecidas, ou seja possível vender acesso à API para outros mecanismos de busca
      Busca é notoriamente difícil de monetizar fora de publicidade, mas, se os custos forem baixos, parece um caminho bastante razoável
  • Pesquisei “transformers intuition” e os resultados foram realmente impressionantes
    O Google levou a sites otimizados para SEO, principalmente Medium e sites com aparência chamativa mas conteúdo fraco, enquanto o Marginalia foi muito melhor

  • Uma thread retrospectiva de 6 meses após o lançamento que já mostrava tanto o quanto funcionava bem quanto os pontos ainda ambíguos: https://news.ycombinator.com/item?id=28550764
    Dito isso, no filtro padrão atual parece haver um pouco de resultados demais do Reddit, Stack Exchange e Wikipedia

  • A parte que mais me marcou foi esta
    O fato de ser mais difícil do que o esperado não é porque o software não dê conta, mas porque a relação sinal-ruído da web não é boa; e uma grande razão para este mecanismo de busca funcionar relativamente bem está no que ele decide não indexar

  • Não uso muito o Marginalia porque estou acostumado ao Google, mas o projeto em si é excelente
    Como parece haver cada vez mais sites de SEO spammy e respostas geradas por IA, acho que vou acabar usando com mais frequência daqui para frente

    • Acho que ainda precisa de um pouco mais de tempo para servir como mecanismo de busca padrão do dia a dia
      De forma otimista, se o trabalho relacionado a consultas e execução for concluído por volta deste verão, talvez chegue perto desse nível
  • Tenho curiosidade de perguntar ao Viktor se o Common Crawl [0] poderia ajudar
    Atualmente ele tem cerca de 100 TB e 3,35 bilhões de páginas, então, se não for processado diretamente no S3, o download vai levar bastante tempo, e não sei como é a relação sinal-ruído
    [0] https://commoncrawl.org/overview

  • É um mecanismo de busca ótimo
    Pretendo dar uma olhada no código-fonte em breve; pesquisei “ROME2D16-2T” e ele trouxe resultados relevantes de fontes obscuras, o que foi útil

  • Testei três buscas recentes que fiz no Google
    “india test cricket lowest total” não trouxe bons resultados nem uma resposta; “raid calculator” teve resultados razoáveis, mas, por causa da palavra raid, também misturou ruído como páginas de editor de saves/cheats de Pokémon
    “all quiet on the western front movie book differences” retornou 0 resultados, uma página completamente vazia

    • Nesta fase, este mecanismo de busca não tem como objetivo oferecer um grafo de conhecimento
      Ele é uma ferramenta para encontrar documentos na internet, mais do que para responder a perguntas; a funcionalidade de resposta é algo desejável, mas muitas vezes vem à custa da capacidade de encontrar documentos
      Os resultados de Pokémon eram sobre uma aplicação chamada “raidcalc”, então, do ponto de vista de um mecanismo de busca que não perfila o usuário e não conhece seus interesses, parecem uma correspondência bastante boa
      “all quiet on the western front movie book differences” parece ter batido no limite de tamanho de consulta, um resquício antigo de uma época em que consultas longas não eram bem tratadas, e isso provavelmente pode ser removido
      Tentei aumentar o limite, mas os resultados ainda não ficaram muito bons; isso cai exatamente na próxima área de trabalho: entendimento e execução de consultas
      Hoje, o mecanismo de busca não consegue entender em blocos, como uma pessoa faria, que all quiet on the western front é uma expressão única, idealmente presente no título ou repetida várias vezes, enquanto movie, book e differences são importantes no documento, mas não precisam aparecer necessariamente nessa ordem exata
      Atualmente, ele procura documentos em que todas as palavras apareçam próximas umas das outras ou em que as palavras individuais tenham alta relevância por tf-idf, então não é adequado para essa consulta
  • Interessante. Alguém encontrou um site aleatório [0] com um patch binário feito só por diversão para adicionar suporte a IPv6 ao C&C Tiberian Sun
    Ele mantém muito forte aquela sensação da velha web de que se sente saudade
    Estranhamente, me lembrei do Searchlores [1], do Fravia; se Umberto Eco tivesse se interessado por computadores, acho que teria algo desse clima
    O próprio site também parecia o labirinto da biblioteca de O Nome da Rosa: você virava qualquer esquina, descobria algo surpreendente e depois acabava perdendo para sempre :D
    [0] http://ts.sesse.net/
    [1] https://www.biostatisticien.eu/www.searchlores.org/indexo.ht...