Latest posts

Антон Непша.js
30 Jul, 14:05
Моё хобби — менять названия полей в тулах и смотреть, как это влияет на качество заполнения тулов данными, когда модель эти тулы вызывает. Потому что влияние там действительно есть))Поначалу это влияние может быть незаметным, но на масштабе в сотни тестовых вызовов оно становится ощутимым — можно увидеть, как в 5-10% случаев нейронка пропускает какое-нибудь поле, заполняет его не тем, чем нужно, или не вызывает тул вообще (у DeepSeek такое часто происходит — он больше всех любит переспрашивать перед тем, как тул вызвать).И если, например, ваша модель периодически пропускает какое-то одно поле, то дело может быть не только в описании поля, но и в его названии. Поэтому я люблю проводить эксперименты с названиями таких полей, стараюсь давать им как можно более конкретные и узкие наименования. Например, username вместо простого name или более конкретное product_page вместо широкого url.
Антон Непша.js
20 Jul, 11:45
Расширил свой недавний доклад про работу с GigaChat API и расскажу его 25 июля на Технохаб конф в Санкт-Петербурге.Трансляции моего трека снова не будет, кстати, но в этот раз мой доклад будет записываться. В нём я поделюсь своим личным опытом перехода из фронтенд-разработки в разработку агентов, и на примере проблем, с которыми я сталкивался в последние два года, затрону архитектуру, observability и evals.Хочу ещё попробовать включить в доклад одну любопытную идею, которая прозвучала из зала на JS x AI Conf на той неделе. Но если вдруг не успею — в любом случае напишу об этом пост.Регистрация на мероприятие обязательна, подробности на сайте Технохаб Конф.
Антон Непша.js
17 Jul, 16:49
Никогда ещё не уходил с митапа под таким сильным впечатлением, как вчера после JS x AI conf.Думаю, можно смело удалять JS из названия митапа, потому что теперь есть просто AI, а JS — неважная деталь реализации, и фокусироваться на одном только JS больше не получится.Больше всего меня удивило, что все спикеры вчерашнего митапа, работая независимо друг от друга, ни о чём друг с другом предварительно не договариваясь, так или иначе демонстрировали в своих докладах один общий посыл: оставаться исключительно фронтендером, исключительно бэкендером или исключительно ещё кем-то уже недостаточно, а кто-то уже успел перестроиться, длительное время прожить в новой парадигме и накопить некоторый опыт.Девять человек! Девять разных спикеров за вечер говорят об одном и том же.Некоторые — прямым текстом. Например, Алексей Авдеев @aavdeev_channel и Саня Стародубцев @strdub рассказали, что в их
Антон Непша.js
15 Jul, 20:21
Агентские фреймворки больше не нужныМне стали часто попадаться видео автора Jake Van Clief, который в каждом видео говорит, что LangChain и прочие агентские фреймворки — это пустая трата времени, и что для разработки агента достаточно написать несколько .md-файлов.И я не смог не попасться на такой кликбейт, особенно если учесть, что я уже два года на LangChain разрабатываю. Вдруг я и правда зря время потратил)) Пришлось погрузиться в статью этого автора на arxiv.org, чтобы в этом разобраться. Оказалось, это был не совсем кликбейт.Interpretable Context Methodology Вообще это скорее маркетинговое название подхода, а не термин. А идея подхода состоит в том, что для построения поэтапного пайплайна работы агента достаточно воспользоваться пронумерованными папками, которые и будут являться шагами этого пайплайна.В каждой папке лежит свой промпт, которому агент должен следовать на
Антон Непша.js
10 Jul, 09:54
JS x AI митап в Сбер.СредеЯ тут недавно осознал, что я уже два с половиной года работаю с GigaChat API. Представляете, сколько всего я могу о нём рассказать?Вот 16 июля в Сбер.Среде и расскажу) И ещё немного поругаю слайды из своих предыдущих докладов.Правда, мой доклад транслироваться не будет, послушать его можно будет только вживую. Заодно Сбер.Среду посмотрите, если ещё не были у нас)Но основная часть митапа будет как оффлайн, так и онлайн с трансляцией. И программа крутая!Ссылка на регистрацию и подробности тутTelegramSB.JS16 июля встречаемся в Сбер.Среде ⭐️ AI уже меняет JavaScript‑разработку. Вопрос не в том, заменит ли он инженеров, а в том, кто освоит его быстрее и качественнее. 🔥 Обсудим изменения на реальных кейсах от Сбера, Cloud․ru и Mish. Очные участники увидят спецформат…
Антон Непша.js
10 Jul, 09:53
Тра-та-та, а вот и я)))
Антон Непша.js
10 Mar, 11:25
OWASP Top 10 для агентских приложенийСтандарты кибербезопасности Open Web Application Security Project есть не только для веба, но и для LLM-приложений и агентов.В OWASP Top 10 For Agentic Applications 2026 перечислены 10 самых опасных уязвимостей, которым могут быть подвержены разрабатываемые нами AI-агенты, а так же способы их предупреждения и устранения.Некоторые из уязвимостей прям любопытные: Есть, например, ASI08: Cascading Failures, когда из-за одного зараженного агента эффектом домино компрометируются остальные агенты, которые начинают получать и исполнять вредоносные инструкции от вышестоящего в иерархии агента. Или ASI04: Agentic Supply Chain Vulnerabilities — если вы используете MCP-сервер или какое-нибудь удалённое хранилище промптов, а они вдруг окажутся взломанными, то ваш агент начнёт делать не то, что вы от него ожидаете. Так что поаккуратнее с опенсорсными MCP. Ну
Антон Непша.js
9 Feb, 17:49
Инструменты дебага LLM-приложений на JSОпубликовали запись моего доклада с HolyJS 2025 Autumn, в котором я сравнивал observability- и дебаг-инструменты для LLM-приложений.Доклад теперь можно посмотреть на YouTube и в VK Видео, а презентацию я уже выгладывал в одном из предыдущих постов.YouTubeАнтон Непша — Инструменты дебага LLM-приложений на JSПодробнее о конференции HolyJS: https://jrg.su/EM4wwV — — Скачать презентацию с сайта — https://jrg.su/ZVUbfx В JavaScript-экосистеме есть очень много библиотек для разработки AI-агентов. А что насчет дебага? Можно ли отлаживать AI-агенты с помощью простого…
Антон Непша.js
7 Dec 2025, 18:58
Как я искал утечку памяти в приложении на PythonНа этапе нагрузочного тестирования обнаружилась утечка памяти в контейнере приложения, которое я разрабатываю.До этого мне приходилось сталкиваться с утечками в JS в браузере, я даже доклад про это рассказывал, но в этот раз утечка была в агенте на Python, поэтому браузерные девтулзы там не помогли бы — пришлось разбираться в этом вопросе заново.Профилировать я начал с pytest-memray. Это было проще всего — подключаешь плагин pytest-memray к уже написанным тестам на pytest, запускаешь тесты как обычно, и получаешь на выходе топ 5 функций, которые за время работы тестов аллоцировали наибольшее количество памяти.Memray Отчёт pytest-memray не самый подробный — это просто текст. Поэтому я решил перейти на обычный memray, который работает независимо от pytest и способен выдавать самые разные форматы отчетов. Я использовал
Антон Непша.js
3 Dec 2025, 20:41edited
Критическая уязвимость в ReactРазработчики React рекомендуют срочно обновиться до версий 19.0.1, 19.1.2 или 19.2.1 из-за критической уязвимости в React Server Components, обнаруженной 29 ноября.Под угрозу Remote Code Execution попадают все сайты, поддерживающие RSC, даже если на самих сайтах RSC не используются. Так же затронуты next, react-router, @vitejs/plugin-rsc и ещё ряд пакетов.Кому интересно, вот PR с исправлением.
Антон Непша.js
21 Nov 2025, 14:07
Инструменты дебага LLM-приложенийВот так в одном слайде могут уместиться результаты полутора лет экспериментов (см. дату моего первого поста про LLM), сравнения разных инструментов и попыток найти наиболее удобный и подходящий под нужды нашего проекта Developer Experience.Sentry разворачивал через боль просто потому что уж очень хотелось посмотреть, что есть в их новой AI Agents Insights.LangChain-стек первый год вообще не вызывал ничего, кроме отторжения и непонимания смысла в его лишних абстракциях. Из этого даже отдельный доклад родился. Разобрался, стало легче. Понравилась их студия, которая позволяет, собственно, «дебажить».Уже позже пришел к Langfuse и Phoenix, и остановился на Langfuse из-за наиболее подходящего под мои нужды набора инструментов и OpenSource лицензии.В общем, выступил сегодня на HolyJS с обзором возможностей Sentry, LangGraph Studio, Langfuse, Arize


