Никита Орлов

СтатьяГайд

Топ 5 ошибок при промптах для кода: почему модель ломает репу

Топ 5 ошибок при промптах для кода: почему модель ломает репу

Какие формулировки чаще всего ломают ответ модели по коду?

Всем привет. У меня в репе опять веселье: вчера агент погнал какую-то дичь и затёр рабочий тест, потому что я поленился нормально описать задачу. И сразу в чате спросили про топ 5 ошибок при промптах для кода. Короче, давайте без воды и копирайтерского бреда разберем, от каких фраз модели начинают генерировать нерабочий мусор.

Когда мы пишем задачу ассистенту на бегу, в стиле «почини там всё, чтобы работало», мы получаем ровно то же самое на выходе. Модель не умещает в голове контекст всего проекта, если мы ей его не скормили. Ниже собрал пять главных грабель, на которые наступал сам и вижу у других в коммитах.

Какие формулировки чаще всего ломают ответ модели по коду?
Code editor screen terminal

Первая ошибка: «сделай красиво и по стандарту»

Первый пункт в нашем топе 5 ошибок при промптах для кода — это абстрактные требования вроде «перепиши красиво», «оптимизируй» или «сделай по гайду». Для компилятора это пустой звук, а для нейросети — карт-бланш на рефакторинг всего файла так, что потом ни один линтер не пропустит.

У меня так агент в прошлый четверг снёс кастомные хендлеры ошибок просто потому, что решил выровнять стиль под свои синтетические примеры. Так что вместо «сделай красиво» пишем конкретно: «вынеси логику авторизации в отдельный middleware и уменьши цикломатическую сложность функции до пяти».

  1. Кому да: если вы пишете простой скрипт на коленке и вам абсолютно всё равно на структуру.
  2. Кому нет: для реальных коммерческих репозиториев со строгим CI/CD и код-стайлом команды.

Вторая ошибка: «исправь вот эту ошибку» без логов и стека

Вторая частая боль из серии топ 5 ошибок при промптах для кода — кидать модельке только кусок функции и говорить: «тут падает, почини». Без полного стектрейса, версии рантайма и окружения LLM начинает гадать на кофейной гуще.

Вчера кидаю ассистенту ошибку TypeError в JS, а файл трехтысячный. Он начинает править строки, которых вообще нет в текущем бандле. Приходится тратить токен на ручной копипаст логов. Дайте полный лог падения, номер строки и кусок конфига — и модель выдаст фикс с первого раза.

  1. Кому да: если это синтаксическая опечатка в изолированной функции из пяти строк.
  2. Кому нет: для асинхронных багов, гонок потоков и падений в production-окружении.
Вторая ошибка: «исправь вот эту ошибку» без логов и стека
Terminal error stack trace

Третья ошибка: «добавь фичу» без указания текущего стека

Третий пункт топ 5 ошибок при промптах для кода связан с полным игнорированием контекста технологий. Пишем: «напиши авторизацию через JWT». И модель выкатывает код на Express, когда у тебя в проекте FastAPI и Python, либо вообще старый монолит на PHP.

Я уже привык держать в системном промпте стек, но иногда забываю уточнить версию библиотек. В итоге получаю код на устаревших методах, которые в свежем релизе фреймворка уже deprecated. Всегда явно прописывайте версии: «на питоне 3.11 с fastapi и pydantic v2».

  1. Кому да: если вы изучаете новый язык и просите базовый синтаксический пример «в вакууме».
  2. Кому нет: для интеграции кода в существующую кодовую базу с жесткими зависимостями.

Четвертая ошибка: «перепиши всё с нуля» вместо правок

Четвертая ошибка из нашего топ 5 ошибок при промптах для кода — давать добро на полную перепись модуля вместо точечных инъекций. Когда говоришь агенту «перепиши этот компонент, мне не нравится», он теряет всю бизнес-логику, которую вы собирали неделями: обработку крайних кейсов, таймауты и костыли для легаси.

У меня был случай, когда агент переписал рабочий модуль оплаты, забыв про один региональный налог, который мы правили месяц назад. Теперь золотое правило: проси diff или точечную замену функции, а не глобальный перевыпуск файла.

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

Пятая ошибка: отсутствие ограничений на формат ответа

И замыкает топ 5 ошибок при промптах для кода привычка просить всё и сразу без ограничений по выводу. Модель начинает растекаться мыслью по древу: сначала объясняет базовые истины про циклы for, потом наливает воды про паттерны проектирования, и только в самом конце кидает кусок кода с опечаткой.

Мне не нужны лекции по программированию, мне нужен готовый блок кода для вставки в буфер. Если не попросить строго «только код в блоке markdown без лишних описаний», вы получите простыню текста, которую неудобно парсить глазами или скриптами.

  1. Кому да: если вы студент и вам нужны подробные объяснения каждого метода для лабы.
  2. Кому нет: когда вы работаете в IDE и важна скорость получения готового рабочего патча.

Итог: как перестать ломать код промптами

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

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

0
1

Комментарии (0)

Войдите, чтобы комментировать.

Без Plus — 5 комментариев в месяц. Мало слов — чистый воздух. Войти

Комментариев пока нет — будьте первым.

Ещё в теме «Код и разработка»

Похожие материалы и соседние разборы

Никита Орлов

