O modelo deepvk USER2-base quase alcançou a OpenAI em um teste de embeddings para jurisprudência
Em um corpus de 858 decisões do Tribunal de Propriedade Intelectual, o deepvk USER2-base local apresentou resultado quase no nível do OpenAI…
Processado por IA de Habr AI; editado por Hamidun News
O modelo local em russo deepvk USER2-base quase empatou com OpenAI e Voyage em um teste de embeddings para busca em jurisprudência. Em um corpus de 858 decisões de propriedade intelectual, o autor do benchmark concluiu que, para um RAG jurídico de escopo estreito, nem sempre é preciso usar uma API cara, e que o ganho de um reranker depende fortemente da força do modelo base.
Como o teste foi montado
Para a avaliação, foi montado um corpus estreito, mas prático: 858 decisões do Tribunal de Direitos de Propriedade Intelectual e os textos da Parte IV do Código Civil da Federação Russa. Os modelos foram testados em 30 perguntas de dificuldade variada — de disputas típicas sobre falsificações em marketplaces a casos envolvendo patentes, marcas, domínios e direitos autorais em redes sociais. É importante notar que a avaliação não foi baseada na saída final do reranker, mas no top-20 bruto de cada modelo: os resultados de sete embeddings foram combinados, deduplicados e depois anotados.
Assim, o autor evitou o viés em que documentos não processados recebem automaticamente nota zero. A rotulagem foi feita via NotebookLM e depois conferida manualmente por amostragem. No total, foram 2.
751 pares “pergunta — caso”, com notas de 0 a 2. A métrica principal foi nDCG@5, porque, para o usuário real, a qualidade de todo o top-5 importa mais do que apenas o primeiro resultado relevante. Além disso, foi calculado o MRR e executado um bootstrap pareado com 2.
000 iterações. O próprio autor chama o teste, com honestidade, de piloto: 30 perguntas é pouco, então parte das diferenças entre os modelos continua dentro do ruído estatístico.
Quem saiu na frente
No grupo de topo entraram OpenAI text-embedding-3-large, Voyage voyage-3 e o local deepvk USER2-base. Nessa amostra, eles se mostraram estatisticamente indistinguíveis entre si, embora tenham superado com folga o Yandex e parte dos modelos do grupo intermediário. A principal conclusão não é que tenha surgido um vencedor absoluto, mas que um modelo local gratuito em russo acabou ficando na mesma liga das API comerciais.
“USER2-base é a principal descoberta do teste.”
- Trio líder: OpenAI, Voyage e USER2-base
- USER2-base sem reranker mostrou nDCG@5 de 0.773
- A combinação USER2-base + jina-reranker-v3 subiu para 0.797
- OpenAI sem reranker marcou 0.809, ou seja, a diferença continuou dentro da margem de erro
- Um híbrido de OpenAI e USER2-base ampliou a cobertura de casos “ideais” de 33% para 49%
O último ponto é especialmente interessante para pipelines de RAG. Embeddings diferentes trazem documentos diferentes, por isso um pool híbrido de candidatos amplia a cobertura de forma perceptível. Mas o autor ressalva separadamente que isso ainda é uma análise oracle, e não uma verificação honesta da saída em produção: se o ranking for fraco, os documentos necessários continuarão nas posições 10–15. Para confirmar o efeito em produção, é preciso um teste separado com Reciprocal Rank Fusion e nDCG final.
Onde o reranker ajuda
Com rerankers, o quadro ficou menos óbvio. Entre quatro modelos, o autor considera jina-reranker-v3 e bge-reranker-v2-m3 os únicos realmente funcionais para um corpus jurídico em russo, com o jina parecendo um pouco melhor em média. Nesse conjunto, o mxbai-rerank-base-v2 piorou perceptivelmente o resultado, enquanto o mmarco em inglês ficou quase neutro.
A conclusão prática é simples: não dá para escolher um reranker “por padrão” só porque ele é popular no stack em inglês. O efeito do reranker dependia fortemente da qualidade do embedding original. Em modelos fortes como OpenAI, Voyage e USER2-base, os ganhos ficaram dentro da margem de erro.
Nos mais fracos, o benefício já aparece com clareza: o Yandex subiu de 0.630 para 0.755 com bge, enquanto o Cohere foi de 0.
700 para 0.793 com jina. Em tempo de indexação, quase todos os modelos fecharam o corpus inteiro em 7–15 minutos, enquanto o Yandex levou cerca de 2,5 horas por causa dos limites de API.
No fim, o autor pretende colocar USER2-base e jina-reranker-v3 no seu bot, deixando o bge como opção de reserva caso falte hardware.
O que isso significa
Para sistemas verticais de RAG em russo, este é um sinal forte: modelos locais já podem competir com grandes API em domínios estreitos, se forem testados em um corpus real, e não em benchmarks médios. Outra conclusão é que o reranker não é um botão mágico: seu valor aparece onde o embedding base, por si só, não ranqueia bem o suficiente.
Quer parar de ler sobre IA e começar a usar?
AI News é um feed curado de notícias de IA. A Hamidun Academy ensina você a usar IA no trabalho.