🚀 Для тех, кому удобнее читать на Хабре: финальная часть цикла про ИИ-агентов теперь и там!
Третья, заключительная часть цикла о построении независимой ИИ-инфраструктуры также опубликована на Хабре 👉 Облачная LLM на 16 ГБ VRAM — часть 3: ChatGPT-интерфейс для ваших LangGraph-агентов
Если вы пропустили предыдущие части — в этом материале я закрываю полный стек: к готовому агентному бэкенду на LangGraph подключаю production-ready фронтенд и выкатываю всё на боевой сервер с доменом и SSL. Главная фишка прежняя: всё работает полностью на ваших серверах, без привязки к закрытым API, сторонним SaaS-платформам и зарубежным облакам.
В статье пошагово разбираю:
🔹 как подключить agent-chat-ui — официальный Next.js-интерфейс от LangChain — к LangGraph Server за пару минут
🔹 как кастомизировать фронтенд: перевод на русский, переключатель между агентами, удаление чатов
🔹 как выстроить три агента с разной архитектурой: генералист, диспетчер-мультиагент и узкий эксперт
🔹 как закрыть API Bearer-авторизацией — с нюансами, которых нет в официальной документации
🔹 как задеплоить всё через Nginx и PM2, чтобы LangGraph оставался внутри контура
В результате получается полноценный AI-продукт, который выглядит и работает как ChatGPT, но целиком на вашей инфраструктуре: со стримингом токенов, историей диалогов, вызовами инструментов в реальном времени и переключением между агентами прямо в интерфейсе. При этом бэкенд не открывается наружу и данные не уходят во внешние сервисы.
Также напоминаю, что весь исходный код к материалу открыт. Можно забирать, разворачивать на своей инфраструктуре и тестировать:
🔗 HabrGraphCLI → https://github.com/Yakvenalex/HabrGraphCLI
🔗 AgentChatUIHabr → https://github.com/Yakvenalex/Agent-chat-ui-habr
Буду рад обсудить архитектуру, ответить на вопросы и почитать о вашем опыте в комментариях на Хабре или в обсуждениях к данному посту 👇
Третья, заключительная часть цикла о построении независимой ИИ-инфраструктуры также опубликована на Хабре 👉 Облачная LLM на 16 ГБ VRAM — часть 3: ChatGPT-интерфейс для ваших LangGraph-агентов
Если вы пропустили предыдущие части — в этом материале я закрываю полный стек: к готовому агентному бэкенду на LangGraph подключаю production-ready фронтенд и выкатываю всё на боевой сервер с доменом и SSL. Главная фишка прежняя: всё работает полностью на ваших серверах, без привязки к закрытым API, сторонним SaaS-платформам и зарубежным облакам.
В статье пошагово разбираю:
🔹 как подключить agent-chat-ui — официальный Next.js-интерфейс от LangChain — к LangGraph Server за пару минут
🔹 как кастомизировать фронтенд: перевод на русский, переключатель между агентами, удаление чатов
🔹 как выстроить три агента с разной архитектурой: генералист, диспетчер-мультиагент и узкий эксперт
🔹 как закрыть API Bearer-авторизацией — с нюансами, которых нет в официальной документации
🔹 как задеплоить всё через Nginx и PM2, чтобы LangGraph оставался внутри контура
В результате получается полноценный AI-продукт, который выглядит и работает как ChatGPT, но целиком на вашей инфраструктуре: со стримингом токенов, историей диалогов, вызовами инструментов в реальном времени и переключением между агентами прямо в интерфейсе. При этом бэкенд не открывается наружу и данные не уходят во внешние сервисы.
Также напоминаю, что весь исходный код к материалу открыт. Можно забирать, разворачивать на своей инфраструктуре и тестировать:
🔗 HabrGraphCLI → https://github.com/Yakvenalex/HabrGraphCLI
🔗 AgentChatUIHabr → https://github.com/Yakvenalex/Agent-chat-ui-habr
Буду рад обсудить архитектуру, ответить на вопросы и почитать о вашем опыте в комментариях на Хабре или в обсуждениях к данному посту 👇
🔥20👍7👏2
This media is not supported in your browser
VIEW IN TELEGRAM
GPT до появления в нем Live режима общения😂
P.S. Кто затестил новую фичу? Как вам?
P.S. Кто затестил новую фичу? Как вам?
🤣28😁5❤1👍1
🚀 Надеюсь, не успели меня забыть. А лучше — даже немного соскучились🙂
Последние пару недель на канале было тихо. Я был в отпуске, хорошо перезагрузился, после возвращения разобрался со всеми накопившимися делами — и теперь снова можно возвращаться к статьям.
И возвращаюсь сразу с анонсом новой.
Материал уже полностью готов. Осталось оформить его, добавить иллюстрации и финально вычитать. Если всё пойдёт по плану — в начале следующей недели статья выйдет на Хабре.
Как и все мои материалы, статья будет максимально практической. Никакой воды — только то, что можно взять и начать использовать в тот же день.
В этот раз покажу, как собрать собственную инфраструктуру для AI-разработки без VPN, бесконечных обходов, прокси и прочих танцев с бубном.
Что будет внутри:
🔹 как получать OpenAI-совместимые токены из подписок ChatGPT, Claude Code, Gemini и других AI-сервисов;
🔹 как превратить обычный VPS в полноценную среду разработки и кодить прямо на сервере через VS Code с максимальным комфортом;
🔹 как централизованно управлять всеми своими токенами и моделями;
🔹 как поднять собственный LLM Router, чтобы работать с любыми LLM через единый OpenAI API;
🔹 как собрать всё это в одну удобную систему, которая одинаково хорошо подойдёт и для повседневной разработки, и для AI-интеграций.
Всё, как обычно, будет сопровождаться готовыми командами, Docker-конфигами, примерами и объяснениями, почему именно так, а не иначе.
До скорой публикации! 🚀
Последние пару недель на канале было тихо. Я был в отпуске, хорошо перезагрузился, после возвращения разобрался со всеми накопившимися делами — и теперь снова можно возвращаться к статьям.
И возвращаюсь сразу с анонсом новой.
Материал уже полностью готов. Осталось оформить его, добавить иллюстрации и финально вычитать. Если всё пойдёт по плану — в начале следующей недели статья выйдет на Хабре.
Как и все мои материалы, статья будет максимально практической. Никакой воды — только то, что можно взять и начать использовать в тот же день.
В этот раз покажу, как собрать собственную инфраструктуру для AI-разработки без VPN, бесконечных обходов, прокси и прочих танцев с бубном.
Что будет внутри:
🔹 как получать OpenAI-совместимые токены из подписок ChatGPT, Claude Code, Gemini и других AI-сервисов;
🔹 как превратить обычный VPS в полноценную среду разработки и кодить прямо на сервере через VS Code с максимальным комфортом;
🔹 как централизованно управлять всеми своими токенами и моделями;
🔹 как поднять собственный LLM Router, чтобы работать с любыми LLM через единый OpenAI API;
🔹 как собрать всё это в одну удобную систему, которая одинаково хорошо подойдёт и для повседневной разработки, и для AI-интеграций.
Всё, как обычно, будет сопровождаться готовыми командами, Docker-конфигами, примерами и объяснениями, почему именно так, а не иначе.
До скорой публикации! 🚀
🔥68👍12🎉6
Скайнет: начало, или что делают современные модели 🤖
Пока мы обсуждаем, какая нейронка лучше пишет код, нейронки, похоже, решили перейти к интеграционным тестам в проде.
За последнее время:
— модель OpenAI нашла 0-day, выбралась из песочницы в интернет и добралась до инфраструктуры Hugging Face;
— Claude в ходе тестов умудрился взломать реальные production-системы трёх компаний;
— другой Claude нашёл возможность для supply-chain атаки, написал вредоносный Python-пакет, понял, что нужен аккаунт PyPI, сам зарегистрировал почту → аккаунт → и загрузил malware в настоящий PyPI;
— но мой любимый случай — Claude Mythos 5. Агент пошёл на GitHub, создал вредоносный Pull Request, изучил мейнтейнеров проекта, начал плодить фейковые личности, чтобы убедить разработчика принять PR, полез через Tor, а когда его заподозрили — начал подчищать следы.
Meta тоже отличилась: Muse Spark во время тестирования получила доступ в интернет и залезла во внешнюю систему.
И самое прекрасное: в ряде этих случаев модели не давали прямой команды делать всё перечисленное. Агенту дали цель. А дальше он уже сам решил, что социальная инженерия, фейковые аккаунты и взлом — вполне нормальный способ её достижения.
Кажется, с промптами вида «ты автономный агент, добейся результата любой ценой» пора быть немного аккуратнее 😂
Источники:
OpenAI — инцидент с Hugging Face
OpenAI — другие инциденты cyber-eval'ов
Anthropic — разбор трёх реальных взломов
AISI — тот самый PR, фейковые аккаунты и Tor
Короче, если однажды ваш агент скажет: «задача выполнена, но есть небольшой нюанс» — возможно, лучше уточнить, какой именно.
Пока мы обсуждаем, какая нейронка лучше пишет код, нейронки, похоже, решили перейти к интеграционным тестам в проде.
За последнее время:
— модель OpenAI нашла 0-day, выбралась из песочницы в интернет и добралась до инфраструктуры Hugging Face;
— Claude в ходе тестов умудрился взломать реальные production-системы трёх компаний;
— другой Claude нашёл возможность для supply-chain атаки, написал вредоносный Python-пакет, понял, что нужен аккаунт PyPI, сам зарегистрировал почту → аккаунт → и загрузил malware в настоящий PyPI;
— но мой любимый случай — Claude Mythos 5. Агент пошёл на GitHub, создал вредоносный Pull Request, изучил мейнтейнеров проекта, начал плодить фейковые личности, чтобы убедить разработчика принять PR, полез через Tor, а когда его заподозрили — начал подчищать следы.
Meta тоже отличилась: Muse Spark во время тестирования получила доступ в интернет и залезла во внешнюю систему.
И самое прекрасное: в ряде этих случаев модели не давали прямой команды делать всё перечисленное. Агенту дали цель. А дальше он уже сам решил, что социальная инженерия, фейковые аккаунты и взлом — вполне нормальный способ её достижения.
Кажется, с промптами вида «ты автономный агент, добейся результата любой ценой» пора быть немного аккуратнее 😂
Источники:
OpenAI — инцидент с Hugging Face
OpenAI — другие инциденты cyber-eval'ов
Anthropic — разбор трёх реальных взломов
AISI — тот самый PR, фейковые аккаунты и Tor
Короче, если однажды ваш агент скажет: «задача выполнена, но есть небольшой нюанс» — возможно, лучше уточнить, какой именно.
OpenAI
OpenAI and Hugging Face partner to address security incident during model evaluation
OpenAI and Hugging Face share early findings from a security incident during AI model evaluation, highlighting advanced cyber capabilities and lessons for defenders.
😁13🔥10😱5❤1👍1
Друзья, материал для новой статьи полностью собран и уже оформлен в черновик на Хабре 👆
Планировал выпустить её на этой неделе, как и обещал, но, похоже, публикация немного сдвинется по независящим от меня причинам.
Со своей стороны всё готово, так что осталось совсем немного подождать 🙂
Надеюсь, на следующей неделе уже увидимся на Хабре 🚀
Планировал выпустить её на этой неделе, как и обещал, но, похоже, публикация немного сдвинется по независящим от меня причинам.
Со своей стороны всё готово, так что осталось совсем немного подождать 🙂
Надеюсь, на следующей неделе уже увидимся на Хабре 🚀
👌22❤7👍6⚡2🔥1😭1
🚀 Статья вышла — и снова в партнёрстве с HOSTKEY
На Хабре опубликован мой новый практический туториал:
👉 Как собрать AI-контур на VPS: подписки ChatGPT и Claude, OmniRoute, LiteLLM и разработка без VPN
Немного позже, чем планировалось, но главное — материал опубликован и уже доступен для чтения🙂
В этот раз получился большой практический гайд о том, как собрать собственный AI-контур на VPS с зарубежным IP и комфортно работать с современными моделями без постоянного VPN и лишних костылей.
Внутри пошагово:
🔹 подключаем подписки ChatGPT и Claude через OmniRoute, получая OpenAI-совместимый доступ к моделям (естественно, используем на свой страх и риск);
🔹 объединяем модели и провайдеров через LiteLLM в единый OpenAI-совместимый API;
🔹 настраиваем Codex, Qwen Code и VS Code для полноценной разработки прямо на VPS, оставаясь при этом в привычной среде;
🔹 разбираемся с токенами, маршрутизацией моделей, Docker, HTTPS и необходимой инфраструктурой;
🔹 собираем всё это в одну удобную систему для повседневной разработки и AI-интеграций.
Как обычно — максимум практики: готовые команды, конфиги и примеры, которые можно брать и повторять у себя.
Буду рад вашим комментариям и обратной связи на Хабре. Ну и плюсик статье традиционно сильно помогает её продвижению 🙂
Приятного чтения! 🚀
На Хабре опубликован мой новый практический туториал:
👉 Как собрать AI-контур на VPS: подписки ChatGPT и Claude, OmniRoute, LiteLLM и разработка без VPN
Немного позже, чем планировалось, но главное — материал опубликован и уже доступен для чтения🙂
В этот раз получился большой практический гайд о том, как собрать собственный AI-контур на VPS с зарубежным IP и комфортно работать с современными моделями без постоянного VPN и лишних костылей.
Внутри пошагово:
🔹 подключаем подписки ChatGPT и Claude через OmniRoute, получая OpenAI-совместимый доступ к моделям (естественно, используем на свой страх и риск);
🔹 объединяем модели и провайдеров через LiteLLM в единый OpenAI-совместимый API;
🔹 настраиваем Codex, Qwen Code и VS Code для полноценной разработки прямо на VPS, оставаясь при этом в привычной среде;
🔹 разбираемся с токенами, маршрутизацией моделей, Docker, HTTPS и необходимой инфраструктурой;
🔹 собираем всё это в одну удобную систему для повседневной разработки и AI-интеграций.
Как обычно — максимум практики: готовые команды, конфиги и примеры, которые можно брать и повторять у себя.
Буду рад вашим комментариям и обратной связи на Хабре. Ну и плюсик статье традиционно сильно помогает её продвижению 🙂
Приятного чтения! 🚀
🔥33👍11❤9⚡1
Такой сейчас загруз, что я умудрился пропустить даже День программиста 😅
Поэтому хоть и с небольшим опозданием — друзья, всех причастных с праздником! 👨💻
Желаю поменьше багов в пятницу вечером, побольше адекватных ТЗ, зелёных тестов с первого раза и чтобы прод никогда не падал после фразы «там небольшая правка на пять минут» 😁
Ну и чтобы современные AI-агенты всё чаще забирали на себя рутину, а нам оставляли самое интересное — архитектуру, идеи и создание действительно крутых вещей.
С прошедшим, коллеги! 🚀
Поэтому хоть и с небольшим опозданием — друзья, всех причастных с праздником! 👨💻
Желаю поменьше багов в пятницу вечером, побольше адекватных ТЗ, зелёных тестов с первого раза и чтобы прод никогда не падал после фразы «там небольшая правка на пять минут» 😁
Ну и чтобы современные AI-агенты всё чаще забирали на себя рутину, а нам оставляли самое интересное — архитектуру, идеи и создание действительно крутых вещей.
С прошедшим, коллеги! 🚀
❤40🎉7👏3🍾3🥰1
Друзья, привет👋
Давно ничего не публиковал, хотя за последние месяцы накопилось немало интересного. Будем потихоньку возвращаться к техническим темам. Надеюсь, что соскучились.
И начать хочется с одной вещи, которая, судя по обсуждениям, до сих пор вызывает немало путаницы.
ChatGPT, LLM, чат-бот, AI-агент, harness — в чём вообще разница?
Казалось бы, мы уже несколько лет активно используем нейросети, но периодически встречаю утверждения вроде "я поднял локальную модель и получил свой ChatGPT" или "подключил LLM к Telegram — теперь у меня AI-агент".
Давайте немного разберёмся с терминологией.
1. LLM — языковая модель
GPT, Qwen, DeepSeek, Llama и прочие.
По своей сути модель получает входной контекст и генерирует ответ. Она может рассуждать, писать код, анализировать информацию и формировать запросы к инструментам.
Но сама по себе модель не ходит по вашему файловому хранилищу, не выполняет команды в терминале и не обращается к произвольным API. Для этого нужна окружающая инфраструктура.
2. ChatGPT — готовый продукт, а не название конкретной модели
Внутри ChatGPT используются модели семейства GPT, но сам ChatGPT — это гораздо больше.
Интерфейс, управление диалогами, контекст, память, поиск в интернете, работа с файлами, инструменты, различные режимы выполнения задач и прочие возможности.
Причём в зависимости от выбранного режима и доступных функций ChatGPT может выступать как обычный чат-ассистент или использовать агентные механизмы.
Поэтому сравнивать локальную Qwen непосредственно с ChatGPT не совсем корректно. Логичнее сравнивать модель с моделью, а продукт с продуктом.
3. Чат-бот — это прежде всего способ взаимодействия
Telegram-бот, веб-чат, корпоративный мессенджер — не принципиально.
За интерфейсом может скрываться обычная LLM, сложный агент или вообще набор заранее прописанных правил.
Сам по себе чат-интерфейс ещё ничего не говорит об архитектуре системы.
4. AI-агент — система, которая может самостоятельно выбирать действия для достижения цели
Допустим, вы попросили нейросеть проверить проект, найти ошибку и исправить её.
Обычная модель может подсказать, какие изменения внести.
А агент, имеющий необходимые инструменты и разрешения, может самостоятельно изучить файлы, выполнить поиск, изменить код, запустить тесты, проанализировать ошибки и при необходимости повторить попытку.
И здесь мы подходим к интересному моменту.
5. Harness (харнесс) — то, что обеспечивает работу агента
Это исполнительная обвязка вокруг модели.
Она управляет циклом взаимодействия с LLM, вызовами инструментов, контекстом, состоянием задачи, ограничениями, обработкой ошибок и прочей логикой выполнения.
Грубо говоря, модель предлагает, что делать дальше, а harness обеспечивает механизм, через который эти действия могут безопасно выполняться.
Например, в Codex / Claude Code есть собственный agent harness. И именно он во многом определяет, как модель взаимодействует с кодом, терминалом и окружающей средой.
Кстати, MCP — тоже не агент и не harness. Это протокол, позволяющий подключать к AI-приложениям внешние инструменты и источники данных.
А теперь самое интересное.
Можно взять одну и ту же LLM и подключить её к двум совершенно разным системам.
В первой получится обычный чат, отвечающий на вопросы.
Во второй — полноценный агент, который умеет работать с файлами, выполнять команды, подключаться к сервисам и самостоятельно проходить несколько этапов решения задачи.
Модель одна. А возможности систем совершенно разные.
Именно поэтому я считаю, что сегодня важно разбираться не только в том, какая модель лучше проходит бенчмарки, но и в том, что происходит вокруг неё.
За последние месяцы как раз много работал с агентными системами, и там есть о чём поговорить. От архитектуры до весьма неожиданных проблем, которые возникают уже в реальной эксплуатации.
Думаю, постепенно поделюсь этими наработками.
А пока интересно: как вы считаете, где заканчивается обычный чат-бот и начинается полноценный AI-агент? Ведь даже в профессиональном сообществе на этот счёт нет единого определения. 🙂
Давно ничего не публиковал, хотя за последние месяцы накопилось немало интересного. Будем потихоньку возвращаться к техническим темам. Надеюсь, что соскучились.
И начать хочется с одной вещи, которая, судя по обсуждениям, до сих пор вызывает немало путаницы.
ChatGPT, LLM, чат-бот, AI-агент, harness — в чём вообще разница?
Казалось бы, мы уже несколько лет активно используем нейросети, но периодически встречаю утверждения вроде "я поднял локальную модель и получил свой ChatGPT" или "подключил LLM к Telegram — теперь у меня AI-агент".
Давайте немного разберёмся с терминологией.
1. LLM — языковая модель
GPT, Qwen, DeepSeek, Llama и прочие.
По своей сути модель получает входной контекст и генерирует ответ. Она может рассуждать, писать код, анализировать информацию и формировать запросы к инструментам.
Но сама по себе модель не ходит по вашему файловому хранилищу, не выполняет команды в терминале и не обращается к произвольным API. Для этого нужна окружающая инфраструктура.
2. ChatGPT — готовый продукт, а не название конкретной модели
Внутри ChatGPT используются модели семейства GPT, но сам ChatGPT — это гораздо больше.
Интерфейс, управление диалогами, контекст, память, поиск в интернете, работа с файлами, инструменты, различные режимы выполнения задач и прочие возможности.
Причём в зависимости от выбранного режима и доступных функций ChatGPT может выступать как обычный чат-ассистент или использовать агентные механизмы.
Поэтому сравнивать локальную Qwen непосредственно с ChatGPT не совсем корректно. Логичнее сравнивать модель с моделью, а продукт с продуктом.
3. Чат-бот — это прежде всего способ взаимодействия
Telegram-бот, веб-чат, корпоративный мессенджер — не принципиально.
За интерфейсом может скрываться обычная LLM, сложный агент или вообще набор заранее прописанных правил.
Сам по себе чат-интерфейс ещё ничего не говорит об архитектуре системы.
4. AI-агент — система, которая может самостоятельно выбирать действия для достижения цели
Допустим, вы попросили нейросеть проверить проект, найти ошибку и исправить её.
Обычная модель может подсказать, какие изменения внести.
А агент, имеющий необходимые инструменты и разрешения, может самостоятельно изучить файлы, выполнить поиск, изменить код, запустить тесты, проанализировать ошибки и при необходимости повторить попытку.
И здесь мы подходим к интересному моменту.
5. Harness (харнесс) — то, что обеспечивает работу агента
Это исполнительная обвязка вокруг модели.
Она управляет циклом взаимодействия с LLM, вызовами инструментов, контекстом, состоянием задачи, ограничениями, обработкой ошибок и прочей логикой выполнения.
Грубо говоря, модель предлагает, что делать дальше, а harness обеспечивает механизм, через который эти действия могут безопасно выполняться.
Например, в Codex / Claude Code есть собственный agent harness. И именно он во многом определяет, как модель взаимодействует с кодом, терминалом и окружающей средой.
Кстати, MCP — тоже не агент и не harness. Это протокол, позволяющий подключать к AI-приложениям внешние инструменты и источники данных.
А теперь самое интересное.
Можно взять одну и ту же LLM и подключить её к двум совершенно разным системам.
В первой получится обычный чат, отвечающий на вопросы.
Во второй — полноценный агент, который умеет работать с файлами, выполнять команды, подключаться к сервисам и самостоятельно проходить несколько этапов решения задачи.
Модель одна. А возможности систем совершенно разные.
Именно поэтому я считаю, что сегодня важно разбираться не только в том, какая модель лучше проходит бенчмарки, но и в том, что происходит вокруг неё.
За последние месяцы как раз много работал с агентными системами, и там есть о чём поговорить. От архитектуры до весьма неожиданных проблем, которые возникают уже в реальной эксплуатации.
Думаю, постепенно поделюсь этими наработками.
А пока интересно: как вы считаете, где заканчивается обычный чат-бот и начинается полноценный AI-агент? Ведь даже в профессиональном сообществе на этот счёт нет единого определения. 🙂
👍22❤8🔥4😍1
Друзья, смотрю, все вокруг заговорили про JEV. Что за зверь такой и почему столько кипишу? 😁
Если коротко, JEV — это не очередная LLM, а специализированная модель для быстрого принятия решений.
Принцип работы довольно интересный. Вместо того чтобы генерировать текст токен за токеном, как это делают привычные LLM, модель получает контекст и набор возможных вариантов действий, оценивает их и выбирает наиболее подходящий.
Например, AI-агенту нужно решить, что делать дальше: обратиться к RAG, вызвать инструмент, передать задачу большой LLM или завершить работу. Вместо полноценного запроса к большой модели такое решение можно поручить JEV.
И тут возникает интересный вопрос: а зачем гонять большую LLM на каждом шаге AI-агента, если часть работы можно поручить небольшой специализированной модели?
Собственно, об этом и планирую рассказать в новой большой статье на Хабре.
В программе:
-- Что такое JEV, откуда столько шума и какие есть open-source аналоги.
-- Как поднять две локальные модели: аналог JEV + полноценную LLM.
-- Как с нуля собрать собственного AI-агента на Python, без LangGraph и прочих сложных фреймворков.
-- Как распределить задачи между моделями и что это даёт по скорости, качеству и потреблению ресурсов.
Всё на практике, с рабочим кодом, Docker Compose, тестами и исходниками на GitHub.
А вы уже успели поработать с JEV? Какие впечатления?
Если коротко, JEV — это не очередная LLM, а специализированная модель для быстрого принятия решений.
Принцип работы довольно интересный. Вместо того чтобы генерировать текст токен за токеном, как это делают привычные LLM, модель получает контекст и набор возможных вариантов действий, оценивает их и выбирает наиболее подходящий.
Например, AI-агенту нужно решить, что делать дальше: обратиться к RAG, вызвать инструмент, передать задачу большой LLM или завершить работу. Вместо полноценного запроса к большой модели такое решение можно поручить JEV.
И тут возникает интересный вопрос: а зачем гонять большую LLM на каждом шаге AI-агента, если часть работы можно поручить небольшой специализированной модели?
Собственно, об этом и планирую рассказать в новой большой статье на Хабре.
В программе:
-- Что такое JEV, откуда столько шума и какие есть open-source аналоги.
-- Как поднять две локальные модели: аналог JEV + полноценную LLM.
-- Как с нуля собрать собственного AI-агента на Python, без LangGraph и прочих сложных фреймворков.
-- Как распределить задачи между моделями и что это даёт по скорости, качеству и потреблению ресурсов.
Всё на практике, с рабочим кодом, Docker Compose, тестами и исходниками на GitHub.
А вы уже успели поработать с JEV? Какие впечатления?
9🔥40👍3
Друзья, продолжаю готовить новую большую статью на Хабр про JEV и его open-source аналоги. Сейчас экспериментирую с локальной Laya и решил поделиться небольшими результатами.
Модель поднял на обычном CPU, без видеокарты. На вход передаю русскоязычные новости, а на выходе получаю категорию и вероятности по каждому из предложенных вариантов. Причём без привычной для LLM генерации текста токен за токеном.
На скриншотах три примера: технологии, бизнес и спорт. Во всех случаях Laya правильно определила тематику, даже когда в новости о финансовых результатах NVIDIA упоминались GPU и искусственный интеллект.
Дальше планирую расширить список категорий и объединить Laya с локальной Gemma 4. В результате соберём AI-агента, который сможет автоматически отбирать интересные новости, анализировать их, готовить публикации и самостоятельно размещать в Telegram.
Всё на Python, без LangGraph и прочих агентных фреймворков.
Модель поднял на обычном CPU, без видеокарты. На вход передаю русскоязычные новости, а на выходе получаю категорию и вероятности по каждому из предложенных вариантов. Причём без привычной для LLM генерации текста токен за токеном.
На скриншотах три примера: технологии, бизнес и спорт. Во всех случаях Laya правильно определила тематику, даже когда в новости о финансовых результатах NVIDIA упоминались GPU и искусственный интеллект.
Дальше планирую расширить список категорий и объединить Laya с локальной Gemma 4. В результате соберём AI-агента, который сможет автоматически отбирать интересные новости, анализировать их, готовить публикации и самостоятельно размещать в Telegram.
Всё на Python, без LangGraph и прочих агентных фреймворков.
1🔥22❤8👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Друзья, небольшие новости по будущей статье на Хабре.
Основной материал уже готов, черновик написан и сейчас находится на вычитке. Решил заодно записать короткую демонстрацию того, что получилось.
В рамках статьи поднял две локальные нейросети: Laya (открытый аналог JEV) для быстрого принятия решений и Gemma 4 для более сложных задач.
На их базе собрал полноценного AI-агента на Python, без LangGraph и прочих агентных фреймворков.
Система получает новость, классифицирует её через Laya и, если материал подходит по тематике, передаёт Gemma. Та уже самостоятельно работает с инструментами, готовит статью и публикует её в блоге.
Весь проект, Docker Compose и исходники выложил на GitHub:
https://github.com/Yakvenalex/Habr-Jev-Agent
Если обойдётся без форс-мажоров, большая статья с подробным разбором архитектуры, развёртывания и практической части выйдет на следующей неделе.
А пока можете посмотреть, что получилось.
Основной материал уже готов, черновик написан и сейчас находится на вычитке. Решил заодно записать короткую демонстрацию того, что получилось.
В рамках статьи поднял две локальные нейросети: Laya (открытый аналог JEV) для быстрого принятия решений и Gemma 4 для более сложных задач.
На их базе собрал полноценного AI-агента на Python, без LangGraph и прочих агентных фреймворков.
Система получает новость, классифицирует её через Laya и, если материал подходит по тематике, передаёт Gemma. Та уже самостоятельно работает с инструментами, готовит статью и публикует её в блоге.
Весь проект, Docker Compose и исходники выложил на GitHub:
https://github.com/Yakvenalex/Habr-Jev-Agent
Если обойдётся без форс-мажоров, большая статья с подробным разбором архитектуры, развёртывания и практической части выйдет на следующей неделе.
А пока можете посмотреть, что получилось.
1🔥26👍4❤1
🔥 Открытый урок «Микросервисы на практике»
Когда монолит становится сложно развивать, хочется разделить его на микросервисы, но вместе с этим появляются новые вопросы: где провести границы, как организовать взаимодействие сервисов и что делать, если один из них перестал отвечать.
29 октября в 19:00 МСК разберём, когда стоит переходить к микросервисам и как проектировать их с учётом сбоев и роста нагрузки.
На уроке ты узнаешь:
➖ чем микросервисная архитектура отличается от монолита и когда переход оправдан
➖ какие проблемы возникают при взаимодействии микросервисов
➖ какие паттерны помогают сделать систему надёжнее и как применять идемпотентность
На продакшен кейсе сервисов заказов и платежей разберём, как потерянный ответ приводит к двойному списанию и как от этого защититься.
Урок проведёт Станислав Клоков, тимлид финтех-проекта с нагрузкой 100k RPS, который раньше разрабатывал ядро платформы микросервисов в Яндексе.
👉 Регистрируйся, чтобы разобраться в микросервисах на практическом примере
Когда монолит становится сложно развивать, хочется разделить его на микросервисы, но вместе с этим появляются новые вопросы: где провести границы, как организовать взаимодействие сервисов и что делать, если один из них перестал отвечать.
29 октября в 19:00 МСК разберём, когда стоит переходить к микросервисам и как проектировать их с учётом сбоев и роста нагрузки.
На уроке ты узнаешь:
➖ чем микросервисная архитектура отличается от монолита и когда переход оправдан
➖ какие проблемы возникают при взаимодействии микросервисов
➖ какие паттерны помогают сделать систему надёжнее и как применять идемпотентность
На продакшен кейсе сервисов заказов и платежей разберём, как потерянный ответ приводит к двойному списанию и как от этого защититься.
Урок проведёт Станислав Клоков, тимлид финтех-проекта с нагрузкой 100k RPS, который раньше разрабатывал ядро платформы микросервисов в Яндексе.
👉 Регистрируйся, чтобы разобраться в микросервисах на практическом примере
🔥8❤5👍2🤮1🤡1🤣1🤝1
Забавное классовое разделение вырисовывается у OpenAI. Прямо как на "Титанике".
На верхних палубах господа с подписками за $100+ выбирают, какую рекламу показывать. На нижних - челядь с бесплатными или дешевыми тарифами смотрит то, что ей выбрали.
Одним предлагают рекламные кабинеты, другим - рекламные объявления.
Осталось только спасательные шлюпки распределить по тарифным планам 😂
На верхних палубах господа с подписками за $100+ выбирают, какую рекламу показывать. На нижних - челядь с бесплатными или дешевыми тарифами смотрит то, что ей выбрали.
Одним предлагают рекламные кабинеты, другим - рекламные объявления.
Осталось только спасательные шлюпки распределить по тарифным планам 😂
😁17🔥5💯5👍2🤡1