Что такое Jev и почему это не очередная LLM
TypeSafe открыла ранний доступ к Jev 15 сентября. Компания называет модель первой «System One» для оценки утверждений и принятия решений. Логика работы такая: вы передаёте текст и вопрос с закрытым списком ответов, модель возвращает вероятности. Текста на выходе нет, поэтому нет и галлюцинаций в привычном смысле: придумать вариант, которого не было в вопросе, Jev не может. Как TypeSafe описывает этот подход и какие кейсы уже собраны у Vercel и Bryo AI, разобрано в материале про модель без текста на выходе.
Два типа вопросов: noul и choice
Тип noul, то есть вопрос «да/нет», возвращает одно число: вероятность ответа «да». Шкала читается буквально: 0,05 означает уверенное «нет», 0,95 - уверенное «да». Тип choice возвращает вероятность каждого варианта из предложенного списка, а вариантов в одном вопросе может быть до 255. В ответе на choice приходит и confidence, то есть уверенность в сделанном выборе.
Один вызов может содержать много вопросов сразу. Для экономики это важно: HTTP-запрос и передача контекста делятся между вопросами, и вы не платите за каждый вопрос отдельно.
Пример ответа на вопрос choice о тональности отзыва:
{
"choice": "negative",
"probabilities": {"negative": 0.97, "positive": 0.03},
"confidence": 0.93,
"usage": {"input_tokens": 336},
"model": "jev-1.13.0"
}
Код запросов и полные таблицы автор приводит в переводе разбора на Habr.
Confidence: что это и почему ему не всегда можно верить
TypeSafe не объясняет, как вычисляется confidence. Из примера выше видно, что это не максимальная вероятность: там значения 0,93 и 0,97 соответственно. На открытых датасетах отбор по максимальной вероятности дал ту же картину, что и отбор по confidence, с расхождением в пределах одного процентного пункта. Практический вывод: считать confidence отдельным сигналом смысла мало, для фильтрации хватает вероятности.
Дальше в статье под «уверенным ответом» понимается значение не дальше 0,1 от одного из концов диапазона для вопросов «да/нет» (то есть 0-0,1 или 0,9-1,0) либо значение от 0,9 для выбора одного варианта.
Как проходил тест: 16 000 вызовов, четыре датасета и реальные процессы
Тест провёл Aman Kumar, на него ушло два дня и около 16 000 вызовов. Сначала Jev проверялся на четырёх открытых датасетах для классификации, где на те же вопросы отвечали две небольшие модели OpenAI: gpt-5.4-mini и gpt-5.6-luna. Затем проверка шла на нескольких тысячах реальных решений из рабочих процессов автора. Правильность оценивалась по тому, что произошло на самом деле, а не по мнению другой модели: LLM-судья добавил бы к результату собственный шум и предпочтения. Исходные данные с разбивкой по наборам опубликованы на Habr.
Открытые датасеты: Enron, SST-2, AG News, Banking77
Четыре набора подобраны так, чтобы покрыть разные типы классификации:
- Enron - классификация email-сообщений;
- SST-2 - бинарная классификация тональности коротких текстов;
- AG News - тематическая классификация новостей;
- Banking77 - определение интента в банковских запросах с 77 категориями.
Все четыре набора состоят из коротких текстов с чёткими метками. Это условие, при котором результаты вообще можно сравнивать: на таких данных задача сводится к выбору из закрытого списка, без генерации и без длинного контекста. На синтетическом бенчмарке с произвольными формулировками картина была бы другой.
Внутренние данные: несколько тысяч реальных решений
Вторая часть проверки - несколько тысяч решений из реальных рабочих процессов. Правильность здесь оценивалась по фактическому исходу: сработала ли маршрутизация, попал ли запрос в нужную категорию, подтвердилось ли решение дальше. Такой подход грязнее прогона по эталонной разметке, зато показывает поведение модели там, где метки размыты, а цена ошибки различается от случая к случаю. Именно на этих данных проявилась основная закономерность: на длинных входах и неоднозначных категориях точность и уверенность падают вместе.
Результаты: где Jev выигрывает, а где проигрывает
Сводка по открытым датасетам: на классификации коротких текстов Jev не уступает gpt-5.4-mini и gpt-5.6-luna или превосходит их на трёх наборах из четырёх, при меньшей стоимости и меньшей задержке.
Три из четырёх: где Jev обошёл небольшие LLM
Логика выигрыша предсказуема. Когда текст короткий, метка одна, а список вариантов закрыт, генеративной модели нечего делать: она так же сводит задачу к выбору одного варианта, но тратит токены на преамбулы и объяснения. Jev выбирает напрямую и возвращает число. Там, где метки не пересекаются, например в бинарной тональности, формат работает без потерь.
Задержка и цена при этом ниже, и это уже аргумент не про качество ответа, а про стоимость решения. Разбивка по конкретным наборам приведена в исходном разборе.
Где точность и уверенность падают одновременно
Длинные входы и размытые метки ломают картину. Типичные примеры: письмо, где тема размазана по абзацам; категории с пересекающимся смыслом; запросы, в которых смешаны два интента. Здесь точность падает, и одновременно падает уверенность: низкая вероятность почти всегда сопровождает ошибку. Такое поведение полезно для пайплайна, потому что слабые ответы отсекаются по числу, а не по самооценке модели.
Что делать с этим практически: не строить на Jev классификацию длинных документов, не ждать роста точности при пересекающихся категориях и всегда держать вторую ступень для середины диапазона.
Jev как фильтр: как использовать его в связке с классификатором
Главный вывод теста: Jev работает как отсеивающий фильтр перед существующим классификатором, а не как его замена. Уверенные ответы у краёв диапазона можно принимать сразу, середину передавать более сильной модели. Нагрузка на дорогую модель падает, обработка ускоряется, а качество на принятой части остаётся под контролем.
Схема пайплайна: Jev → порог → LLM
Схема состоит из трёх шагов:
- Текст и вопрос с вариантами уходят в Jev. Если вопросов несколько, они объединяются в один вызов.
- Ответ разбирается по порогам: значение у края диапазона принимается как финальное решение.
- Всё, что попало в середину, уходит сильной модели, текущему классификатору или человеку на разбор.
| Зона вероятности | Действие | Почему так |
|---|---|---|
| 0-0,1 или 0,9-1,0 для noul, от 0,9 для choice | Принять ответ Jev | Ответ идёт на выход без вызова дорогой модели |
| 0,1-0,9 | Передать сильной модели или на ручную проверку | На длинных текстах и размытых метках падают и точность, и уверенность |
Технически это встраивается в существующие пайплайны: для LangChain есть TypeSafeClassifier и готовые middleware, включая маршрутизацию моделей и блокировку рискованных вызовов инструментов до их выполнения. Как это устроено, разобрано в материале про System One модель, LangChain и middleware.
Как подобрать пороги отбрасывания на своих данных
Универсальных порогов нет: они зависят от задачи, длины текстов и того, насколько метки пересекаются. Методика подбора выглядит так:
- Возьмите размеченную выборку из своей задачи, минимум несколько сотен примеров, лучше больше.
- Прогоните её через Jev и сохраните вероятность и confidence по каждому примеру.
- Постройте распределение значений и посмотрите, как меняется точность на принятых ответах при разных порогах.
- Выберите порог, при котором точность на принятой части близка к целевой, а доля отброшенных запросов укладывается в бюджет по стоимости и задержке.
- Проверьте выбранный порог на отложенной выборке: на тренировочной он почти всегда выглядит лучше, чем есть на самом деле.
Отдельно посмотрите на калибровку: если модель на ваших данных переоценивает уверенность, порог придётся сдвинуть ближе к краям. Расхождение между confidence и максимальной вероятностью в пределах одного процентного пункта, которое автор увидел на открытых датасетах, упрощает отбор: достаточно смотреть на вероятность. На своих данных это стоит перепроверить, а не переносить как готовую настройку.
Сколько это стоит и насколько быстро работает
Один вызов Jev с ноутбука автора занял 850 мс и стоил $0,000014: 336 входных токенов по $0,042 за миллион. Выход бесплатный, поскольку выходных токенов нет: модель возвращает числа, а не текст. Детали тарификации есть в исходном разборе.
Сравнение с небольшими LLM складывается в пользу Jev там, где задача сводится к выбору из списка. У генеративной модели оплачиваются и вход, и выход, а на классификации выход небесплатный: она пишет пусть короткое, но объяснение. У Jev платный только вход, и при 336 токенах на запрос цена одного решения измеряется миллионными долями доллара.
Ориентир по другому сценарию, где Jev выступает судьёй: 0,44 с и $0,00035 за вызов, тогда как LLM-судьи на той же задаче обходились от $0,39 до $28,17. Разбор с этими цифрами приведён в материале про Jev-as-a-judge.
Экономия растёт на объёме. Если фильтр принимает уверенную часть ответов, сильная модель вызывается только для середины диапазона, и её счёт падает пропорционально доле отброшенных запросов. При больших потоках и простых задачах этот эффект важнее абсолютной цены одного вызова Jev.
Ограничения и риски: когда Jev не стоит использовать
- Длинные тексты и размытые метки. Точность и уверенность падают одновременно, доля середины растёт, и экономия от фильтрации исчезает.
- Непрозрачный confidence. TypeSafe не объясняет, как он вычисляется, и он не равен максимальной вероятности. Строить на нём бизнес-логику без собственной проверки рискованно.
- Нет генерации и объяснений. Если после решения нужен текст, обоснование или извлечение сущностей из ответа, Jev такую задачу не закрывает.
- Чужие пороги не работают. Значения, снятые с открытых датасетов, плохо переносятся на другой домен: их нужно подбирать по своим размеченным данным и проверять на отложенной выборке.
- Jev не заменяет классификатор целиком. На пересекающихся категориях без второй ступени часть ошибок уйдёт на выход вместе с «уверенными» ответами.
Если нужен полный контроль над моделью и локальный запуск вместо внешнего API, есть путь дообучения открытой модели под похожие типизированные решения: энтузиаст собрал аналог Jev на Qwen3.5 4B за пару часов аренды GPU, и разбор с метриками и ограничениями лежит в материале про LoRA-файнтюнинг. До уровня Jev тот результат пока не дошёл.
Итог: кому и как использовать Jev
Jev работает фильтром перед классификатором. На коротких текстах с чёткими метками он дешевле и быстрее небольших LLM и держится с ними наравне или впереди. Уверенные ответы у краёв диапазона можно принимать сразу, середину передавать более сильной модели. Экономия заметна при больших объёмах и простых задачах, где доля уверенных ответов высока.
Практический старт: возьмите размеченную выборку из своей задачи, прогоните её через Jev, постройте распределение вероятностей, подберите пороги под целевую точность и сравните схему с текущим решением на отложенных данных. Ранний доступ к Jev открыт с 15 сентября.