Jev API
Принимает данные и вопросы с вариантами ответа, возвращает выбранный вариант и вероятности. У Jev 1.14 контекст 262 144 токенов. Модель TypeSafe AI, выпущена 14 октября 2026 года.
Jev 1.14 API работает в России без VPN: один API ключ GEN202, оплата рублями с российской карты. Подключено и проверено 17 октября 2026 года.
Цена: за миллион токенов, вход — 18.59 кр. (9,29 ₽ · $0.0845), выход — бесплатно.
кр. — кредиты, покупаются за рубли.
Песочница
Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступно 10 запусков в сутки.
Нажмите «Запустить» — ответы модели появятся здесь
{ }
Цена Jev 1.14
Цена за миллион токенов — за входные токены: данные и вопросы. Ответ модели бесплатный.
| Токены | Наша цена |
|---|---|
| Вход | 18.59 кр. $0.08459,29 ₽ |
| Выход | бесплатно |
кр. — кредиты, покупаются за рубли.
Вызов через API
Адрес один, и ответ приходит на этот же запрос. Ключ передаётся заголовком
Authorization: Bearer sk-… и выпускается
в кабинете. На один ключ шлюз пропускает
600 запросов в минуту.
Счёт идёт по входным токенам из поля usage ответа: это данные и вопросы
вместе. Ответ модели бесплатный. Кредиты списываются после ответа, по факту; за один запрос
списывается не меньше 0,02 кредита. Сколько списано, приходит в ответе полем
credits_consumed. Запрос, не дошедший до ответа, не тарифицируется.
Поля запроса
Формат тот же, что у разработчика модели: три поля. Данные и вопросы вместе — до 262 144 токенов. В одном запросе можно задать несколько вопросов об одних данных: модель отвечает на каждый отдельно.
| Поле | Тип | Обяз. | Что в нём |
|---|---|---|---|
| model | текст | обязательное | jev/1-14 |
| state | текст, объект или список | обязательное |
Данные, о которых модель выносит решение: письмо, отзыв, запись из базы; картинки — частью image_url, как в
документации
|
| questions | объект | обязательное | Вопросы: имя вопроса и его описание. Имя вы выбираете сами, под ним придёт ответ |
| questions.*.type | текст | обязательное |
Вид вопроса: choice — один из вариантов,
noul — да или нет, score — место на шкале, box — где на картинке предмет
(вопрос box)
|
| questions.*.instructions | текст, объект или список | обязательное | Сам вопрос. Текстом — когда хватает одной фразы. Объектом или списком — когда к вопросу нужны пояснения или данные, на которые он ссылается |
| questions.*.criteria | объект | обязательное |
У choice — варианты ответа: имя варианта и его описание. Описание —
текст, объект, список или null, когда пояснять нечего. До
255 вариантов
|
| questions.*.criteria | список | обязательное |
У score — ступени шкалы от низшей к высшей. Ступень — текст, объект
или список. До 10 ступеней
|
| questions.*.criteria | объект | необязательное |
У noul — что считать ответом «да» и что ответом «нет»: поля
true и false, оба сразу
|
Вопрос объектом — пример из справки разработчика: сам вопрос лежит в одном поле, данные — в соседнем, и вопрос ссылается на них по имени в обратных кавычках.
"instructions": {
"potential_duplicate": {
"name": "John Smith",
"location": "Oakland, California",
"last_employer": "Google"
},
"question": "Is the resume for the same person as `potential_duplicate`?"
}
Вызов
Запрос показан целиком, с именем этой модели и тремя вопросами разного вида: подставить остаётся только свой ключ.
curl https://api.gen202.com/v1/decisions \
-H "Authorization: Bearer sk-ваш-ключ" \
-H "Content-Type: application/json" \
-d '{
"model": "jev/1-14",
"state": "Help! My payouts have been failing for 3 days.",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Does this convey urgency?",
"criteria": {
"true": "Explicitly time-sensitive",
"false": "No urgency expressed"
}
},
"department": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments, invoicing, refunds",
"technical": "Bugs, outages, integrations",
"sales": "Pricing, upgrades, new accounts"
}
},
"frustration": {
"type": "score",
"instructions": "How frustrated is the customer?",
"criteria": ["Calm", "Frustrated", "Very angry"]
}
}
}'
import requests
answer = requests.post(
"https://api.gen202.com/v1/decisions",
headers={"Authorization": "Bearer sk-ваш-ключ"},
json={
"model": "jev/1-14",
"state": "Help! My payouts have been failing for 3 days.",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Does this convey urgency?",
"criteria": {
"true": "Explicitly time-sensitive",
"false": "No urgency expressed",
},
},
"department": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments, invoicing, refunds",
"technical": "Bugs, outages, integrations",
"sales": "Pricing, upgrades, new accounts",
},
},
"frustration": {
"type": "score",
"instructions": "How frustrated is the customer?",
"criteria": ["Calm", "Frustrated", "Very angry"],
},
},
},
).json()
print(answer["answers"]["department"]["choice"]) # billing
print(answer["usage"]) # по нему выставлен счёт
Ответ
Ответ на запрос выше, каким он пришёл от модели: под именем каждого вопроса — его ответ.
{
"model": "jev/1-14",
"answers": {
"is_urgent": { "type": "noul", "noul": 0.95 },
"department": {
"type": "choice",
"choice": "billing",
"probabilities": { "billing": 0.86, "technical": 0.14, "sales": 0 },
"confidence": 0.79
},
"frustration": {
"type": "score",
"score": 1.05,
"legend": { "0": "Calm", "1": "Frustrated", "2": "Very angry" },
"probabilities": { "0": 0, "1": 0.95, "2": 0.05 },
"confidence": 0.93
}
},
"usage": { "input_tokens": 426, "output_tokens": 73 },
"credits_consumed": 0.02
}
| Поле | Тип | Что в нём |
|---|---|---|
| model | текст | Имя модели, как в запросе |
| answers | объект | Ответы: под именем каждого вопроса — его ответ |
| answers.*.type | текст |
Вид вопроса: noul, choice, score или box
|
| answers.*.noul | число | У noul — вероятность ответа «да», от 0 до 1 |
| answers.*.choice | текст | У choice — вариант с наибольшей вероятностью |
| answers.*.score | число |
У score — место на шкале, взвешенное по вероятностям ступеней; может
лежать между ступенями
|
| answers.*.legend | объект | У score — номер ступени и её описание из запроса |
| answers.*.probabilities | объект |
У choice и score — вероятность каждого
варианта или ступени, в сумме 1
|
| answers.*.confidence | число |
У choice и score — уверенность модели, от 0
до 1; считается из вероятностей. У box — уверенность в рамке, от 0 до 1
|
| answers.*.box | объект |
У box — края рамки top,
bottom, left,
right: доли высоты и ширины картинки от 0 до 1, считая от левого
верхнего угла
|
| usage.input_tokens | целое | Токены данных и вопросов. По ним выставлен счёт |
| usage.output_tokens | целое | Токены ответа. Не тарифицируются |
| credits_consumed | число | Сколько кредитов списано за запрос |
Отказы
Тело отказа — объект error, как у OpenAI:
{"error":{"message":…,"type":…,"code":…,"param":null}}. Ни один из этих отказов не тарифицируется:
деньги списываются только после ответа модели.
| Код | code | Когда |
|---|---|---|
| 400 | model_not_found | Имени из поля model нет среди моделей решений. В сообщении перечислено, что принимается. |
| 400 | invalid_state | Поле state не передано или пустое. Данные принимаются строкой, объектом или списком. |
| 400 | invalid_questions | Поле questions не передано или пустое, либо вопрос задан не по схеме: не назван вид (choice, noul, score, box), пустое поле instructions, у choice нет объекта вариантов или их больше 255, у score нет списка ступеней или их больше 10, у noul в criteria нет одного из полей true и false. Тот же отказ приходит на вопрос box к модели, которая на него не отвечает: box отвечает только jev/1-14. В сообщении назван сам вопрос. |
| 400 | invalid_image | Картинка передана не так: ссылкой http(s), в формате кроме PNG и JPEG, строкой base64 без приставки data:image/…;base64, частью input_image или полями assets и images. В сообщении названо место в запросе и показано, как передать картинку. |
| 400 | key_required | Названный заголовком учёта ключ не принадлежит аккаунту или отключён. При вызове по ключу Bearer такого отказа не бывает. |
| 400 | invalid_request | Модель отказала по самому запросу. В сообщении — её слова. Запрос не тарифицируется. |
| 401 | invalid_api_key | Ключа нет в заголовке Authorization, либо он неверный или отключён. |
| 402 | insufficient_credits | На балансе не осталось свободных кредитов. Перед вызовом шлюз проверяет только это — сумма списывается после ответа, по факту. |
| 403 | forbidden | Аккаунт заблокирован: вызовы модели, пополнение и загрузка файлов ему закрыты. Ключи при этом не отключены — запрет лежит на аккаунте. |
| 413 | invalid_request | Запрос слишком велик для модели. Запрос не тарифицируется. |
| 422 | invalid_request | Модель не смогла обработать запрос в таком виде. В сообщении — её слова. Запрос не тарифицируется. |
| 429 | concurrent_request | Другой запрос этого аккаунта ещё считается. Пока на балансе 50 кредитов или меньше, текстовые запросы выполняются по одному: списание приходит после ответа, и одновременные запросы увели бы счёт в минус. Дождитесь ответа или пополните баланс. |
| 502 | upstream_error | Поставщик не ответил или ответил ошибкой. Запрос не тарифицируется: списывать нечего, ответа не было. |
| 503 | service_overloaded | Поставщик перегружен или отбил запрос по своему лимиту. Запрос не тарифицируется, повторить можно через несколько секунд — срок назван в заголовке Retry-After. |
Сверх 600 запросов в минуту с одного ключа шлюз отвечает
429 в своём виде:
{"statusCode":429,"error":…,"message":…} — объекта
error в таком ответе нет.
Что TypeSafe AI говорит про Jev 1.14
Jev 1.14 — модель решений компании TypeSafe AI, выпущенная 14 октября 2026 года. Миллион присланных токенов в GEN202 стоит 9,29 ₽, а ответ модели не оплачивается.
В объявлении о выпуске компания перечислила, что вышло вместе с версией: «We're releasing an improved Jev 1.14.0 along with experimental features for our dreamers: images, a new type, and longer context». Перевод наш: «Мы выпускаем улучшенную Jev 1.14.0 и вместе с ней экспериментальные возможности для мечтателей: картинки, новый вид вопроса и более длинный контекст».
О самой модели там же сказано: «Not meant to be flashy but instead be small, subtle improvements to everything. Most things should be a tiny bit better, but we expect the largest gain in multi-lingual support». Перевод наш: «Она не должна поражать воображение: это небольшие, незаметные улучшения во всём. Почти всё должно стать немного лучше, а наибольший прирост мы ожидаем в работе с другими языками».
Новый вид вопроса, Box, представлен так: «It returns a single bounding box - no type errors allowed. It’s our first type that’s not purely meant for smart-if statements». Перевод наш: «Он возвращает одну рамку, и ошибки формата исключены. Это наш первый вид вопроса, который нужен не только для умных условий в коде».
В документации о картинках разведено, что умеет каждая версия: «Jev 1.13 and Jev 1.14 both accept images. Box questions need Jev 1.14». Перевод наш: «Картинки принимают и Jev 1.13, и Jev 1.14. Для вопросов Box нужна Jev 1.14».
Слова TypeSafe AI о Jev 1.14 приведены по её блогу и документации на 17 октября 2026 года.
Чем Jev 1.14 отличается от Jev 1.13
Вход, окно и ставка у Jev 1.14 и Jev 1.13 в каталоге GEN202 одинаковые. Различаются версии набором вопросов и самой моделью, которую TypeSafe AI называет улучшенной.
| Что задают | Jev 1.14 | Jev 1.13 |
|---|---|---|
| Имя для поля model | jev/1-14 | jev/1-13 |
| Обозначение у разработчика | jev-1.14.0 | jev-1.13.0 |
| Когда вышла | 14 октября 2026 года | 15 сентября 2026 года |
| Что берёт на вход | текст и изображения | текст и изображения |
| Окно контекста | 262 144 токенов | 262 144 токенов |
| Виды вопросов | Choice, Noul, Score и Box | Choice, Noul и Score |
| Миллион входных токенов | 9,29 ₽ | 9,29 ₽ |
| Ответ модели | Бесплатный | Бесплатный |
| Предупреждение перед снятием | За 30 дней | За 60 дней |
Чтобы перейти с Jev 1.13, в поле model ставят имя jev/1-14, а остальной запрос оставляют прежним.
Если пороги вероятности подобраны под одну версию, TypeSafe советует вызывать её по номеру и переходить на новую в удобное время. Устройство запроса, правила формулировок и слабые места прошлой версии разобраны на странице Jev 1.13.
Дата выхода Jev 1.14 и версии Jev
TypeSafe AI выпустила Jev 1.14 14 октября 2026 года: эта дата стоит и над объявлением в блоге, и в таблице моделей. Страница модели на OpenRouter тоже называет днём выхода 14 октября.
| Версия | Имя у разработчика | Идентификатор в GEN202 | Когда | Что известно |
|---|---|---|---|---|
| Jev 1.14 | jev-1.14.0 | jev/1-14 | 14 октября 2026 года | Небольшие улучшения во всём и вопрос Box |
| Jev 1.13 | jev-1.13.0 | jev/1-13 | 15 сентября 2026 года | Первая публичная версия, остаётся в каталоге |
Указатели на последнюю версию у разработчика и у OpenRouter на 17 октября 2026 года ведут в разные места. У TypeSafe jev-latest — самый новый стабильный выпуск — ещё указывает на 1.13, а на 1.14 ведёт jev-preview; переключить jev-latest компания обещала через неделю после выхода. На OpenRouter указатель ~typesafe/jev-latest уже ведёт на 1.14.
В GEN202 указателей нет: версию называют её номером — jev/1-14 или jev/1-13.
Характеристики Jev 1.14: вход, вопросы и пределы
Пределы картинок взяты из документации TypeSafe о картинках, окно — со страницы модели на OpenRouter.
| Характеристика | Значение |
|---|---|
| Что принимает | Данные текстом — строкой, объектом JSON или массивом — и картинки |
| Формат картинки | PNG или JPEG, только неподвижные; base64 в теле запроса |
| Размер картинки | Каждая сторона от 280 до 1568 пикселей, файл до 16 МиБ |
| Где стоит картинка | В данных, в тексте вопроса или в описании варианта |
| Виды вопросов | Choice, Noul, Score и Box |
| Что возвращает Box | Четыре края рамки в долях ширины и высоты картинки и уверенность от 0 до 1 |
| Контекст | 262 144 токенов на данные, картинки и вопросы вместе |
У самой TypeSafe это окно включается заголовком длинного контекста, а без него действует 64 тысячи токенов на запрос и 32 тысячи — на данные с одним вопросом. По руководству OpenRouter, каждый запрос с картинкой идёт в длинном режиме, а этот режим TypeSafe называет более медленным и менее точным.
Где стоит картинка в запросе к Jev 1.14
Картинку в Jev 1.14 кладут туда же, куда текст: в данные (state), в текст вопроса (instructions) и в описания вариантов (criteria). Принимают картинки все четыре вида вопросов.
| Где картинка | Как модель её читает | Пример из документации TypeSafe |
|---|---|---|
| state — данные | Как часть данных: к ней относится каждый вопрос запроса | Кадр с дверной камеры и вопросы о том, есть ли у двери человек и что он несёт |
| instructions — текст вопроса | Как часть одного вопроса: картинка уходит модели только с ним | Фото с пропуска в вопросе, тот же ли это человек, что у двери |
| criteria — описания вариантов | Как образец варианта Choice, ступени Score или ответа «да» и «нет» у Noul | Жесты руки, где каждый вариант задан картинкой-примером |
Если картинка нужна нескольким вопросам, её кладут в данные один раз и называют по имени поля в обратных кавычках. Картинка в тексте вопроса уходит модели с каждым таким вопросом заново и каждый раз считается в токены. Вид части с картинкой и пример запроса разобраны в документации GEN202.
Для чего TypeSafe AI предлагает картинки и Box в Jev 1.14
Приёмы ниже собраны в разделе документации TypeSafe о картинках.
| Задача | Как решается |
|---|---|
| Сравнить снимок с известной картинкой | Известная картинка стоит в тексте вопроса, снимок — в данных; Noul отвечает, тот ли это человек, товар или место |
| Задать варианты примерами | Каждый вариант Choice описан одной или несколькими картинками |
| Заметить, что изменилось | В данные кладут прошлый кадр или несколько кадров по порядку и спрашивают о движении или различиях |
| Посмотреть ближе, когда нужно | Сначала спрашивают об уменьшенной картинке, а крупную копию или вырезанную часть шлют, только если ответу не хватает подробностей |
| Найти мелкое на большой картинке | Картинку режут на части и задают Choice, где варианты — эти части; шаг повторяют на выбранной части |
| Найти, где предмет | Вопрос Box возвращает края рамки вокруг предмета |
Сколько стоит запрос к Jev 1.14 с картинкой
Картинка оплачивается входными токенами по той же ставке, что и текст: в GEN202 это 9,29 ₽ за миллион. Ответ модели, в том числе рамка Box, в счёт не входит.
В нашей проверке 17 октября 2026 года фотография 900 × 900 пикселей в JPEG с короткой подписью и тремя вопросами заняла 2 597 входных токенов. По ставке GEN202 такой запрос стоит 0,02 ₽, а тысяча таких запросов — 24,14 ₽.
Сколько токенов ушло на запрос, модель возвращает в ответе полем usage.input_tokens, и по этому числу выставляется счёт.
Какие числа TypeSafe AI публикует о Jev 1.14
В объявлении о выпуске компания впервые показала свою внутреннюю оценку — двумя графиками, где рядом с двумя версиями Jev стоят только модели с открытыми весами. Числа есть только на картинках графиков.
| График | Jev 1.14 | Jev 1.13 |
|---|---|---|
| Общая оценка способностей; больше — лучше | 60,0 | 58,9 |
| Ошибка калибровки — насколько вероятности расходятся с частотой верных ответов; меньше — лучше | 1,6 | 1,8 |
К графикам компания сама приписала: «This is likely biased towards our models». Перевод наш: «Скорее всего, это смещено в пользу наших моделей». Там же она советует: «Always favor your own experimentation and evals with your use cases». Перевод наш: «Всегда отдавайте предпочтение своим опытам и проверкам на своих задачах».
Что показали независимые проверки Jev 1.14
Сводная таблица оценок Decision Index на Hugging Face сравнивает открытые модели, повторяющие Jev, с самой Jev; её автор пишет, что не связан с TypeSafe. В обновлении от 16 октября 2026 года Jev 1.14 получила итоговую оценку 61,53, а Jev 1.13 — 60,11. Разница больше порога 0,9, ниже которого таблица считает модели равными, поэтому версии стоят в разных группах.
Наш замер 17 октября 2026 года — одна фотография кота в скафандре, 900 × 900 пикселей, и три вопроса к ней. Noul «на фото кот» получил вероятность 0,95, Choice «во что одет зверь» выбрал скафандр с уверенностью 1, а Box обвёл морду рамкой от 0,45 до 0,61 по ширине и от 0,29 до 0,47 по высоте с уверенностью 0,86.
Ответ приходил за 1,0–1,4 секунды. Jev 1.13 на той же фотографии тоже нашла кота, с вероятностью 1, и выбрала скафандр. В запросе без картинки Box у Jev 1.14 всё равно вернул рамку — с уверенностью 0,03. Картинка одна, прогон один.
Как задать вопрос Box в Jev 1.14 и прочитать ответ
Порядок взят со страницы TypeSafe о вопросе Box.
- Назовите предмет и картинку. Вопрос пишут описанием, а не командой: «the coffee mug in `photo`» — кружка на картинке из поля photo. Вариантов у Box нет.
- Прочитайте четыре края. Края top и bottom — доли высоты картинки, left и right — доли ширины, отсчёт идёт от левого верхнего угла. Чтобы получить пиксели, каждую долю умножают на высоту или ширину.
- Проверьте, есть ли предмет. Ответа «не найдено» у Box нет: рамка приходит и тогда, когда предмета на картинке нет. Поэтому в тот же запрос ставят вопрос Noul о том, есть ли предмет, и при низкой вероятности рамку не берут.
- Задавайте по вопросу на предмет. Каждый ответ Box — одна рамка. Для нескольких предметов задают несколько вопросов, а похожие предметы различают описанием: «кружка ближе всех к раковине».
Порог уверенности для Box TypeSafe советует подбирать на своих картинках. При низкой уверенности разработчик предлагает спросить снова по картинке крупнее, расширить рамку перед обрезкой или проверить каждый край отдельным вопросом Noul.
Проверку краями разработчик измерил сам: на 36 обрезках картин, где часть предмета заведомо отрезана, четыре вопроса о краях нашли 30 обрезок, а один вопрос «вся ли кружка внутри» — 26.
Что TypeSafe AI советует учесть в работе с картинками в Jev 1.14
Картинки и вопрос Box разработчик в документации помечает как возможности для прототипов: формат запроса, ответы и пределы могут меняться от выпуска к выпуску.
- По словам TypeSafe, на картинках все модели, и Jev тоже, работают хуже, чем на чистом тексте, а сильно помогает дробить вопрос на самые простые части.
- Поворот из EXIF модель не применяет, поэтому фотографию поворачивают до отправки: иначе снимок может прийти боком.
- GIF, WebP, HEIC и анимацию переводят в неподвижный PNG или JPEG, а из ролика берут нужный кадр.
- Длинную сторону уменьшают до 1568 пикселей: снимок с телефона на 12 мегапикселей становится 1568 × 1176.
- Картинку за пределами размеров модель отклоняет, а не уменьшает, и тогда не проходит весь запрос.
Как купить доступ к Jev 1.14 в России и сколько стоит миллион токенов
TypeSafe AI продаёт доступ к Jev 1.14 за доллары, а в GEN202 его оплачивают рублями: войдите, пополните баланс картой российского банка и выпустите ключ в кабинете.
- Войдите на сайт. Учётная запись GEN202 заводится при первом входе — через Яндекс или по ссылке, пришедшей на почту.
- Пополните баланс. Нижний пакет за 500 ₽ приносит 1 000 кредитов: по ставке Jev 1.14 это 53 миллиона присланных токенов, или около 20 713 запросов вроде нашего с фотографией.
- Выпустите ключ. Ключ выпускается в кабинете, а в поле model ставят jev/1-14. Тем же ключом вызываются Jev 1.13 и остальные модели каталога.
Ставка Jev 1.14 — 9,29 ₽ за миллион присланных токенов, за ответ модели плата не берётся; обе строки есть в таблице цен выше.
Пакеты пополнения и порядок списания описаны на странице цен, а о бренде, названии модели и ключе разработчика рассказывает страница Jev API.