Jev para processos: decisões rápidas dentro de um agente procedural
O Jev não conversa: devolve decisões tipadas com probabilidade. Por que isso encaixa nas pequenas decisões de um processo, e como ligá-lo a um procedimento na Sublime.
Sublime8 min de leitura
Em 15 de setembro de 2026, a TypeSafe AI lançou o Jev, um modelo que não sabe conversar, e foi feito assim de propósito. Você manda um conteúdo e uma lista de perguntas fechadas, e ele devolve decisões tipadas, cada uma com a probabilidade de estar certa.
Para quem se acostumou com modelos que escrevem de tudo, parece um passo atrás. Para quem desenha processos, é a peça que faltava. A maior parte das decisões de um atendimento não pede um texto, pede uma escolha.
O que o Jev faz, e o que não faz
A TypeSafe chama o Jev de modelo System One, em referência ao pensamento rápido e intuitivo descrito por Daniel Kahneman. A entrada é um estado, em texto ou dados estruturados, mais perguntas de três tipos:
| Tipo | Pergunta | Devolve |
|---|---|---|
| Choice | Qual destas opções? (até 255) | A opção escolhida, a probabilidade de cada uma e a confiança |
| Score | Onde isso fica numa escala? | A posição na escala, com probabilidade por nível |
| Noul | Sim ou não? | A probabilidade de a resposta ser sim, de 0 a 1 |
Todas as perguntas são respondidas juntas, numa única passada. E a resposta nunca sai do conjunto que você declarou: uma Choice entre "suporte", "venda" e "financeiro" devolve uma dessas três, nunca uma quarta.
Os números da empresa são agressivos: de 70 a 500 milissegundos por resposta e US$ 0,042 por milhão de tokens de entrada, com a saída gratuita. A página inicial fala em até 193 vezes mais rápido e 444 vezes mais barato que um LLM nas tarefas para as quais o Jev foi feito. As medições independentes são mais modestas. Uma análise de 12.759 posts de usuários depois do lançamento, citada pela InfoQ, encontrou uma mediana de 7 vezes mais velocidade e 30 vezes menos custo. Continua sendo muito.
O que ele não faz também está escrito: não gera texto, não conversa e não raciocina em várias etapas. Para isso continua existindo o LLM.
A documentação do Jev parece um manual de processo
A parte mais interessante da documentação é a página de limitações da versão 1.13. Algumas linhas:
- "O Jev não é uma calculadora. Recomendamos fortemente implementar qualquer lógica matemática em código."
- Ele lê datas como texto, e não como quantidades ordenadas. Ordenar, somar dias e comparar prazos fica com o código.
- Ele não conta de forma confiável. Conte no código, com uma pergunta por item.
- A precisão cai quando o estado cresce com conteúdo que não tem a ver com a decisão. Filtre antes e mande só o que a pergunta precisa.
É a mesma divisão de trabalho que vale para qualquer modelo: o modelo entende e a regra decide. Um modelo feito para decidir rápido chegou à mesma conclusão e deixou isso escrito na própria documentação. Mostramos essa divisão no caso do preço em Seu agente de IA não deveria calcular preço.
Onde ele entra num processo
Um processo de atendimento tem muitas decisões pequenas e poucas conversas longas. Qual é o assunto? A pessoa quer falar com alguém? O pedido é urgente? O lead está pronto para comprar? A ação que o agente vai executar é a que o cliente pediu?
Todas são perguntas de múltipla escolha. Um LLM consegue respondê-las, mas custa caro para o que é, demora segundos em vez de milissegundos e não diz quão seguro está.
Num agente procedural, cada decisão tem a ferramenta certa, e o Jev ocupa a camada do meio:
| Camada | Quem decide | Exemplo |
|---|---|---|
| Regra | O seu código | Prazo de troca menor que 30 dias, valor acima da alçada |
| Decisão rápida | O Jev | Assunto da mensagem, pedido de humano, urgência, temperatura do lead |
| Conversa | O LLM | Entender um pedido confuso, responder no tom da casa |
| Fronteira | Uma pessoa | Desconto, exceção, cliente insatisfeito |
O que liga as camadas é a confiança. Acima de um limiar que você define, o processo segue pela decisão do Jev. Abaixo dele, a decisão sobe para o LLM ou para uma pessoa.
Armin Ronacher, CTO da Earendil, criticou o Jev dizendo que o desenho "delega um pouco o problema da alucinação ao usuário": alguém precisa decidir se 50% de probabilidade basta para agir. A crítica é justa, e um procedimento existe justamente para isso. Num processo bem desenhado, esse limiar não fica implícito na cabeça de ninguém. Ele está escrito numa etapa, com um caminho declarado para cada lado.
Como ligar o Jev a um procedimento na Sublime
A Sublime não tem integração nativa com o Jev, e nem precisa. O Jev é uma API HTTP, e a etapa de Requisição HTTP conecta um procedimento a qualquer API.
O desenho usa três etapas:
Requisição HTTP Condição Ramos do processo
(pergunta ao Jev) → (confiança ≥ 0,9?) → ├── sim: segue pela escolha do Jev
└── não: Roteador AI ou Transferir a humano
1. A requisição. Um POST para https://api.typesafe.ai/v1/systemone, com autenticação Bearer apontando para uma variável do tipo segredo que guarda a sua chave. No corpo, o estado recebe a mensagem do contato e as perguntas são as decisões que o procedimento precisa tomar. Com a mensagem já preenchida, fica assim:
{
"model": "jev-1.13.0",
"state": "Oi! Quanto fica o chalé pra 4 pessoas no réveillon?",
"questions": {
"assunto": {
"type": "choice",
"instructions": "Qual é o assunto principal da mensagem do cliente",
"criteria": {
"orcamento": "Quer saber preço ou disponibilidade",
"reserva_existente": "Fala de uma reserva já feita",
"outro": "Qualquer outro assunto"
}
},
"pede_humano": {
"type": "noul",
"instructions": "O cliente pede para falar com uma pessoa"
}
}
}
Fixar a versão, como jev-1.13.0, em vez do apelido jev-latest é recomendação da própria TypeSafe. O apelido passa a apontar para a versão nova quando ela sai, e o limiar que você calibrou começa a valer para outro modelo sem você saber.
2. O mapeamento. Ao configurar a etapa, você executa a requisição de verdade e marca os campos da resposta que viram variáveis: a escolha e a confiança de assunto, e a probabilidade de pede_humano. Cada um vira uma variável tipada, disponível para as etapas seguintes.
3. A condição. Uma etapa de Condição compara os números com os limiares. Se a probabilidade de pede_humano passa de 0,8, a conversa vai para a equipe. Se a confiança do assunto passa de 0,9, o procedimento segue pelo ramo daquele assunto. Se não passa, a decisão vai para um Roteador AI, que lê a conversa inteira com um LLM, ou direto para uma pessoa.
Repare no que fica com cada parte. O Jev responde as perguntas fechadas em milissegundos. O limiar é uma regra sua, escrita numa etapa e igual em toda execução. E o LLM só entra quando a pergunta fechada não bastou.
Falta decidir uma coisa: o que fazer se a API do Jev estiver fora do ar. Configure a etapa para seguir sem o resultado. Sem confiança nenhuma, a condição cai no ramo de baixa confiança e o processo continua pelo LLM. O Jev fica sendo uma otimização, nunca um ponto único de falha.
Onde ele compensa
- Triagem de entrada. Toda mensagem nova passa por uma Choice de assunto antes de qualquer outra coisa. Com volume, é aqui que a diferença de custo aparece.
- Pedido de humano e insatisfação. Uma Noul para "quer falar com uma pessoa" e outra para "está irritado" pegam o sinal na primeira mensagem, em vez de o agente insistir três vezes até perceber.
- Qualificação de lead. Um Score de intenção de compra decide se a conversa segue para o procedimento de venda ou para uma resposta informativa.
- Portão antes de uma ação. Antes de uma etapa que cobra, emite ou cancela, uma Noul confere se a ação corresponde ao que o cliente pediu. A LangChain usa o Jev da mesma forma para barrar chamadas de ferramenta arriscadas antes de elas rodarem.
Cuidados antes de confiar
O Jev está em acesso antecipado, e os números da página inicial são da própria empresa. Quatro cuidados valem para qualquer uso sério:
- Calibre o limiar com mensagens reais. Separe algumas centenas de mensagens que a sua equipe já classificou e veja quanto o Jev acerta em cada faixa de confiança. É essa tabela que diz onde fica o 0,9.
- Troque a ordem das opções. A documentação avisa que a versão 1.13 tende a favorecer a primeira opção de uma Choice. Rode a mesma amostra com a ordem invertida e confira se as respostas mudam.
- Mande só o que a pergunta precisa. A última mensagem e os campos relevantes, e não o histórico inteiro.
- Meça o caminho e o dado separadamente. Na Sublime, a requisição HTTP não sai em preview nem nos cenários, então ali a condição se comporta como se o Jev não tivesse respondido e o processo segue pelo ramo de baixa confiança. Isso prova que o caminho seguro funciona. A precisão do Jev se mede à parte, com a amostra rotulada. Juntas, as duas medições dizem que o processo funciona.
Uma peça no lugar certo
O Jev não substitui o LLM nem o procedimento. Ele ocupa um espaço que vinha sendo preenchido pelo modelo errado: as dezenas de decisões pequenas que um processo toma em cada conversa. Com um limiar escrito numa etapa e um caminho declarado para quando ele não tem certeza, essas decisões ficam mais rápidas, mais baratas e, pela primeira vez, vêm com um número que diz quanto confiar nelas.