Открываю набор в новый сезон клуба по AI агентам. Стартуем 22 сентября.
Сезон устроен так: месяц на понимание базы (написан новый курс), дальше три месяца один общий проект на всех участников.
Первый месяц идёт без проекта, уроки курса по LangChain с дедлайнами, плюс теория на встречах. Теория отвечает на вопрос "что это такое и почему устроено именно так". Что занимает контекстное окно, откуда берётся цикл агента, чем субагент отличается от инструмента и т.д.
Со второго месяца начинается общий проект. В этом сезоне это агент археолог легаси.
Он отвечает на вопросы, которые возникают в любом незнакомом репозитории. Для этого обходит код, собирает граф зависимостей, а свой ответ проверяет запуском.
У него восемь слоёв, от обхода репозитория до оценки качества. В каждом из трёх блоков проекта вы берёте новый слой, а прежний передаёте другому участнику вместе с описанием, как он устроен и где грабли.
1. За сезон вы работает руками над трема слоями из восьми. Остальные пять видите на разборах и принимаете от коллег вместе с описанием, как они устроены.
2. Встречи по вторникам в 18:00 мск, каждую неделю. Разбор идёт вживую, поэтому сезон рассчитан на участие, а записи нужны, чтобы догнать пропущенное
3. Первый месяц идёт по курсу с дедлайнами и к началу проекта у всех есть база
Для участия нужен опыт разработки на python. Языковые модели знать не нужно.
Сезон длится с 22 сентября по 22 января, четыре месяца по четыре встречи, с пропуском недели на новогодние каникулы.
Стоимость 5 000 ₽ в месяц, оплата помесячная.
Созвоны в Телемосте, общение в Телеграм чате клуба. Беру 10-12 человек, отбор по анкете.
Анкету принимаю до 21 сентября, потом закрываю набор. Присылайте мне в личку, @DJWOMS.
Анкета:
1. Что вы уже умеете и на чём пишете: язык, фреймворки, сколько лет в разработке, работали ли с языковыми моделями и агентами.
2. Чего вы ждёте от клуба, своими словами
3. Чему конкретно хотите научиться за эти четыре месяца. Чем конкретнее ответ, тем точнее я распределю участников по проекту
4. Сможете ли участвовать по вторникам в 18:00 мск: да, нет, или могу не всегда, поясню
Если сомневаетесь, подходит ли вам, тоже напишите.
Сезон устроен так: месяц на понимание базы (написан новый курс), дальше три месяца один общий проект на всех участников.
Первый месяц идёт без проекта, уроки курса по LangChain с дедлайнами, плюс теория на встречах. Теория отвечает на вопрос "что это такое и почему устроено именно так". Что занимает контекстное окно, откуда берётся цикл агента, чем субагент отличается от инструмента и т.д.
Со второго месяца начинается общий проект. В этом сезоне это агент археолог легаси.
Он отвечает на вопросы, которые возникают в любом незнакомом репозитории. Для этого обходит код, собирает граф зависимостей, а свой ответ проверяет запуском.
У него восемь слоёв, от обхода репозитория до оценки качества. В каждом из трёх блоков проекта вы берёте новый слой, а прежний передаёте другому участнику вместе с описанием, как он устроен и где грабли.
1. За сезон вы работает руками над трема слоями из восьми. Остальные пять видите на разборах и принимаете от коллег вместе с описанием, как они устроены.
2. Встречи по вторникам в 18:00 мск, каждую неделю. Разбор идёт вживую, поэтому сезон рассчитан на участие, а записи нужны, чтобы догнать пропущенное
3. Первый месяц идёт по курсу с дедлайнами и к началу проекта у всех есть база
Для участия нужен опыт разработки на python. Языковые модели знать не нужно.
Сезон длится с 22 сентября по 22 января, четыре месяца по четыре встречи, с пропуском недели на новогодние каникулы.
Стоимость 5 000 ₽ в месяц, оплата помесячная.
Созвоны в Телемосте, общение в Телеграм чате клуба. Беру 10-12 человек, отбор по анкете.
Анкету принимаю до 21 сентября, потом закрываю набор. Присылайте мне в личку, @DJWOMS.
Анкета:
1. Что вы уже умеете и на чём пишете: язык, фреймворки, сколько лет в разработке, работали ли с языковыми моделями и агентами.
2. Чего вы ждёте от клуба, своими словами
3. Чему конкретно хотите научиться за эти четыре месяца. Чем конкретнее ответ, тем точнее я распределю участников по проекту
4. Сможете ли участвовать по вторникам в 18:00 мск: да, нет, или могу не всегда, поясню
Если сомневаетесь, подходит ли вам, тоже напишите.
🔥6👍2😁1🤔1🎉1💯1
Окно на миллион токенов не отменило работу с контекстом
Окна моделей выросли до миллиона токенов и появилось ощущение, что можно складывать в контекст всё подряд, места хватит.
Давайте разберёмся, почему это не сработало.
В июле 2025 года Chroma прогнала 18 моделей на входах разной длины: Claude, GPT, Gemini, Qwen. Chroma делает базу для векторного поиска, то есть интерес в этой теме у неё большой и читать замер стоит с поправкой на это.
Вывод, модели не держат одинаковое качество на разной длине входа. Причём деградация начинается задолго до физического предела окна и идёт она неровно, провалами.
У этого есть название, context rot, гниение контекста.
Anthropic в статье про контекст инжиниринг (context engineering) называет контекст конечным ресурсом с убывающей отдачей. Объясняет через бюджет внимания: он у модели ограничен, каждый новый токен его тратит и поэтому чем длиннее контекст, тем строже приходится отбирать, что в него класть.
Поэтому большое окно не заменило работу с контекстом. Оно отодвинуло точку, где отсутствие этой работы становится заметным и подняло цену ошибки, за лишнее в окне вы платите на каждом шаге, и платите не один раз.
Источники:
1) Замер Chroma "Context Rot: How Increasing Input Tokens Impacts LLM Performance"
2) Anthropic, "Effective context engineering for AI agents"
Окна моделей выросли до миллиона токенов и появилось ощущение, что можно складывать в контекст всё подряд, места хватит.
Давайте разберёмся, почему это не сработало.
В июле 2025 года Chroma прогнала 18 моделей на входах разной длины: Claude, GPT, Gemini, Qwen. Chroma делает базу для векторного поиска, то есть интерес в этой теме у неё большой и читать замер стоит с поправкой на это.
Вывод, модели не держат одинаковое качество на разной длине входа. Причём деградация начинается задолго до физического предела окна и идёт она неровно, провалами.
У этого есть название, context rot, гниение контекста.
Anthropic в статье про контекст инжиниринг (context engineering) называет контекст конечным ресурсом с убывающей отдачей. Объясняет через бюджет внимания: он у модели ограничен, каждый новый токен его тратит и поэтому чем длиннее контекст, тем строже приходится отбирать, что в него класть.
Поэтому большое окно не заменило работу с контекстом. Оно отодвинуло точку, где отсутствие этой работы становится заметным и подняло цену ошибки, за лишнее в окне вы платите на каждом шаге, и платите не один раз.
Источники:
1) Замер Chroma "Context Rot: How Increasing Input Tokens Impacts LLM Performance"
2) Anthropic, "Effective context engineering for AI agents"
❤🔥3👍3🎉1💯1
Давно хотел собрать себе Джарвиса, и вчера дособирал последнее, чего не хватало, управление голосом.
🔥8👍6❤🔥3😁2
Четыре способа сломать себе контекст
Когда агент начинает нести чушь, говорят что "модель слабая". Чаще дело в том, что накопилось у неё в контексте.
Есть разбор Дрю Бройнига (Drew Breunig), где эти вещи разложены по четырём видам. Он вышел 22 июня 2025 года и с тех пор эти четыре названия закрепились, в разборах про агентов я встречаю именно их.
1) Отравление. В контекст попала ошибка или галлюцинация, и агент дальше на неё ссылается как на факт. Пример из разбора: агент на Gemini, игравший в Pokemon, выдумал несуществующее состояние игры и дальше добивался невозможной цели.
2) Отвлечение. Контекст разросся настолько, что модель залипает на истории и перестаёт опираться на то, чему училась. Тот же агент после 100 000 токенов начал повторять свои прошлые действия вместо новых стратегий.
3) Путаница. В контексте лежит лишнее и модель всё равно тащит это в ответ. Бройниг ссылается тут на Berkeley Function-Calling Leaderboard: при большом наборе подключённых инструментов модели иногда вызывают не тот.
4) Столкновение. Новая информация противоречит тому, что уже лежало в промпте. Бройниг ссылается тут на совместную работу Microsoft и Salesforce: качество падает на 39%, когда задачу выдают по частям за несколько шагов вместо сразу целой.
Четвёртый пункт неприятнее остальных, потому что так работает обычный диалог. Вы уточняете задачу по ходу дела, а агент тащит за собой все прежние версии условия и путается между ними.
Если разговор с агентом ушёл в сторону, дописывать в него ещё одно уточнение, это чаще всего проигрышный ход. Надёжнее собрать условие заново и начать с чистого контекста, вы теряете накопленную историю, зато возвращаете себе управляемое окно.
Источник: Drew Breunig, "How Long Contexts Fail"
Когда агент начинает нести чушь, говорят что "модель слабая". Чаще дело в том, что накопилось у неё в контексте.
Есть разбор Дрю Бройнига (Drew Breunig), где эти вещи разложены по четырём видам. Он вышел 22 июня 2025 года и с тех пор эти четыре названия закрепились, в разборах про агентов я встречаю именно их.
1) Отравление. В контекст попала ошибка или галлюцинация, и агент дальше на неё ссылается как на факт. Пример из разбора: агент на Gemini, игравший в Pokemon, выдумал несуществующее состояние игры и дальше добивался невозможной цели.
2) Отвлечение. Контекст разросся настолько, что модель залипает на истории и перестаёт опираться на то, чему училась. Тот же агент после 100 000 токенов начал повторять свои прошлые действия вместо новых стратегий.
3) Путаница. В контексте лежит лишнее и модель всё равно тащит это в ответ. Бройниг ссылается тут на Berkeley Function-Calling Leaderboard: при большом наборе подключённых инструментов модели иногда вызывают не тот.
4) Столкновение. Новая информация противоречит тому, что уже лежало в промпте. Бройниг ссылается тут на совместную работу Microsoft и Salesforce: качество падает на 39%, когда задачу выдают по частям за несколько шагов вместо сразу целой.
Четвёртый пункт неприятнее остальных, потому что так работает обычный диалог. Вы уточняете задачу по ходу дела, а агент тащит за собой все прежние версии условия и путается между ними.
Если разговор с агентом ушёл в сторону, дописывать в него ещё одно уточнение, это чаще всего проигрышный ход. Надёжнее собрать условие заново и начать с чистого контекста, вы теряете накопленную историю, зато возвращаете себе управляемое окно.
Источник: Drew Breunig, "How Long Contexts Fail"
👍7🔥2🎉1💯1
Три приёма как исправить разросшийся контекст
В прошлый раз разобрали, как ломается контекст. Теперь про то, чем это исправляют.
В сентябре 2025 года Anthropic описала три приёма для долгих задач в статье про контекст инжиниринг (context engineering). Те же три вы увидите в обвязках, которыми пользуетесь: в Claude Agent SDK и в deep agents у LangChain.
1) Сжатие истории. Когда контекст подходит к пределу, старые сообщения заменяются на сводку: что была за задача, что уже сделано, что дальше. Разговор продолжается, но история в окне занимает столько, сколько занимает сводка, вся переписка туда больше не идёт.
2) Внешние заметки. Агент пишет выводы в файлы и читает их, когда нужно. Память находится вне контекстного окна и переживает и сжатие, и перезапуск сессии.
3) Изоляция через субагентов. Тяжёлая работа уходит отдельному агенту со своим чистым окном, а наверх возвращается только результат. Вызовы инструментов остаются в окне субагента, главный агент получает сжатый итог. Цену приёма Anthropic называет в другой своей статье, про мультиагентные схемы (январь 2026): такие схемы тратят в 3-10 раз больше токенов, чем один агент, из-за дублирования контекста и накладных расходов на координацию.
Это уточняет вывод первого поста, за лишнее в окне вы платите на каждом шаге и качеством, и деньгами. А изоляция возвращает качество, но поднимает счёт. Поэтому третий приём берут ради того, чтобы главный агент дожил до конца задачи.
Вот пороги из документации LangChain по deep agents.
1) Результат вызова инструмента больше 20 000 токенов (порог по умолчанию) в историю целиком не кладётся. Он уходит в файл, а в контексте остаётся путь и первые десять строк.
2) Сжатие включается по умолчанию на 85% от max_input_tokens модели, свежими остаются последние 10% токенов.
3) Если профиля модели нет, работает запасной порог 170 000 токенов и шесть последних сообщений.
Смотрите, где стоят пороги, они заметно раньше предела окна. Это тот же вывод, что в первом посте, только уже зашитый в код обвязки.
Пороги отвечают на вопрос, когда чистить. Второй вопрос, что происходит с вычищенным: оно либо переезжает туда, откуда его можно достать, либо снимается.
Снятие, это частный случай первого приёма: Anthropic называет вычистку старых результатов вызовов инструментов самой безопасной формой сжатия, потому что своё дело эти результаты уже сделали и пересказывать их незачем. Плохо не удаление само по себе. Плохо, когда из окна пропадает то, что понадобится дальше и достать это уже неоткуда.
Источники:
1) Anthropic, "Effective context engineering for AI agents"
2) Anthropic, "When to use multi-agent systems and when not to use"
3) Документация LangChain, пороги deep agents
В прошлый раз разобрали, как ломается контекст. Теперь про то, чем это исправляют.
В сентябре 2025 года Anthropic описала три приёма для долгих задач в статье про контекст инжиниринг (context engineering). Те же три вы увидите в обвязках, которыми пользуетесь: в Claude Agent SDK и в deep agents у LangChain.
1) Сжатие истории. Когда контекст подходит к пределу, старые сообщения заменяются на сводку: что была за задача, что уже сделано, что дальше. Разговор продолжается, но история в окне занимает столько, сколько занимает сводка, вся переписка туда больше не идёт.
2) Внешние заметки. Агент пишет выводы в файлы и читает их, когда нужно. Память находится вне контекстного окна и переживает и сжатие, и перезапуск сессии.
3) Изоляция через субагентов. Тяжёлая работа уходит отдельному агенту со своим чистым окном, а наверх возвращается только результат. Вызовы инструментов остаются в окне субагента, главный агент получает сжатый итог. Цену приёма Anthropic называет в другой своей статье, про мультиагентные схемы (январь 2026): такие схемы тратят в 3-10 раз больше токенов, чем один агент, из-за дублирования контекста и накладных расходов на координацию.
Это уточняет вывод первого поста, за лишнее в окне вы платите на каждом шаге и качеством, и деньгами. А изоляция возвращает качество, но поднимает счёт. Поэтому третий приём берут ради того, чтобы главный агент дожил до конца задачи.
Вот пороги из документации LangChain по deep agents.
1) Результат вызова инструмента больше 20 000 токенов (порог по умолчанию) в историю целиком не кладётся. Он уходит в файл, а в контексте остаётся путь и первые десять строк.
2) Сжатие включается по умолчанию на 85% от max_input_tokens модели, свежими остаются последние 10% токенов.
3) Если профиля модели нет, работает запасной порог 170 000 токенов и шесть последних сообщений.
Смотрите, где стоят пороги, они заметно раньше предела окна. Это тот же вывод, что в первом посте, только уже зашитый в код обвязки.
Пороги отвечают на вопрос, когда чистить. Второй вопрос, что происходит с вычищенным: оно либо переезжает туда, откуда его можно достать, либо снимается.
Снятие, это частный случай первого приёма: Anthropic называет вычистку старых результатов вызовов инструментов самой безопасной формой сжатия, потому что своё дело эти результаты уже сделали и пересказывать их незачем. Плохо не удаление само по себе. Плохо, когда из окна пропадает то, что понадобится дальше и достать это уже неоткуда.
Источники:
1) Anthropic, "Effective context engineering for AI agents"
2) Anthropic, "When to use multi-agent systems and when not to use"
3) Документация LangChain, пороги deep agents
🔥5👍3😁1🎉1
Спор года: сжимать историю или нет
Тут как всегда есть НО. Сжатие истории выглядит очевидным решением, но единого мнения в отрасли нет.
Позиция большинства людей, сжимать и желательно не дожидаясь предела. В прошлых постах писал, что качество проседает раньше, чем кончается окно, поэтому чем короче история, тем лучше рассуждение модели.
В августе 2026 года, Луи Бушар написал, что у себя они сжимать перестали, потому что есть кэш промпта.
Поясню, о чём речь. Провайдеры кэшируют начало запроса и повторно отправленные токены стоят дешевле. Размер скидки у каждого провайдера разный.
Пока вы дописываете к истории новые сообщения, вся её прежняя часть идёт по цене кэша. Как только вы историю собрали в сводку, начало запроса изменилось, кэш сбросился и следующий запрос оплачивается полностью.
Получается, что сжатие экономит место в окне, а кэш экономит деньги, и одно ломает другое.
Автор статьи пишет, что идёт против общего мнения и его довод не всегда работает. Кэш не вечен и срок жизни у каждого провайдера разный. Выигрыш есть только при плотной работе без пауз. На редких запросах кэш всё равно протухнет и держать полную историю окажется дороже.
Прежде чем настраивать сжатие, посмотрите, какой у вас режим работы. Сессия без длинных пауз, кэш важнее сжатия. Если работа дольше, чем живёт кэш, сжимайте. Платить полную ставку за историю, которая всё равно не в кэше, смысла нет.
Источник: Context Engineering in 2026: Why We Stopped Compacting Our Agent's Context
Тут как всегда есть НО. Сжатие истории выглядит очевидным решением, но единого мнения в отрасли нет.
Позиция большинства людей, сжимать и желательно не дожидаясь предела. В прошлых постах писал, что качество проседает раньше, чем кончается окно, поэтому чем короче история, тем лучше рассуждение модели.
В августе 2026 года, Луи Бушар написал, что у себя они сжимать перестали, потому что есть кэш промпта.
Поясню, о чём речь. Провайдеры кэшируют начало запроса и повторно отправленные токены стоят дешевле. Размер скидки у каждого провайдера разный.
Пока вы дописываете к истории новые сообщения, вся её прежняя часть идёт по цене кэша. Как только вы историю собрали в сводку, начало запроса изменилось, кэш сбросился и следующий запрос оплачивается полностью.
Получается, что сжатие экономит место в окне, а кэш экономит деньги, и одно ломает другое.
Автор статьи пишет, что идёт против общего мнения и его довод не всегда работает. Кэш не вечен и срок жизни у каждого провайдера разный. Выигрыш есть только при плотной работе без пауз. На редких запросах кэш всё равно протухнет и держать полную историю окажется дороже.
Прежде чем настраивать сжатие, посмотрите, какой у вас режим работы. Сессия без длинных пауз, кэш важнее сжатия. Если работа дольше, чем живёт кэш, сжимайте. Платить полную ставку за историю, которая всё равно не в кэше, смысла нет.
Источник: Context Engineering in 2026: Why We Stopped Compacting Our Agent's Context
❤🔥4😁2💯2👍1🔥1
Не грузите агенту всё заранее
Есть подход, который кажется разумным, а в длинной сессии работает против вас. Собрать заранее всё, что может пригодиться и вывалить агенту в контекст на старте. Всю документацию, все инструкции, описания всех подключённых инструментов.
Отрасль от этого подхода отходи.
Подгружайте по требованию. Агент получает способ достать данные: список файлов, поиск, вызов инструмента. Что нужно для текущего шага, то он и читает.
Это называется прогрессивным раскрытием и работает в скиллах. У каждого скилла есть короткая шапка с названием и описанием, и на старте агент читает только её. Полный текст скилла подтягивается тогда, когда агент решил, что он относится к задаче.
В промпте держите только то, что нужно в каждой задаче. Соглашения команды, правила проекта, стиль ответов. Всё остальное лежит рядом и подгружается по требованию.
Но это лишние шаги: агент сначала ищет, потом читает, потом делает. Вы меняете токены на задержку и в коротких задачах это может не окупиться.
Источники:
1) Anthropic, Effective context engineering for AI agents
2) Документация Anthropic про Agent Skills и прогрессивное раскрытие
Есть подход, который кажется разумным, а в длинной сессии работает против вас. Собрать заранее всё, что может пригодиться и вывалить агенту в контекст на старте. Всю документацию, все инструкции, описания всех подключённых инструментов.
Отрасль от этого подхода отходи.
Подгружайте по требованию. Агент получает способ достать данные: список файлов, поиск, вызов инструмента. Что нужно для текущего шага, то он и читает.
Это называется прогрессивным раскрытием и работает в скиллах. У каждого скилла есть короткая шапка с названием и описанием, и на старте агент читает только её. Полный текст скилла подтягивается тогда, когда агент решил, что он относится к задаче.
В промпте держите только то, что нужно в каждой задаче. Соглашения команды, правила проекта, стиль ответов. Всё остальное лежит рядом и подгружается по требованию.
Но это лишние шаги: агент сначала ищет, потом читает, потом делает. Вы меняете токены на задержку и в коротких задачах это может не окупиться.
Источники:
1) Anthropic, Effective context engineering for AI agents
2) Документация Anthropic про Agent Skills и прогрессивное раскрытие
❤🔥4👍3😁2🎉1
Сколько тебе лет?
Anonymous Poll
3%
До 15
1%
От 16 до 18
13%
От 19 до 25
12%
От 26 до 30
36%
От 31 до 40
35%
Больше 41
😁3❤🔥2👍1🎉1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤🔥2😁2
Какой контент хочешь видеть на канале?
Anonymous Poll
52%
Бэкенд и веб-разработка
52%
Архитектура и качество кода
25%
Карьера разработчика: собесы, зарплата, повышение грейда
23%
Управление в IT: Tech Lead, CTO, COO
65%
Внедрение AI в работу: Claude Code, Cursor и др.
45%
AI Deep Dive: RAG, MCP, и пр.
64%
Новые AI инструменты, эксперименты и мои кейсы
❤🔥3💯3🎉2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🎉2💯2
Пора что-то менять, наверное.
Последние месяцы я много времени уделял работе, своим проектам, обучению и экспериментам. Тем не менее, при этом накопилось достаточно тем, чтобы снова вернуться к каналу.
Хочу активнее вести канал, но не в том формате, который был ранее: здесь за последние годы аудитория довольно сильно изменилась, разные направления, разные предпочтения и в целом у каждого разные взгляды на контент от меня.
Поэтому сначала хочу понять, кто сейчас здесь и что вам действительно интересно и для этого отправляю ниже 4 анонимных голосования. По ним смогу понять, про какие направления вам стоит чаще рассказывать и в каком формате.
Буду благодарен каждому кто ответит и не пожалеет лишние 30-60 секунд.
Последние месяцы я много времени уделял работе, своим проектам, обучению и экспериментам. Тем не менее, при этом накопилось достаточно тем, чтобы снова вернуться к каналу.
Хочу активнее вести канал, но не в том формате, который был ранее: здесь за последние годы аудитория довольно сильно изменилась, разные направления, разные предпочтения и в целом у каждого разные взгляды на контент от меня.
Поэтому сначала хочу понять, кто сейчас здесь и что вам действительно интересно и для этого отправляю ниже 4 анонимных голосования. По ним смогу понять, про какие направления вам стоит чаще рассказывать и в каком формате.
Буду благодарен каждому кто ответит и не пожалеет лишние 30-60 секунд.
👍10❤🔥3💯3😁1
Разобрали теорию контекстной инженерии (context engineering). Теперь про то, где эти рычаги в инструментах, которыми вы пользуетесь. И ещё один пункт до которого в теории мы не дошли.
1) Сжатие вручную. В Claude Code есть команда
Числа из третьего поста тут не помогут: 85% и 170 000, это пороги автоматического сжатия в обвязке, а замеренной рекомендации, когда вызывать compact, я не встречал. Поэтому привязывайтесь к смене задачи, закончили часть работы, вызвали
2) В API Claude автоматическое сжатие включается параметром в запросе: по достижении порога (по умолчанию 150 000 входных токенов, минимум для настройки 50 000) модель сама делает сводку. Функция на сентябрь 2026 года еще в бете. Сама сводка стоит денег.
3) Память между сессиями. Отдельный инструмент памяти в API Claude работает в паре со сжатием. Сжатие держит контекст небольшим, а память хранит то, что должно пережить сводку. Файлы памяти при этом лежат на вашей стороне, модель только просит операцию, а выполняет её ваш код.
4) У LangChain то же самое в middleware. SummarizationMiddleware сводит старые сообщения в сводку и оставляет хвост. Порог задаётся параметром trigger (доля окна, токены или число сообщений), длина хвоста параметром keep.
В deep agents этот middleware уже настроен на те самые 85% из третьего поста. Если вы собираете агента на голом LangChain, порог надо задать самому, без trigger сжатие не сработает. ContextEditingMiddleware вычищает старые результаты вызовов инструментов.
5) Схемы инструментов часто забывают, а они уходят в промпт на каждом шаге, даже если инструмент ни разу не вызван. Отключение неиспользуемых инструментов уменьшает базовый размер запроса на всю сессию.
Пятый пункт стоит проверить у себя первым. Он не требует менять архитектуру и даёт эффект на каждом шаге до конца сессии.
Контекстная инженерия, это обычная работа инженера с ресурсом: что положить, что убрать, что подгрузить по требованию и чем платить за каждое решение. Промпт отвечает за одну реплику, а контекст, за всю сессию и именно он определяет, доживёт агент до конца задачи или начнёт ходить по кругу.
Источники:
1) Команды Claude Code
2) Сжатие в API Claude
3) Инструмент памяти в API Claude
4) Встроенные middleware LangChain
👇👇👇👇👇
Контекст, цикл агента и субагенты, это первый месяц второго сезона в клубе по AI агентам.
Стартуем 22 сентября. Теория первого месяца отвечает на вопрос, что это такое и почему устроено именно так: что занимает контекстное окно, откуда берётся цикл агента, чем субагент отличается от инструмента.
Дальше три месяца идёт один общий проект на всех участников, агент археолог легаси. Он отвечает на вопросы, которые возникают в любом незнакомом репозитории: обходит код, собирает граф зависимостей, а свой ответ проверяет запуском.
Встречи по вторникам в 18:00 мск, каждую неделю. Сезон с 22 сентября по 22 января, 5 000 ₽ в месяц, оплата помесячная. Беру 10-12 человек, отбор по анкете. Нужен опыт разработки на python, языковые модели на входе знать не нужно.
Анкету принимаю до 21 сентября, вопросы и подробности в посте про набор.
Пишите в личку, @DJWOMS.
1) Сжатие вручную. В Claude Code есть команда
/compact, она собирает историю в сводку. Вызывать её имеет смысл заранее, по той же причине, что разбирали в первом посте. Числа из третьего поста тут не помогут: 85% и 170 000, это пороги автоматического сжатия в обвязке, а замеренной рекомендации, когда вызывать compact, я не встречал. Поэтому привязывайтесь к смене задачи, закончили часть работы, вызвали
/compact.2) В API Claude автоматическое сжатие включается параметром в запросе: по достижении порога (по умолчанию 150 000 входных токенов, минимум для настройки 50 000) модель сама делает сводку. Функция на сентябрь 2026 года еще в бете. Сама сводка стоит денег.
3) Память между сессиями. Отдельный инструмент памяти в API Claude работает в паре со сжатием. Сжатие держит контекст небольшим, а память хранит то, что должно пережить сводку. Файлы памяти при этом лежат на вашей стороне, модель только просит операцию, а выполняет её ваш код.
4) У LangChain то же самое в middleware. SummarizationMiddleware сводит старые сообщения в сводку и оставляет хвост. Порог задаётся параметром trigger (доля окна, токены или число сообщений), длина хвоста параметром keep.
В deep agents этот middleware уже настроен на те самые 85% из третьего поста. Если вы собираете агента на голом LangChain, порог надо задать самому, без trigger сжатие не сработает. ContextEditingMiddleware вычищает старые результаты вызовов инструментов.
5) Схемы инструментов часто забывают, а они уходят в промпт на каждом шаге, даже если инструмент ни разу не вызван. Отключение неиспользуемых инструментов уменьшает базовый размер запроса на всю сессию.
Пятый пункт стоит проверить у себя первым. Он не требует менять архитектуру и даёт эффект на каждом шаге до конца сессии.
Контекстная инженерия, это обычная работа инженера с ресурсом: что положить, что убрать, что подгрузить по требованию и чем платить за каждое решение. Промпт отвечает за одну реплику, а контекст, за всю сессию и именно он определяет, доживёт агент до конца задачи или начнёт ходить по кругу.
Источники:
1) Команды Claude Code
2) Сжатие в API Claude
3) Инструмент памяти в API Claude
4) Встроенные middleware LangChain
👇👇👇👇👇
Контекст, цикл агента и субагенты, это первый месяц второго сезона в клубе по AI агентам.
Стартуем 22 сентября. Теория первого месяца отвечает на вопрос, что это такое и почему устроено именно так: что занимает контекстное окно, откуда берётся цикл агента, чем субагент отличается от инструмента.
Дальше три месяца идёт один общий проект на всех участников, агент археолог легаси. Он отвечает на вопросы, которые возникают в любом незнакомом репозитории: обходит код, собирает граф зависимостей, а свой ответ проверяет запуском.
Встречи по вторникам в 18:00 мск, каждую неделю. Сезон с 22 сентября по 22 января, 5 000 ₽ в месяц, оплата помесячная. Беру 10-12 человек, отбор по анкете. Нужен опыт разработки на python, языковые модели на входе знать не нужно.
Анкету принимаю до 21 сентября, вопросы и подробности в посте про набор.
Пишите в личку, @DJWOMS.
👍6🔥3😁1
Во второй сезон клуба по разработке ИИ агентов, добавляю режим участия, наблюдатель.
Участник за сезон работает с тремя слоями проекта из восьми.
Наблюдатель такой же участник, только код не пишет.
У него: встречи по вторникам и записи, репозиторий проекта, уроки курса по LangChain, чат клуба. Вы видите проект целиком и смотрите, как слой переходит от участника к участнику.
Цена та же, 5 000 ₽ в месяц, оплата помесячная.
Режим меняется по ходу сезона в обе стороны, по договорённости со мной.
Сезон с 22 сентября по 22 января, встречи по вторникам в 18:00 мск.
Анкету принимаю до 21 сентября в личку, @DJWOMS.
Вопросы анкеты те же, что в посте про набор, допишите какой режим берёте.
Участник за сезон работает с тремя слоями проекта из восьми.
Наблюдатель такой же участник, только код не пишет.
У него: встречи по вторникам и записи, репозиторий проекта, уроки курса по LangChain, чат клуба. Вы видите проект целиком и смотрите, как слой переходит от участника к участнику.
Цена та же, 5 000 ₽ в месяц, оплата помесячная.
Режим меняется по ходу сезона в обе стороны, по договорённости со мной.
Сезон с 22 сентября по 22 января, встречи по вторникам в 18:00 мск.
Анкету принимаю до 21 сентября в личку, @DJWOMS.
Вопросы анкеты те же, что в посте про набор, допишите какой режим берёте.
🔥7😁2💯1
Разработчик садится за задачу и весь день переписывается с агентом. Поправил промпт, получил не то. Объяснил заново, снова не то.
Если вы общаетесь с агентом больше, чем пишете код, вы упёрлись в потолок ручного промптинга.
Промпт это разовая инструкция. Он живёт одну задачу и на каждом следующем шаге вы ведёте агента за руку сами.
Вместо этого предлагают подход Loop Engineering, проектирование агентских циклов. Вы один раз проектируете цикл. Внутри цикла агент промптит сам себя.
Адди Османи (Addy Osmani) в эссе от 7 июня 2026 года дал определение, в переводе:
В том же эссе приводится фраза Бориса Черни (Boris Cherny), руководителя Claude Code. В переводе:
Источники:
1) Addy Osmani Loop Engineering
2) Anthropic Getting started with loops
Если вы общаетесь с агентом больше, чем пишете код, вы упёрлись в потолок ручного промптинга.
Промпт это разовая инструкция. Он живёт одну задачу и на каждом следующем шаге вы ведёте агента за руку сами.
Вместо этого предлагают подход Loop Engineering, проектирование агентских циклов. Вы один раз проектируете цикл. Внутри цикла агент промптит сам себя.
Адди Османи (Addy Osmani) в эссе от 7 июня 2026 года дал определение, в переводе:
проектирование циклов, это заменить собой того человека, который промптит агента, и спроектировать систему, которая делает это вместо вас.Через три недели, 30 июня, термин закрепила своим постом Anthropic.
В том же эссе приводится фраза Бориса Черни (Boris Cherny), руководителя Claude Code. В переводе:
Я больше не пишу промпты для Claude. У меня работают циклы, они его промптят и решают, что делать. Моя работа, это писать циклы.
Источники:
1) Addy Osmani Loop Engineering
2) Anthropic Getting started with loops
🔥9😁3🎉2
В прошлом посте разобрали, почему ручной промптинг упирается в потолок. Теперь про детали из которых собирается цикл, работающий сам.
У Anthropic цикл сведён к трём вещам: собрать контекст, действовать, проверить результат. И дальше по кругу, пока задача не закрыта. Эта формула есть у них в учебном курсе по Claude Code.
1) Автоматизация. Цикл запускается по расписанию или по событию, чтобы вы не жали кнопку руками.
2) Git Worktrees. Каждый агент работает в своей копии репозитория и не мешает соседям.
3) Skills это отдельные навыки, которые агент подхватывает под конкретную задачу.
4) Плагины и коннекторы через MCP. Связь агента с инструментами за пределами чата.
5) Субагенты, их роли разведены, один делает, другой проверяет. Это паттерн maker-checker, по нему будет отдельный пост.
6) Память находится вне контекстного окна и переживает конец сессии.
Harness это обвязка и его часто принимают за синоним цикла. Цикл описывает поведение агента во времени, а обвязка это то, в чём он исполняется: инструменты, права, обработчики событий, память.
Источники:
1) Addy Osmani Loop Engineering
2) Anthropic Getting started with loops
3) Документация Claude Code, как устроена обвязка
У Anthropic цикл сведён к трём вещам: собрать контекст, действовать, проверить результат. И дальше по кругу, пока задача не закрыта. Эта формула есть у них в учебном курсе по Claude Code.
1) Автоматизация. Цикл запускается по расписанию или по событию, чтобы вы не жали кнопку руками.
2) Git Worktrees. Каждый агент работает в своей копии репозитория и не мешает соседям.
3) Skills это отдельные навыки, которые агент подхватывает под конкретную задачу.
4) Плагины и коннекторы через MCP. Связь агента с инструментами за пределами чата.
5) Субагенты, их роли разведены, один делает, другой проверяет. Это паттерн maker-checker, по нему будет отдельный пост.
6) Память находится вне контекстного окна и переживает конец сессии.
Harness это обвязка и его часто принимают за синоним цикла. Цикл описывает поведение агента во времени, а обвязка это то, в чём он исполняется: инструменты, права, обработчики событий, память.
Источники:
1) Addy Osmani Loop Engineering
2) Anthropic Getting started with loops
3) Документация Claude Code, как устроена обвязка
👍6🔥4😁2💯1
Почему агент не должен проверять сам себя
Отдельный проверяющий агент выглядит лишней тратой токенов и проверку хочется поручить тому же агенту, который писал код. На самом деле это работает плохо.
Модель, которая только что написала решение, лояльна к собственному результату. Свои допущения она уже приняла за правду и дальше их подтверждает, ошибки в них не ищет.
Так появляется паттерн maker-checker. Один агент, maker, делает работу. Второй, checker, проверяет её по заранее заданным критериям и его роль в том, чтобы придираться.
Valmeekam, Marquez и Kambhampati замерили это на задачах планирования, работа называется "Can Large Language Models Really Improve by Self-critiquing Their Own Plans?" (arXiv 2310.08118). Проверяющий внутри той же модели даёт заметную долю ложных срабатываний, то есть уверенно принимает неверный план.
Выигрывает структурированная проверка: рубрика с критериями, тесты, правила проекта, отдельный проверяющий. Checker смотрит на конкретный результат. Тесты и линтер прошли, поведение совпало с ожидаемым. Оценка "нравится или нет" сюда не относится.
Тут как всегда есть НО. Второй агент, это лишние токены и время. На мелкой и обратимой задаче отдельный чекер, это перебор. Разделять роли стоит там, где ошибка стоит дорого.
Источник:
https://arxiv.org/pdf/2310.08118
Отдельный проверяющий агент выглядит лишней тратой токенов и проверку хочется поручить тому же агенту, который писал код. На самом деле это работает плохо.
Модель, которая только что написала решение, лояльна к собственному результату. Свои допущения она уже приняла за правду и дальше их подтверждает, ошибки в них не ищет.
Так появляется паттерн maker-checker. Один агент, maker, делает работу. Второй, checker, проверяет её по заранее заданным критериям и его роль в том, чтобы придираться.
Valmeekam, Marquez и Kambhampati замерили это на задачах планирования, работа называется "Can Large Language Models Really Improve by Self-critiquing Their Own Plans?" (arXiv 2310.08118). Проверяющий внутри той же модели даёт заметную долю ложных срабатываний, то есть уверенно принимает неверный план.
Выигрывает структурированная проверка: рубрика с критериями, тесты, правила проекта, отдельный проверяющий. Checker смотрит на конкретный результат. Тесты и линтер прошли, поведение совпало с ожидаемым. Оценка "нравится или нет" сюда не относится.
Тут как всегда есть НО. Второй агент, это лишние токены и время. На мелкой и обратимой задаче отдельный чекер, это перебор. Разделять роли стоит там, где ошибка стоит дорого.
Источник:
https://arxiv.org/pdf/2310.08118
1👍7🔥2❤🔥1😁1🎉1💯1
Второй сезон в клубе по разработке ИИ агентов скоро стартует.
Анкеты принимаю до 21 сентября включительно. Старт 22 сентября.
В первый месяц:
1) Как устроена языковая модель: токены, контекстное окно, температура, почему она не считает и уверенно врёт.
2) Инструменты и агентность: что происходит при вызове инструмента и откуда берётся цикл агента.
3) Контекст как ресурс: что занимает окно, пересказ истории против обрезки и чем за это платят.
4) LangGraph: состояние, узлы и рёбра, условные переходы, циклы и возврат после остановки.
Со второго месяца общий проект, агент археолог легаси: обход репозитория, граф зависимостей, ответ с цитатами кода, проверка гипотезы запуском проекта.
Есть второй режим участия, наблюдатель.
Участник пишут часть проекта, наблюдатель код не пишет.
Остальное то же: встречи по вторникам в 18:00 мск и запись, репозиторий, уроки курса, чат клуба.
5 000 ₽ в месяц, оплата помесячная. Цена одна для обоих режимов.
Устройство сезона и анкета в посте набора.
Анкету присылайте в личку, @DJWOMS.
И напишите какой режим берёте, участник или наблюдатель.
Анкеты принимаю до 21 сентября включительно. Старт 22 сентября.
В первый месяц:
1) Как устроена языковая модель: токены, контекстное окно, температура, почему она не считает и уверенно врёт.
2) Инструменты и агентность: что происходит при вызове инструмента и откуда берётся цикл агента.
3) Контекст как ресурс: что занимает окно, пересказ истории против обрезки и чем за это платят.
4) LangGraph: состояние, узлы и рёбра, условные переходы, циклы и возврат после остановки.
Со второго месяца общий проект, агент археолог легаси: обход репозитория, граф зависимостей, ответ с цитатами кода, проверка гипотезы запуском проекта.
Есть второй режим участия, наблюдатель.
Участник пишут часть проекта, наблюдатель код не пишет.
Остальное то же: встречи по вторникам в 18:00 мск и запись, репозиторий, уроки курса, чат клуба.
5 000 ₽ в месяц, оплата помесячная. Цена одна для обоих режимов.
Устройство сезона и анкета в посте набора.
Анкету присылайте в личку, @DJWOMS.
И напишите какой режим берёте, участник или наблюдатель.
👍4🔥1🎉1