PUBLICIDADE

SPARSEUP: Linkup Research estreia no open source com modelo de embedding esparso de 149 milhões de parâmetros que roda em uma única GPU

19/09/2026
8 visualizações
4 min de leitura
Imagem principal do post

Linkup Research lança SPARSEUP, modelo aberto de embedding esparso com 149 milhões de parâmetros

A equipe da Linkup Research anunciou o lançamento do SPARSEUP, seu primeiro modelo aberto de embedding esparso aprendido. O sistema utiliza uma base ModernBERT de 149 milhões de parâmetros e é distribuído sob a licença Apache 2.0. Segundo a Linkup, o modelo atinge média de 56,4 em nDCG@10 no benchmark BEIR-13, métrica que mede a qualidade da ranqueação de documentos em tarefas de busca. Para a equipe, esse resultado o torna o mais forte codificador esparso baseado em vocabulagem publicly disponível com menos de 150 milhões de parâmetros.

Imagem complementar

O SPARSEUP pode ser implantado em produção. Os pesos estão disponíveis na plataforma Hugging Face e o modelo pode ser carregado por meio das bibliotecas Transformers ou Sentence Transformers, usando o parâmetro trust_remote_code=True para aceitar a execução de código personalizado necessário ao funcionamento do sistema.

PUBLICIDADE

Diferentemente da maioria dos modelos abertos de recuperação de informação, que são densos e produzem um único vetor por texto, os modelos esparsos geram pesos distribuídos sobre um vocabulário. Cada dimensão do vetor corresponde a um token real, o que permite que esses vetores sejam usados em índices invertidos, estruturas de dados comuns em mecanismos de busca, e que possam ser lidos por humanos. Modelos esparsos também tendem a lidar melhor com palavras raras.

O desenvolvimento do SPARSEUP foi motivado pelo lançamento dos modelos DenseOn e LateOn pela empresa LightOn. A LightOn publicou dados abertos, uma receita de treinamento, um modelo denso e um modelo de interação tardia. O SPARSEUP surge como o terceiro componente dessa família, ocupando a posição esparsa. Como utiliza a mesma família de backbone e os mesmos dados de ajuste fino, os três estilos de recuperação podem ser comparados diretamente.

O treinamento do SPARSEUP começa a partir do checkpoint LateOn-unsupervised. Como esse ponto de partida não possuía cabeça de modelagem de linguagem mascarada, a equipe da Linkup reanexou a cabeça original do ModernBERT. O ajuste fino utilizou a mistura de dados da LightOn com aprendizado contrastivo apenas, técnica que ensina o modelo a aproximar textos semelhantes e afastar textos diferentes. Cada consulta recebe sete exemplos negativos difíceis, selecionados de um conjunto de cinquenta, além dos negativos presentes no próprio lote. Não há destilação a partir de um cross-encoder, e o treinamento cabe em uma única GPU H100.

Uma versão padrão do SPLADE baseada nesse mesmo backbone gerava saídas muito densas, repletas de palavras irrelevantes. Para resolver esse problema, a equipe aplicou três modificações. A primeira foi o deslocamento de logits, alterando o cálculo do codificador para log(1 + ReLU(x - 15)). Os logits originais do ModernBERT apresentavam valores muito altos, saturando o logaritmo e deixando os vetores densos desde o início. A segunda mudança foi a seleção das doze dimensões mais fortes do vocabulário para cada token de entrada antes do agrupamento por máximo, o que limita a expansão por token sem restringir o tamanho total do vetor. A terceira foi a unificação de maiúsculas e minúsculas. Como o tokenizador baseado em bytes tratava variantes como heat, Heat, Ġheat e ĠHeat como identificadores diferentes, o SPARSEUP as agrupa em um único identificador mantendo o maior peso. Com isso, o número de dimensões de saída caiu de cerca de cinquenta mil para aproximadamente trinta e quatro mil.

Consultas e documentos recebem prefixos especiais, [Q] e [D] respectivamente, e a pontuação entre eles é calculada como produto escalar. Na avaliação, o comprimento máximo foi definido em 128 tokens para consultas e 512 tokens para documentos.

No comparativo com outros codificadores esparsos no BEIR-13, o SPARSEUP alcançou 56,4, seguido por opensearch-neural-sparse-encoding-doc-v3-gte com 54,6, opensearch-neural-sparse-encoding-v1 com 52,44, ModernBERT-VT com 52,4, splade-v3 com 51,7 e granite-embedding-30m-sparse com 50,6. O modelo LACONIC-1B, que possui um bilhão de parâmetros e pertence a uma classe de tamanho diferente, registrou 58,7. Quando a comparação é feita de forma controlada, com backbone e dados idênticos, o LateOn atinge 58,9 e o DenseOn 57,9, enquanto o SPARSEUP permanece em 56,4. Vale destacar que o SPARSEUP utiliza busca aproximada por meio do Seismic, enquanto a LightOn reporta busca exata. O modelo vence em ArguAna e Touché e supera o DenseOn em HotpotQA, mas apresenta o maior atraso em FiQA e resultados fracos em DBPedia. Em uma versão descontaminada do BEIR, a diferença para o DenseOn cai para 0,17 ponto, embora a Linkup alerte que os subconjuntos NQ e MS MARCO possuem apenas 21 e 46 consultas, respectivamente, o que torna esses números ruidosos.

Em termos de velocidade e esparsidade, no conjunto MS MARCO o SPARSEUP produz em média 47 termos não nulos por consulta e 190 por documento, contra 25 e 170 do SPLADE-v3. Com o índice invertido do Seismic, o modelo alcança mais de 97% de revocação em relação à busca exata, com latência de aproximadamente 380 microssegundos por consulta em uma única thread. A equipe da Linkup afirma que inflar o tamanho do vetor poderia adicionar entre 1 e 2 pontos no BEIR, mas optou por manter a esparsidade.

O SPARSEUP marca a estreia da Linkup Research no cenário de modelos abertos, oferecendo à comunidade um codificador esparso competitivo, distribuído sob licença permissiva e acompanhado de detalhes técnicos sobre as decisões de treinamento e os ajustes que viabilizaram o resultado.

PUBLICIDADE

Leitura recomendada

Comentários

Nenhum comentário ainda. Seja o primeiro a comentar!