Создание системы управления с Jev

@sydneyrunkle
АНГЛИЙСКИЙ18 сент. 2026 г.
420K
2.1K
210
49
3.9K

Суть

В этой статье объясняется, как интегрировать Jev, быструю модель System One от TypeSafe AI, в агентов LangChain. Подробно описываются возможности Jev для структурированного принятия решений, маршрутизации моделей и обеспечения безопасности, что позволяет оптимизировать производительность агентов и снизить затраты.

Агенты работают в цикле: LLM принимает решение о действиях, инструмент выполняет задачу, модель оценивает результаты, и цикл продолжается до завершения задачи.

Изначально агентов и LLM было сложно интегрировать в программные приложения, которые зависят от структурированных данных и предсказуемых интерфейсов. Появились два базовых механизма, значительно упростивших этот процесс:

Но даже при наличии этих механизмов цикл работы агента остается медленным и дорогим: каждое решение требует нового вызова модели.

Знакомьтесь: Jev. Это новая модель, выпущенная TypeSafe AI. Компания сообщает об увеличении скорости инференса до 200x и снижении стоимости на 400x по сравнению с аналогичными LLM при выполнении задач классификации.

https://x.com/CompleteSkeptic/status/2099925682726002904

В этой статье мы расскажем, как работает Jev, где он вписывается в цикл агента и как использовать его вместе с LangChain.

Все о Jev

Jev — это не традиционная LLM, она не генерирует текст. Команда TypeSafe AI называет ее моделью System One:

📖 Модели System One — это класс ИИ-моделей, созданных для принятия быстрых, структурированных решений, которые программное обеспечение может использовать напрямую. Модель System One оценивает

состояние (state) и возвращает типизированные ответы и вероятности.

Она обучается с помощью обучения с подкреплением для калиброванных решений (RLCD). Ваш код использует эти результаты для определения дальнейших действий агента без необходимости полного вызова чат-LLM для каждого решения.

Чтобы вызвать модель Jev, вы отправляете ей состояние (контекст) и вопросы об этом состоянии. Вот пример из документации с одним вопросом для тикета поддержки (их документация):

json
1{
2 "model": "jev-latest",
3 "state": "Hi, I've been trying to connect my Stripe account for 3 days and it keeps failing. I'm losing sales. Please help ASAP.",
4 "questions": {
5 "is_urgent": {
6 "type": "noul",
7 "instructions": "The message conveys urgency or time-sensitivity"
8 }
9 }
10}

Пример из документации дает следующий ответ относительно срочности (здесь показан только фрагмент ответа):

json
1{
2 "is_urgent": {
3 "type": "noul",
4 "noul": 0.999
5 }
6}

Это означает вероятность 99,9% того, что сообщение является срочным. Ваше приложение может использовать эту информацию для приоритизации тикета.

Поддерживаются три типа вопросов:

Sydney Runkle - inline image
  • Choice (Выбор): Выбор из набора вариантов. Возвращает вероятность для каждого варианта и общую оценку уверенности.
  • Score (Оценка): Оценка входных данных по упорядоченным уровням, таким как низкий, средний и высокий. Возвращает непрерывную оценку, базовое распределение и значение уверенности.
  • Noul: Ответ на вопрос «да» или «нет». Возвращает вероятность истинности утверждения.

Ключевая особенность заключается в том, что вы можете задавать несколько вопросов об одном и том же состоянии в рамках одного запроса.

💡 Модели System One обрабатывают все вопросы в запросе параллельно. Добавление новых вопросов почти не влияет на время ответа и стоит лишь дополнительные токены, которые очень дешевы.

Пример постановки нескольких вопросов к тикету поддержки можно найти в TypeSafe Quickstart.

Таким образом, в отличие от традиционных LLM, Jev не ограничен ни генерацией текста, ни последовательным принятием решений!

Как использовать Jev с LangChain

Независимый от провайдера подход LangChain отлично подходит для поддержки Jev наряду с тысячами других интеграций и поставщиков моделей.

Интеграция LangChain предоставляет доступ к Jev через TypeSafeClassifier. Вы передаете свое состояние и вопросы в метод .invoke() и получаете результаты классификации вместо ответа чата.

Установите пакет langchain-typesafe, настройте переменную окружения TYPESAFE_API_KEY, а затем выполните вызов:

python
1from langchain_typesafe import Noul, TypeSafeClassifier
2
3classifier = TypeSafeClassifier()
4
5response = classifier.invoke(
6 state=(
7 "The deploy failed twice and customers are seeing 500s. "
8 "Can someone look now?"
9 ),
10 questions={
11 "urgent": Noul(
12 instructions="Does this need attention right now?"
13 ),
14 },
15)
16
17urgency = response.nouls["urgent"].noul