Антон Непша.js
14 Nov 2025, 20:03edited
Сегодня этому каналу исполняется два годаПеред тем, как писать этот пост, я решил для сравнения прочитать итоги, которые я подводил год назад. Боже, какой же я тогда был наивный, счастливый и беспечный))В этот раз хочется обойтись без клише про «стимулы для развития», поэтому попытаюсь рассказать всё как есть)Из-за смены тех. стека мне стало сложнее совмещать канал с основной работой, поэтому посты стали выходить реже.Расскажу на что сейчас уходит мой ресурс и чем приходится заниматься на работе: изучать Python с лангчейном, погружаться в работу k8s и OpenShift (пришлось вспомнить всё, что я знал о линуксах), писать докерфайлы и CI/CD пайплайны, изучать работу новой платформы, в которой каждую неделю появляется что-то новое, разворачивать в банке OpenTelemetry-тулинг для всего этого, и даже писать юнит-тесты на изменение КОСИНУСНОГО РАССТОЯНИЯ.Параллельно я стараюсь погружать
Антон Непша.js
14 Nov 2025, 06:17edited
FrontendConf 2025 опубликовали мой доклад про React CompilerВ докладе рассказываю о том, как работает React Compiler, как его настраивать и что он сделает с вашим кодом, если вы его подключите.Запись доклада уже доступна по ссылке на youtube и в VK Видео.
Антон Непша.js
4 Nov 2025, 12:38edited
UI киты для создания AI-агентовВ последнее время всё чаще приходится создавать прототипы своих AI-ассистентов, чат-ботов, визуализировать агентский воркфлоу и т.д. Лично я за этот год поучаствовал в трёх или четырёх таких проектах, где нужно было прототипизировать фронт для чат-ботов, поэтому решил собрать список UI китов, предназначенных именно для этих целей:1. AI Elements от Vercel — самое популярное решение для разработки чат-ботов. Содержит кучу компонентов, работает с Next.js, AI SDK и вообще с экосистемой Vercel. Есть даже компонент Web Preview для отрисовки превью разрабатываемых сайтов в iframe. Правда, пока просматривал документацию, поймал себя на мысли, что комплексити этих компонентов иногда даже пугает. Особенно тут, где одна плашка подтверждения разбита на целых 7 компонентов.2. Assistant UI — ещё один UI kit для чат-ботов. В отличие от предыдущего кита это open
Антон Непша.js
3 Nov 2025, 08:53
Настоящий State of FrontendЗашел сейчас в документацию по установке React Compiler и подумал, что она хорошо характеризует состояние современного фронтенда — здесь даже команда установки пакета расписана отдельно для каждого пакетного менеджера.Ну, типа, вдруг я сам не догадаюсь поменять npm на pnpm в команде, которую я напишу один раз в жизни)Я понимаю, что это сделано для удобства. Пользователь yarn может нажать на кнопку Copy и не переписывать всю команду самостоятельно.Но если авторы и правда переживают за то, чтобы я не перетрудился, могли бы тогда для каждой версии отдельную кнопку для копирования сделать. Вдруг я не хочу ставить latest?)


