Рецепты для кода: разобраться в чужом проекте, починить ошибку, написать тесты, автоматизировать рутину. И граница, за которой локальной модели уже не хватает.
git init # если проекта ещё нет под контролем версий git add . git commit -m "до агента"
Дальше любую неудачную правку отменяет git reset --hard, а в Aider — ещё проще,
командой /undo.
Не меняй ничего. Прочитай структуру проекта и объясни: 1. Что делает эта программа в целом 2. С чего начинается выполнение 3. Какие основные модули и за что отвечает каждый 4. Где хранятся настройки 5. Что нужно, чтобы её запустить Отвечай коротко, по пунктам, без пересказа кода построчно.
Объяснять существующий код заметно легче, чем писать новый. Даже модель на 7–8B здесь полезна, а рисков нет вообще — она ничего не меняет. Если только начинаете, начните с этого рецепта.
При запуске python main.py --config test.yml падает с ошибкой: [сюда вставьте ВЕСЬ текст ошибки, включая трассировку] Найди причину и исправь минимальным изменением. Не трогай ничего, кроме того, что относится к этой ошибке. Сначала объясни причину, потом предложи правку.
«Падает с ошибкой» без текста — гадание. Полная трассировка содержит файл, строку и цепочку вызовов; с ней даже средняя модель часто попадает в цель с первого раза, без неё — предлагает наугад.
Напиши тесты pytest для функции parse_date в utils.py. Покрой случаи: обычная дата, дата с временем, пустая строка, None, неверный формат, дата из будущего. Тесты положи в tests/test_utils.py. Саму функцию не меняй.
Перечисление случаев — половина работы. «Напиши тесты» даёт три банальных теста; список случаев даёт то, что нужно.
Функция process_data в main.py слишком длинная. Разбей её на три: чтение данных, обработка, запись результата. Поведение должно остаться ровно тем же. Внешний интерфейс функции не меняй — её вызывают из других мест. Ничего другого не трогай.
«Отрефактори весь проект», «приведи к современному стилю», «перепиши на другой фреймворк» — на локальной модели это заканчивается частично сделанной работой и сломанным проектом. Одна функция, один файл, одна цель.
Напиши скрипт на Python: читает logs/*.log, находит строки со словом ERROR, группирует по типу ошибки, выводит таблицу «тип — количество — первое и последнее вхождение». Требования: только стандартная библиотека, работает на Python 3.10+, обрабатывает отсутствие папки и пустые файлы без падения, путь к папке — аргумент командной строки. Сначала покажи код, не запускай.
Объясни по частям, что делает эта команда, и скажи, есть ли в ней что-то необратимое. Не выполняй её. [сюда — команда, найденная в интернете]
Разбор незнакомых команд перед запуском — задача, где агент полезен и безопасен одновременно. Заодно это прямая профилактика того, о чём глава 20: вы перестаёте выполнять вслепую то, что нашли в сети.
Добавь docstring к каждой публичной функции в api.py: что делает, какие параметры, что возвращает, какие исключения кидает. Стиль Google. Код НЕ меняй — только добавляй документацию.
Напиши README.md для этого проекта: назначение, установка, запуск, основные настройки, пример использования. Бери информацию только из кода и существующих файлов. Если чего-то нет — напиши «требует уточнения», не выдумывай.
| Задача | 7–8B | 14B | 32B |
|---|---|---|---|
| Объяснить существующий код | Да | Да | Да |
| Разобрать незнакомую команду | Да | Да | Да |
| Мелкая правка в одном файле | Иногда | Да | Да |
| Разовый скрипт по описанию | Иногда | Да | Да |
| Тесты по списку случаев | Плохо | Да | Да |
| Починить ошибку по трассировке | Плохо | Обычно да | Да |
| Рефакторинг одной функции | Нет | Иногда | Да |
| Правка, затрагивающая несколько файлов | Нет | Плохо | Обычно да |
| Новая функция с нуля в большом проекте | Нет | Нет | Иногда |
Не мучайте локальную модель — это не вопрос формулировки. Возьмите бесплатный облачный вариант из главы 23 именно для таких задач, а локальную оставьте для всего остального. Совмещать никто не запрещает.
Что делать, когда локальной модели объективно не хватает — и как остаться при этом в бесплатном.
Бесплатная книга · tariel.ge · команды и версии проверяйте в официальной документации проектов
Книга бесплатна для чтения. Автор — Тариел Бежанидзе, компьютерный мастер в Батуми · tariel.ge · все бесплатные книги. Копировать текст целиком на другие сайты — только со ссылкой на источник.