AI Harness. Построение агентных систем: как надо, а не как все

62 участника

О чём курс

На курсе вы с нуля разработаете автономного coding-агента на Java и Spring AI: систему из 60 классов и 8 инструментов, способную исследовать репозиторий, редактировать файлы, запускать команды и доводить задачу до успешного прохождения тестов.

О чём курс

Материал разбирает инженерную изнанку ИИ-ассистентов. Вы разберётесь, почему языковые модели искажают информацию о непрочитанных файлах, теряют контекст посреди диалога и какие механизмы предотвращают повреждение проекта при выполнении консольных команд.

Для кого

Курс ориентирован на опытных разработчиков, которые планируют создавать собственные ИИ-инструменты под задачи разработки, в том числе для работы в закрытом контуре компании и с конфиденциальным кодом без обращения к внешним API.

Как устроено обучение

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

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

Среда и стек

Модель разворачивается локально в Docker без использования сторонних платных ключей и отправки исходного кода во внешние сервисы. Использование небольшой локальной модели позволяет обнаружить архитектурные дефекты взаимодействия с контекстом и инструментами, которые крупные коммерческие модели обычно сглаживают. Для реализации используется фреймворк Spring AI 2.0.

Программа обучения

  1. Нейропроцессор Подключим локальную модель, разберем базовые механики Spring AI 2.0 и напишем первые Agent и Conversation. Пока получится всего лишь чат-бот, это еще не агент.

  2. Диагностический контур: телеметрия и разделение слоев Научим систему рассказывать, что с ней происходит. Разделим логику агента и интерфейс, введем доменные события и заложим архитектуру, которая не развалится по мере роста проекта.

  3. Оптические сенсоры: инструменты и агентский цикл Агент уверенно рассказывает о файле, которого никогда не читал. Исправляем это. Разбираемся, как работают tools, почему описание инструмента — это тоже часть промпта. Добавляем чтение файлов и собираем настоящий agent loop. Именно здесь чат-бот становится агентом.

  4. Шасси: навигация по репозиторию Добавим поиск по имени и содержимому, научим агента ориентироваться в структуре проекта и перестанем позволять ему выдумывать несуществующие пути.

  5. Манипуляторы: правка файлов Теперь агент умеет «смотреть» на репозиторий. Пора научить его действовать: покажем ему, как создавать и изменять файлы, разберем точечное редактирование и введем принцип «не редактируй то, чего не читал».

  6. База данных Skynet: контекст и характер Агент уже умеет работать с файлами, но все еще почти ничего не знает о самом проекте. Научим его учитывать git-статус, структуру репозитория, память и другие части контекста. Системный промпт перестанет быть одной огромной строкой.

  7. Вооружение: выполнение команд и human-in-the-loop Дадим агенту возможность запускать команды, а значит потенциально делать с вашей машиной почти все, что угодно. Поэтому сразу строим систему разрешений: режимы, правила, классификацию опасных действий и точки, где агент обязан остановиться и спросить человека.

  8. Тактический процессор: планирование Добавим агенту список задач и механизм контроля собственного плана. Разберемся, почему одного инструмента планирования недостаточно и как напоминать агенту о том, что он начал и бросил на полпути.

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

  10. Самоконтроль: работа до результата Научим агента отличать «я сделал» от «я сделал и проверил, что все работает». Добавим стоп-условия, обработку ошибок, повторные попытки и защиту от зацикливания.

  11. Звено подкрепления: субагенты Что делать, если исследование большого проекта съедает весь контекст? Запустить другого агента. Соберем субагента с собственным контекстом, который изучает задачу отдельно и возвращает главному агенту вывод.

  12. Канал связи: REPL, слеш-команды, стриминг До этого момента агент жил на стенде разработчика. Теперь дадим ему интерфейс. Сделаем живой диалог в терминале, стриминг ответа, прерывание работы, учет токенов и набор слеш-команд.

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

Складчина создана 23 октября 2026 г.

Теги курса

Инструменты

Другие материалы автора 4

ЕБ Евгений Борисов Все материалы
188 ₽ 9 500 ₽