0
рейтинг

1
1
Есть ответы

Промты для кода и разработки

Промты для кода и разработки

Код — та область, где разница между хорошим и плохим промтом измеряется объективно: код либо работает, либо нет. Главная причина неудач одна — модели не дали контекст.

Генерация функции

Язык: [язык], версия [версия].
Напиши функцию, которая [что делает].
Вход: [типы и структура данных].
Выход: [что возвращает].
Обработай случаи: пустой вход, дубликаты, [ваши краевые случаи].
Стиль — как в примере ниже.
Добавь юнит-тесты на краевые случаи.

[фрагмент вашего кода для стиля]

Поиск ошибки

Вот код и симптом ошибки.
Код: [код]
Ожидаемое поведение: [что должно быть]
Фактическое: [что происходит]
Окружение: [версии, платформа]
Сначала перечисли 3 наиболее вероятные причины по убыванию вероятности,
для каждой укажи, как её быстро проверить. Готовый фикс дай только после этого.

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

Объяснение чужого кода

Объясни, что делает этот код.
Уровень читателя: [junior / senior, знаком ли с фреймворком].
Формат: сначала одно предложение о назначении,
затем разбор по блокам, затем список неочевидных мест и потенциальных проблем.

[код]

Ревью вместо генерации

Недооценённый сценарий: не «напиши за меня», а «найди, что я упустил».

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

[код]

Что обязательно включать

ЭлементЧто будет без него
Версия языка и библиотекКод с устаревшим или слишком новым синтаксисом
Структура данныхМодель придумает свою и не угадает
Пример существующего кодаЧужой стиль, который придётся переписывать
Краевые случаиРаботает на счастливом пути, падает на реальных данных

Правило проверки

Не принимайте код, который не понимаете. Строка, смысл которой неясен, — это будущий инцидент в проде. Если разбираться некогда, попросите модель объяснить именно её.

1 ответ

обсуждение открыто
0
22 августа 2026 17:41
Короткий ответ: ваш каркас правильный — контекст решает всё. Но в списке обязательных элементов не хватает четырёх пунктов, которые чаще всего отделяют рабочий результат от правдоподобного.

## Чего не хватает

1. Запрет на выдуманные API. Модели уверенно называют несуществующие методы библиотек. Ограничивайте явно:


Используй только Python 3.11 и стандартную библиотеку.
Если сомневаешься, существует ли функция или метод, — скажи об этом,
не придумывай.


2. Точный текст ошибки, а не пересказ. При отладке вставляйте полный stack trace как есть. Фраза «падает где-то при парсинге» заставляет модель гадать.

3. Формат вывода. Иначе получите простыню с рассуждениями, которую придётся чистить:


Верни только код одним блоком, без пояснений.


4. Просьба перечислить допущения — самый дешёвый способ найти дыры в собственном промте:


Перед кодом перечисли все предположения, которые ты сделал
о входных данных и окружении.


Если модель предположила неверно — вы увидите это до запуска, а не после падения тестов.

## Что добавить к вашим шаблонам

- Два шага для крупных задач: «сначала план и структура, дождись моего подтверждения, потом код». Править план дешевле, чем переписывать готовый модуль.
- Минимальный воспроизводимый пример вместо целого файла: меньше шума — точнее диагноз.
- Ограничения: «без внешних зависимостей», «сложность не хуже O(n log n)» — иначе получите решение через неподходящую тяжёлую библиотеку.
- Правки диффами: «дай только изменённые фрагменты», а не файл целиком — снижает риск, что модель молча сломает работавший участок.

## Про проверку

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

Ответ сгенерирован ИИ автоматически, потому что вопрос какое-то время оставался без ответа. Проверьте важные детали и поправьте, если что-то не так — живой ответ всегда ценнее.

Добавление комментария

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