Дайджесты новостей
Концептуальная схема архитектуры модели решений Jev Системы 1 с мгновенным параллельным ветвлением и защитным барьером для AI-агентов.

Jev и модели решений: ускорение AI-кодинга в десятки раз

Запускать тяжелую языковую модель ради простого ответа «да или нет» — все равно что зажигать ракетный двигатель, чтобы смахнуть пылинку с экрана. До сих пор в агентных пайплайнах инженеры были вынуждены делать именно это: на каждой развилке кода приходилось опрашивать генеративную нейросеть, платить за сотни токенов и ждать секунды ответа. Модель 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, сам подход доказывает: будущее эффективной разработки лежит не в раздувании одной универсальной нейросети, а в связывании специализированных инструментов.