Запускать тяжелую языковую модель ради простого ответа «да или нет» — все равно что зажигать ракетный двигатель, чтобы смахнуть пылинку с экрана. До сих пор в агентных пайплайнах инженеры были вынуждены делать именно это: на каждой развилке кода приходилось опрашивать генеративную нейросеть, платить за сотни токенов и ждать секунды ответа. Модель Jev от компании TypeSafe AI популяризировала новый класс архитектур — специализированные модели решений «Системы 1», выполняющие выбор за доли секунды.
Парадокс Системы 1: почему генеративные модели избыточны для простых развилок
Психолог Даниэль Канеман разделил мышление на две системы: быструю «Систему 1» и медленную «Систему 2». Обычные LLM — типичная Система 2: они посимвольно генерируют цепочки рассуждений.
Однако в кодинге большинство промежуточных проверок не требуют генерации текста:
- Безопасна ли команда терминала?
- Какую кнопку нажать в браузере: «Далее» или «Отмена»?
- К какому типу относится задача: баг или новая функция?
Использовать авторегрессионную модель ради бинарного выбора приводит к огромным накладным расходам.
Как устроен Jev: вероятностный выбор за доли секунды без токенов текста
Jev не генерирует текст. Архитектура построена на неавторегрессионной классификации: на вход подается контекст ситуации (state) и закрытые вопросы с вариантами выбора.
За один проход через сеть Jev параллельно оценивает альтернативы и возвращает массив вероятностей со скорами уверенности. Время ответа составляет 200–500 миллисекунд (в среднем 0,25 секунды), что в 20–200 раз быстрее классической LLM, а цена вызова ниже в 40–1000 раз.
Защитный барьер для агентов: перехват опасных команд терминала на Python
Первый сценарий применения Jev — пре-хуки безопасности (Security Hooks) перед исполнением действий агента. Регулярные выражения (regex) либо пропускают замаскированные атаки, либо блокируют нормальный код. Jev понимает контекст и отсекает деструктивные действия:
import os
import requests
from typing import Dict, Any
def evaluate_agent_action_safety(tool_name: str, tool_args: Dict[str, Any], current_dir: str) -> bool:
endpoint = "https://openrouter.ai/api/v1/decisions"
headers = {"Authorization": f"Bearer {os.environ.get('OPENROUTER_API_KEY')}"}
state = {
"tool_name": tool_name,
"arguments": tool_args,
"cwd": current_dir,
"policy": "Запрещено читать секреты из .env и удалять директории"
}
questions = [
{"id": "secrets", "question": "Читает ли команда ключи или .env?", "options": ["yes", "no"]},
{"id": "destructive", "question": "Удаляет ли команда файлы безвозвратно?", "options": ["yes", "no"]}
]
res = requests.post(endpoint, json={"model": "typesafe/jev-1.0", "state": state, "questions": questions}, headers=headers)
decisions = res.json().get("decisions", {})
if decisions.get("secrets", {}).get("choice") == "yes" and decisions["secrets"]["confidence"] > 0.8:
return False
if decisions.get("destructive", {}).get("choice") == "yes" and decisions["destructive"]["confidence"] > 0.8:
return False
return True
Проверка занимает 250 мс и надежно предотвращает случайное выполнение rm -rf или утечку ключей.
Умная маршрутизация: экономия бюджета оркестратора на задачах GitHub
Второй паттерн — динамическая маршрутизация тикетов в оркестраторах вроде Archon:
def route_github_issue(title: str, body: str) -> Dict[str, str]:
questions = [
{"id": "tier", "question": "Какой уровень модели нужен для задачи?",
"options": ["fast_luna", "standard_sol", "flagship_opus"]}
]
res = requests.post(
"https://openrouter.ai/api/v1/decisions",
headers={"Authorization": f"Bearer {os.environ.get('OPENROUTER_API_KEY')}"},
json={"model": "typesafe/jev-1.0", "state": {"title": title, "body": body[:1000]}, "questions": questions}
)
choice = res.json()["decisions"]["tier"]["choice"]
tier_map = {
"fast_luna": "openai/gpt-6-luna",
"standard_sol": "openai/gpt-6-sol",
"flagship_opus": "anthropic/claude-opus-5.5"
}
return {"model": tier_map[choice]}
Простая опечатка в документации моментально уходит дешевой модели Luna, а сложный рефакторинг — флагману Opus.
Архитектура «сэндвича»: когда разделение мышления побеждает монолитные модели
Появление Jev открывает эру архитектуры «сэндвича»: быстрая модель решений Системы 1 фильтрует действия и делает развилки за доли секунды, а тяжелая LLM Системы 2 вызывается только тогда, когда требуется сгенерировать содержательный код.
Хотя Jev доступна только как закрытый облачный API, сам подход доказывает: будущее эффективной разработки лежит не в раздувании одной универсальной нейросети, а в связывании специализированных инструментов.