Состоянием могут быть текст, структурированные данные или сообщения LangChain. Это делает возможным простой вызов Jev из узла графа или хука промежуточного слоя (middleware), используя контекст, который уже есть у вашего агента.

Вы можете встроить это в собственный middleware или инструменты!

Сценарии использования

Jev не является прямой заменой LLM. Он не генерирует текст, но может выполнять задачи классификации, для которых мы сегодня часто используем LLM, без той же задержки и стоимости. Это делает его перспективным дополнением к модели, управляющей вашим агентом: используйте LLM для открытого рассуждения и генерации, а Jev — для быстрых, структурированных решений по ходу процесса.

Маршрутизация моделей

Простому поиску не нужна та же мощная модель, что и сложной задаче отладки. Middleware маршрутизации моделей позволяет Jev оценить запрос и выбрать модель на основе заданных вами критериев: быструю и недорогую для простых задач, более мощную для сложных.

python
1from langchain.agents import create_agent
2from langchain_typesafe.experimental.middleware import (
3 ModelChoice,
4 ModelRouterMiddleware,
5)
6
7router = ModelRouterMiddleware(
8 choices={
9 "fast": ModelChoice(
10 model="openai:luna",
11 criteria="Direct lookups, extraction, and localized changes.",
12 ),
13 "powerful": ModelChoice(
14 model="openai:sol",
15 criteria="Architecture and high-stakes decisions.",
16 ),
17 },
18 instructions="Choose the least costly model that can complete the task.",
19)
20
21agent = create_agent("openai:gpt-5.6-luna", middleware=[router])

Маршрутизатор выбирает модель на основе последнего пользовательского сообщения и использует ее на протяжении всего выполнения. Вероятности и оценки уверенности также остаются доступными в состоянии агента.

Auto Mode (Автоматический режим)

Агенты по своей природе пока не вызывают полного доверия. Агент может получить плохие инструкции (естественным путем или от мотивированного злоумышленника), которые убедят его выполнить действия, которые мы не хотели бы видеть.

Такие среды разработки, как claude, codex и cursor, внедрили механизмы классификации опасных действий до их выполнения, что постепенно помогло повысить доверие к агентам. До сих пор этот шаг классификации был скрыт в закрытых частях этих систем.

Теперь, когда существует дешевая и производительная модель-классификатор, мы можем применить тот же паттерн ко всем агентам!

python
1from langchain.agents import create_agent
2from langchain_typesafe.experimental.middleware import (
3 AutoModeMiddleware,
4)
5
6guardrail = AutoModeMiddleware(tools=["bash"])
7
8agent = create_agent("openai:gpt-5.6-luna", middleware=[guardrail])

AutoModeMiddleware использует Jev для проверки вызовов инструментов на предмет рискованных решений и блокирует вызовы до фактического выполнения инструмента.

Начните работу!

Мы в восторге от Jev и возможностей, которые он открывает. Уже есть несколько крутых проектов: Kyle Jeong из Browserbase использует его для управления браузерными агентами за доли цента, Jarrod Watts создал живого торгового агента, а Ryan Vogel масштабирует сортировку электронной почты.

Новые модели появляются каждую неделю, но эта получила особенно сильный отклик. Мы с нетерпением ждем, что вы создадите с помощью LangChain и Jev.

Поделитесь своим мнением на форуме, отметьте нас в X и расскажите о своих проектах, или участвуйте в обсуждении проблем LangChain!

Благодарности

Спасибо @huntlovell, @hwchase, @ccurme, @veryboldbagel и Nathan Drenzer за внимательное рецензирование и вклад в развитие материала.

Сохранение в один клик

Используйте YouMind для глубокого чтения вирусных статей с помощью ИИ

Сохраняйте источники, задавайте точные вопросы, обобщайте аргументы и превращайте вирусные статьи в полезные заметки в одном рабочем пространстве ИИ.

Исследовать YouMind
Для авторов

Превратите ваш Markdown в аккуратную статью для 𝕏

Когда вы публикуете длинные тексты, изображения, таблицы и блоки кода, форматирование в 𝕏 становится мучением. YouMind превращает полный черновик в Markdown в чистую статью, готовую к публикации в 𝕏.

Попробовать Markdown для 𝕏

Другие паттерны для анализа

Недавние виральные статьи

Смотреть другие виральные статьи