Перейти к тексту

Перед чтением ​

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

Что нужно знать ​

НавыкГде он понадобится
Git: ветки, изменения, коммиты, PRЧтобы отделить изменения агента от исходного состояния и проверить их перед объединением.
Терминал: пути, рабочая директория, код завершенияЧтобы запускать runner и понимать, почему команда не выполнилась.
Тесты и отладкаЧтобы отличить ошибку в продукте от ошибки теста или окружения.
Устройство своего проектаЧтобы определить, какие файлы нужны для задачи и что изменение может затронуть.
Основы доступа к даннымЧтобы понимать последствия выдачи токена, доступа к базе или права на отправку сообщений.

Для практики нужен Python 3.10 или новее. Внешних Python-зависимостей у стенда нет. Достаточно понимать функции, словари, списки, исключения и импорт модулей; знание асинхронного программирования не требуется. Команды выполняются из корня репозитория курса в Linux, macOS или WSL.

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

Что можно освоить по ходу ​

Опыт с CI поможет в главе о проверках, с контейнерами и сетевыми ограничениями - в главе о безопасности, с эксплуатацией сервисов - в главах о логах и обновлениях. Если эти темы пока незнакомы, начните с локальной цепочки и вернитесь к ним при переносе runner в свою среду.

Обучать модели и разбираться в их внутренней архитектуре для этой работы не нужно. Мы используем агент как исполнителя с известным интерфейсом и проверяем то, что он сделал.

Небольшая проверка перед стартом ​

Возьмите проект с тестами. Сможете ли вы запустить их из терминала, намеренно сломать одно условие, найти сообщение об ошибке и вернуть рабочую версию? Сможете ли затем показать в diff, что именно менялось?

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

Хендбук по Agentic Engineering