Как не упереться в лимит запросов в Claude Code и что делать Короче, если вы уже крутите Claude Code в терминале, то наверняка видели эту злую ошибку про rate limit. Сидишь такой, дебажишь сложный баг, агент бодро пишет код, рефакторит тесты — и тут бац: «Rate limit reached». Всё, приплыли, кукушка говорит «ждите час» или сколько там до сброса. У меня такое происходит регулярно, если дать агенту волю. Раньше я просто пускал его в проект и говорил: «Почини всё». Это главная ошибка. Claude начинает читать вообще всю репу, тащит в контекст гигабайты логов и node_modules, если они не заигнорены, и сжирает месячный лимит токенов за полчаса активной работы. Давайте разберем, как я теперь экономлю запросы и выживаю без нервных срывов. Почему улетает claude code rate limit и как с этим жить Основная проблема — контекст. Агенты устроены так, что с

Как не упереться в лимит запросов в Claude Code и что делатьПоказать полностью
0
1
Никита Орлов

Какие фреймворки для разработки AI-агентов использовать в 2024 году Привет! У меня тут на днях агент в очередной раз улетел в бесконечный цикл, сжег кучу токенов на OpenAI и затер локальную базу тестов. Классика для ночной смены. Если вы тоже устали от красивых демок на Streamlit, которые сыпятся на первом же нестандартном ответе модели, давайте смотреть на фреймворки для AI агентов с точки зрения инженера. Мне важен не столько красивый синтаксис графов, сколько стабильность под нагрузкой, нормальный async, человеческий логгинг и понимание, куда делся стейт, когда упал воркер. Короче, собрал пятерку инструментов, которые я сам крутил в продакшене, и готов выдать честное сравнение. LangGraph: когда нужен жесткий контроль стейта LangGraph от создателей LangChain — это первое, куда я смотрю, когда логика агента перестает помещаться в один

Фреймворки для AI агентов в продакшене: топ 5 инструментовПоказать полностью
0
1
Никита Орлов

Почему Claude Code падает с ошибкой rate limit в терминале У меня вчера на середине рефакторинга отвалилась утилита. Сижу, правлю большой модуль, жду фидбек от агента, а в терминале прилетает классика: anthropic api rate limit. Процесс обрывается, контекст теряется, настроение так себе. Сама по себе тулза удобная — гоняешь её прямо из репы, она сама шарится по файлам, запускает тесты. Но у неё есть особенность: если репозиторий огромный или в промпт улетает слишком много лишнего кода, лимиты токенов вылетают мгновенно. Anthropic бьет по рукам за превышение RPM и RPD (requests per minute / day), особенно если тариф базовый. Как понять, что это именно claude code rate limit error Ошибки бывают разные. Иногда тулза просто зависает на этапе генерации дифа, иногда выкидывает JSON с кодом 429. Если вы видите в логах упоминание «Too Many Requests»

Claude Code падает с ошибкой rate limit: как чинить в репеПоказать полностью
0
1
Никита Орлов

Зачем вообще запускать локальные модели для кода У меня в репе лежат приватные ключи, проприетарные алгоритмы и куча legacy, которую стыдно показывать даже коллегам, не то что облачным провайдерам. Вчера очередной агент попытался слить кусок контекста наружу, и я психанул. Решил, что хватит кормить чужие датасеты своими энтерпрайз-костылями. Поставил Ollama, выделил под это дело локальную тачку с нормальной видюхой и начал тестировать лучшие модели для кода локально. Главный критерий простой: чтобы она не тупила на автодополнении в Cursor или VS Code и выдавала рабочий синтаксис с первой попытки, а не генерировала синтаксический мусор. Ниже — мой личный топ-5 локальных нейросетей для программирования, которые я потрогал руками, покрутил в разных сценариях и отобрал для повседневной разработки. 1. DeepSeek-Coder-V2: тяжёлая артиллерия для

Какие локальные LLM для написания кода запустить: топ-5 моделейПоказать полностью
0
0
Никита Орлов

Зачем перебирать библиотеки для логирования python Привет! У меня в репе опять разрослось приложение, и стандартный print или basicConfig уже не вывозят. Когда на проде случается деплой с багом, читать консоль через docker logs на виртуалке — это путь к нервному срыву. Я задолбался искать, куда складывать логи python приложения, чтобы они не терялись при рестарте контейнера. Поэтому перетряхнул то, чем сам пользуюсь или тестировал в боевых условиях. Никакого энтерпрайза с ценником в крыло самолета, только то, что можно поднять за вечер. 1. Loguru: кому да, кому нет Начну с базы. Loguru — это любовь с первой строчки в мануале. Заменяет стандартный logging одной строчкой from loguru import logger и избавляет от боли с настройкой форматтеров и хендлеров. У меня она стоит на всех пет-проектах и в паре микросервисов. Красивый вывод в консоль из

Инструменты для мониторинга логов python топ 5: мой личный выборПоказать полностью
0
1
Никита Орлов

Как я выбирал фреймворки для локальных моделей python Привет! У меня в репе скопилось уже столько конфигов под локальные модели, что пора писать автотест на проверку совместимости библиотек. Вчера агент опять затёр рабочий тест для RAG, и я решил сесть и нормально зафиксировать, что вообще стоит ставить, если надо запустить LLM локально в Питоне. Запрос на фреймворки для локальных моделей python сейчас дикий, но по факту половина тулзовин тащит за собой такой оверхед из зависимостей, что проще написать обертку на чистом requests. Давайте разберем пять инструментов, которые я реально крутил на своем железе, без маркетинговой шелухи. 1. Ollama и Python API: минимум боли Начну с того, на чем сейчас крутится 90 процентов моих локальных задач. Сама Оллама написана на Go, но официальный Python-клиент работает как часы. Никаких танцев с компиляцией

ТОП-5 фреймворков на Python для локальных LLM: личный опыт из репыПоказать полностью
0
1