PUBLICIDADE

Nokia AnyJev: a biblioteca que transforma LLMs abertos em decisores calibrados sem nenhuma etapa de treinamento

23/09/2026
7 visualizações
4 min de leitura
Imagem principal do post

Nokia AnyJev transforma modelos de linguagem abertos em modelos de decisão calibrados sem necessidade de treinamento

A equipe de pesquisa aplicada da Nokia tornou pública a AnyJev, uma biblioteca em Python capaz de converter um modelo de linguagem de código aberto em um modelo de decisão funcional, dispensando qualquer etapa de treinamento. O objetivo da ferramenta é resolver uma tarefa recorrente em ambientes de produção: escolher uma resposta dentro de um conjunto fixo de opções, em vez de gerar uma frase completa. A biblioteca está disponível no repositório PyPI sob a licença Apache-2.0 e oferece suporte aos backends transformers e vLLM, ambos com escore de prefixo compartilhado.

Imagem complementar

A AnyJev adota uma interface inspirada no Jev, modelo de decisão do tipo System One lançado pela TypeSafe AI em setembro de 2026. A interação com a biblioteca é direta: o usuário define uma pergunta tipada e recebe de volta uma decisão acompanhada de uma probabilidade, que pode ser utilizada como limite de confiança. Essa probabilidade é lida diretamente da distribuição do próximo token do modelo, sem qualquer geração de texto, parsing adicional ou processo de calibração por treinamento. A biblioteca trabalha com três tipos de pergunta: escolha, quando o sistema deve selecionar uma entre K opções; noul, que representa respostas do tipo sim ou não; e escore, em que a resposta é alocada em uma de várias faixas ordenadas.

PUBLICIDADE

A equipe de pesquisa da Nokia identificou dois problemas comuns em soluções já existentes que simplesmente restringem os tokens de saída aos rótulos das opções e leem seus escores. O primeiro é que a resposta pode mudar quando a ordem das opções é alterada. O segundo é que as probabilidades obtidas dessa forma não são calibradas, ou seja, não refletem de forma confiável a chance real de acerto. A documentação do projeto aponta duas causas principais: o viés de prioridade, em que o modelo favorece certos rótulos independentemente do conteúdo, e o viés de posição, em que determinados lugares na lista de opções recebem peso maior que outros.

Para corrigir essas distorções, a AnyJev implementa dois níveis de ajuste. O nível L0, ativado por padrão e que não exige nenhum rótulo adicional, aplica duas correções. A primeira é a rotação cíclica: para uma pergunta com K opções, a lista é apresentada em K rotações diferentes, de modo que cada opção apareça uma vez em cada posição. Os resultados são combinados em espaço logarítmico por meio de uma média geométrica, o que elimina o viés de posição de forma exata caso ele seja aditivo nesse espaço. A segunda correção é o ajuste de prioridade, que por padrão usa calibração em lote, mantendo uma média móvel das distribuições previstas sobre entradas reais e dividindo-a por um fator de intensidade de 0,75. Esse ajuste começa a ser aplicado após oito itens processados. O custo do nível L0 é de K pré-processamentos por decisão, realizados em lote sobre um prefixo compartilhado, o que resulta em cerca de 0,25 segundo por decisão em um lote de 32 itens em uma GPU H100, considerando K igual a 20.

O nível L1 acrescenta escalonamento de temperatura sobre a base do L0 e requer entre 100 e 500 rótulos por pergunta. Os valores ajustados são salvos em um pequeno arquivo JSON. Esse nível modifica a forma da curva de confiança, mas não altera o ranking das respostas.

Os testes realizados com o modelo Qwen3-8B no conjunto BANKING77, que envolve 20 categorias e 300 itens de teste, mostram diferenças expressivas em relação à leitura bruta dos logits, que consiste em usar diretamente os valores produzidos pelo modelo para cada opção. A taxa de inversão de respostas ao reordenar as opções caiu de 0,230 para 0,073 com o nível L0 e para 0,077 com o nível L1. A acurácia subiu de 0,747 para 0,803 com L0 e para 0,807 com L1. O erro de calibração, medido pela métrica ECE, reduziu-se de 0,240 para 0,184 com L0 e para 0,095 com L1. Já a parcela de tráfego considerada auto-decisível dentro de uma margem de erro de 5% saltou de 7,7% para 46,3% com L0 e atingiu 52,0% com L1. O repositório também informa que o nível L0 reduziu as inversões por ordem em todas as nove combinações de modelos e tarefas testadas. Em um conjunto de decisões tipadas, o modelo Qwen3-32B com L1 alcançou ECE de 0,036, frente a 0,144 publicado para o Jev. Em acurácia, o modelo ajustado Laya segue à frente.

A pesquisadora Wu relatou que a equipe testou a AnyJev em um problema interno de roteamento da Nokia e obteve resultados promissores. Para utilizar a biblioteca, basta instalá-la via gerenciador de pacotes e instanciar um Decider apontando para o backend escolhido, definindo em seguida as perguntas tipadas que o modelo deverá responder. Para cenários de maior demanda, o backend vLLM pode ser configurado com cache de prefixo, permitindo ganhos adicionais de desempenho.

A AnyJev representa, portanto, uma camada intermediária que transforma modelos de linguagem abertos em sistemas de decisão tipados, sem a necessidade de ajuste fino, oferecendo suporte aos principais frameworks de inferência e distribuição aberta, o que facilita sua adoção em pipelines de produção que dependem de classificações, roteamentos e pontuações com níveis confiáveis de confiança.

PUBLICIDADE

Leitura recomendada

Comentários

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