Антон Непша.js
30 Sept 2025, 18:09
Кто-нибудь разворачивал Sentry локально?Я вот попробовал. Правда, надо было сначала обратить внимание на минимальные системные требования в 4 ядра CPU и 16 GB RAM + 16 GB swap.С такими запросами Sentry нагружал до 90% CPU у игрового ноутбука 3-летней давности и забирал почти всю оперативную память. При этом, ставился он часа два (долго скачивались пакеты), а все его 70+ сервисов в Docker Compose поднимались после установки ещё минут 15.И ты сидишь такой с тормозящим ноутбуком и пытаешься ОШИБКИ ОТЛАВЛИВАТЬ)) Такой себе опыт разработки получился)Хорошо, что у меня оказался второй ноутбук Хоть он и старый, но с 32GB RAM, которые как раз можно было бы удачно утилизировать на поднятие Sentry. Правда, на нём винда, а Sentry на винду ставиться не захотел. Благо, у Windows есть возможность развернуть виртуальную Ununtu через команду:wsl.exe --install Ubuntu-24.04Далее в этой
Антон Непша.js
24 Sept 2025, 18:51
Как из фронтендера стать AI-инженеромТермин "AI-инженер" я подсмотрел в роадмапе AI-инженера, ссылкой на который недавно делился Саня Стародубцев.Я ведь недавно и сам перешёл из фронтенд-разработки в разработку AI-агентов, поэтому мне стало интересно, стал ли я AI-инженером? Мой собственный опыт "переквалификации" не совсем ложится на эту дорожную карту. Есть ещё один роадмап, вот этот, но там порядок тоже не совсем такой, как у меня. В общем, решил поделиться здесь своей альтернативной версией)Пререквизиты Опыт работы с бэкендом всё-таки понадобится. Одной фронтенд-экспертизы явно будет недостаточно. Работать с API нейросетей скорее всего придётся с бэкенда. С фронта тоже можно, конечно, но в этом есть большой риск утечки вашего API-ключа. Благо у нас, JavaScript-разработчиков, с этим проблем нет))Впоследствии, конечно, нужно будет углубляться в бэкенд-разработку и заполнять
Антон Непша.js
14 Sept 2025, 12:01
Промпт vs Tools, часть 2Продолжаю тестировать промпты и тулы по мотивам предыдущего поста, но в этот раз увеличил количество тестов с 25 до 100 и запустил их на зарубежном сервере с доступом к OpenAI API. Ниже делюсь результатами:Разница в скорости между тулами и промптами у моделей OpenAI не так значительнаgpt-4o-mini обработала 100 запросов с промптами за 35 секунд, с функциями — за 60, т.е. медленнее в 1,7 раза. GigaChat-2-Max справился с аналогичной задачей за 29 и 107 секунд соответственно, здесь тулы работают медленнее промптов в 3,6 раза.Местоположение влияет, но не так, как я предполагалЗапущенные мной из дома 100 тест-кейсов с GigaChat-2-Max отработали за 29 секунд. Эти же 100 кейсов, запущенные с зарубежного сервера, выполнились за 158 секунд.И вроде кажется, всё логично — сервер зарубежный, поэтому такая разница в скорости. Вот только o4-mini справилась с этими же
Антон Непша.js
7 Sept 2025, 15:07
Маршрутизация LLM через промпт или через toolsЯ никакой не Data Scientist, я просто фронтендер. Но даже фронтендеру иногда бывает интересно, что лучше отработает — обычный промпт типа такого: Верни слово "auto", если пользователь говорит про автомобили. Верни слово "movie", если пользователь говорит о фильмах… или передача в LLM функций (или тулов) с описанием каждой из категорий, между которыми LLM нужно сделать выбор.И да, эту задачу можно было бы решить и с помощью векторов, но мне захотелось сравнить именно эти два подхода.Первый способ может показаться ненадёжным и контринтуитивным — мы ведь не используем structured_output, поэтому ответ модели здесь не так строго типизирован, как во втором случае. Но так ли всё просто?Как я сравнивал промпт и тулы — Написал первый промпт. Он будет проверять, насколько хорошо LLM маршрутизирует, используя обычное текстовое описание: Твоя осн
Антон Непша.js
28 Aug 2025, 19:59
Чем приходится заниматься вместо фронтендаНесколько месяцев назад я перестал быть фронтендером и перешёл в разработку AI-агентов в Сбере. Направление невероятно популярное и очень увлекательное) Настолько популярное и увлекательное, что фронтенд словно уходит на второй план. Напишешь про какие-нибудь новые проперти для View Transition API в Chrome 140, а у чувака из соседнего канала нейросеть сама пишет целый сайт за один промпт. Да и с переходом на новую роль мне становится всё сложнее выделять время на то, чтобы погружаться в дебри фронтенд-инструментов.Где найти выход?) Лично я стараюсь совмещать эти два направления. Если и есть что-то общее у фронтенда и у AI-агентов, так это JavaScript) JavaScript-экосистема настолько очистилась обширная, что решений для AI-агентов на нашем любимом языке написано очень много))Вчера, например, тестил elizaos Очень любопытный фреймворк для
Related Channels
Other channels in the same section of the catalogue.
