Каждый мой рабочий день начинается с одного и того же: открыть IDE, посмотреть на задачу в трекере и понять, что 80% времени уходит не на написание кода, а на рутину — придумать тест-кейсы, вспомнить синтаксис, отладить непонятную ошибку. Примерно год назад я начал активно использовать нейросети для генерации и отладки Python-кода, и за это время у меня сформировался набор промтов, которые действительно работают. Ниже — 12 сценариев, которые я применяю почти ежедневно. Они сэкономили мне не один десяток часов, и я уверен, что вам тоже пригодятся.
1. Генерация функции по ТЗ
Когда использовать: нужно быстро написать функцию с конкретным поведением, не отвлекаясь на синтаксис.
Промт:
Напиши на Python функцию {название}, которая принимает {входные данные} и возвращает {выходные данные}. Учти следующие требования: {список требований}. Добавь docstring и аннотации типов.
Пример:
Напиши на Python функцию parse_log_line, которая принимает строку лога формата "2026-09-08 14:22:11 ERROR Ошибка соединения" и возвращает словарь с ключами timestamp, level, message. Учти, что сообщение может содержать пробелы. Добавь docstring и аннотации типов.
Почему работает: чёткое ТЗ + требование docstring и аннотаций даёт сразу готовый к использованию код, который легко встроить в проект.
2. Написание юнит-тестов
Когда использовать: нужно быстро покрыть тестами существующую или новую функцию.
Промт:
Напиши юнит-тесты для функции {имя} из модуля {путь}. Используй pytest. Покрой основные сценарии: {перечислите сценарии}. Включи тесты на граничные случаи и исключения.
Пример:
Напиши юнит-тесты для функции parse_log_line из файла utils.py. Используй pytest. Покрой сценарии: корректная строка, строка с ошибкой, пустая строка, строка с дополнительными полями. Включи тесты на граничные случаи и исключения.
Почему работает: нейросеть генерирует тесты, которые часто покрывают случаи, о которых вы могли не подумать, — особенно если указать «граничные случаи».
3. Объяснение чужого кода
Когда использовать: нужно быстро разобраться в незнакомом коде, особенно в легаси.
Промт:
Объясни, что делает этот код на Python: {код}. Разбей объяснение по шагам, укажи назначение каждой функции и возможные побочные эффекты.
Пример:
Объясни, что делает этот код на Python: def f(x): return x * 2. Разбей объяснение по шагам, укажи назначение каждой функции и возможные побочные эффекты.
Почему работает: вы получаете структурированное объяснение, которое можно использовать как документацию или для ревью.
4. Поиск и исправление ошибок (отладка)
Когда использовать: код не работает, а вы не можете понять, почему.
Промт:
Вот код на Python и traceback ошибки: {код} {traceback}. Найди причину ошибки и предложи исправление. Объясни, почему возникла ошибка.
Пример:
Вот код на Python и traceback ошибки:
def divide(a, b):
return a / b
print(divide(10, 0))
Traceback (most recent call last):
File "main.py", line 3, in <module>
print(divide(10, 0))
File "main.py", line 2, in divide
return a / b
ZeroDivisionError: division by zero
Найди причину ошибки и предложи исправление. Объясни, почему возникла ошибка.
Почему работает: нейросеть анализирует traceback и код, часто находя неочевидные причины — например, гонки данных или неправильную обработку исключений.
5. Рефакторинг легаси-кода
Когда использовать: нужно улучшить структуру старого кода без изменения поведения.
Промт:
Отрефактори этот код на Python: {код}. Цель: улучшить читаемость, разделить на функции, убрать дублирование. Не меняй логику работы. Предложи итоговый код и кратко опиши изменения.
Пример:
Отрефактори этот код на Python:
def process(data):
result = []
for item in data:
if item > 10:
result.append(item * 2)
else:
result.append(item + 1)
return result
Цель: улучшить читаемость, разделить на функции, убрать дублирование. Не меняй логику работы. Предложи итоговый код и кратко опиши изменения.
Почему работает: результат обычно содержит более чистую версию с пояснениями, что упрощает код-ревью.
6. Оптимизация производительности
Когда использовать: код работает слишком медленно, нужно найти узкие места.
Промт:
Профилируй этот код на Python и предложи оптимизации для ускорения: {код}. Укажи, какие части кода вероятно являются узким местом, и предложи конкретные изменения (например, замена циклов на list comprehensions, использование генераторов, кэширование).
Пример:
Профилируй этот код на Python и предложи оптимизации для ускорения:
import time
def slow_function(n):
result = []
for i in range(n):
result.append(i * 2)
return result
Укажи, какие части кода вероятно являются узким местом, и предложи конкретные изменения (например, замена циклов на list comprehensions, использование генераторов, кэширование).
Почему работает: нейросеть часто предлагает стандартные оптимизации, такие как list comprehensions или использование set для поиска, — это ускоряет код в разы.
7. Генерация регулярных выражений
Когда использовать: нужно быстро составить regex для парсинга строк.
Промт:
Напиши регулярное выражение для поиска {что искать} в тексте. Учти {особенности}. Приведи пример использования в Python с модулем re.
Пример:
Напиши регулярное выражение для поиска email-адресов в тексте. Учти, что адрес может содержать точки, дефисы и цифры. Приведи пример использования в Python с модулем re.
Почему работает: вы получаете готовый regex и пример кода, что экономит время на подборе паттерна.
8. Создание SQL-запросов
Когда использовать: нужно быстро написать сложный SQL-запрос для выгрузки данных.
Промт:
Напиши SQL-запрос для {задача}. Таблицы: {описание схемы}. Учти {условия}. Верни только SQL.
Пример:
Напиши SQL-запрос для получения топ-10 клиентов по сумме заказов за последний месяц. Таблицы: customers(id, name), orders(id, customer_id, amount, order_date). Учти, что нужно также вывести количество заказов. Верни только SQL.
Почему работает: вы получаете готовый запрос, который можно сразу проверить в БД.
9. Написание документации и комментариев
Когда использовать: нужно быстро задокументировать код.
Промт:
Добавь docstring и комментарии к этому коду на Python: {код}. Docstring должен быть в стиле Google, объяснять параметры, возвращаемое значение и возможные исключения.
Пример:
Добавь docstring и комментарии к этому коду на Python:
def add(a, b):
return a + b
Docstring должен быть в стиле Google, объяснять параметры, возвращаемое значение и возможные исключения.
Почему работает: нейросеть генерирует подробные docstring, которые можно сразу вставить в код.
10. Объяснение ошибок и traceback
Когда использовать: вы получили непонятную ошибку и хотите понять её причину.
Промт:
Объясни, что означает эта ошибка Python: {текст ошибки}. Расскажи, какие типичные причины её вызывают, и как её исправить. Приведи пример кода, который вызывает эту ошибку, и исправленную версию.
Пример:
Объясни, что означает эта ошибка Python: IndexError: list index out of range. Расскажи, какие типичные причины её вызывают, и как её исправить. Приведи пример кода, который вызывает эту ошибку, и исправленную версию.
Почему работает: вы получаете не только объяснение, но и готовый пример для воспроизведения и исправления.
11. Генерация скриптов для автоматизации
Когда использовать: нужно быстро написать скрипт для рутинной задачи (например, переименование файлов, парсинг логов).
Промт:
Напиши Python-скрипт для {задача}. Скрипт должен принимать аргументы через argparse. Добавь обработку ошибок и вывод в консоль. Пример запуска.
Пример:
Напиши Python-скрипт для переименования всех файлов в папке по шаблону "prefix_20260101.ext". Скрипт должен принимать аргументы через argparse. Добавь обработку ошибок и вывод в консоль. Пример запуска.
Почему работает: вы получаете полноценный скрипт с CLI-интерфейсом, который можно сразу запустить.
12. Помощь в выборе библиотеки или подхода
Когда использовать: нужно решить, какую библиотеку использовать или какой алгоритм применить.
Промт:
Сравни библиотеки {библиотека1} и {библиотека2} для {задача}. Укажи их плюсы и минусы, производительность, простоту использования. Дай рекомендацию.
Пример:
Сравни библиотеки requests и httpx для выполнения HTTP-запросов в Python. Укажи их плюсы и минусы, производительность, простоту использования. Дай рекомендацию.
Почему работает: нейросеть имеет доступ к актуальной информации (на момент обучения) и может дать взвешенное сравнение, что помогает принять решение.
Что в итоге?
Эти 12 промтов — мой базовый набор, который закрывает 90% рутинных задач. Конечно, я часто их комбинирую: например, сначала генерирую функцию (промт №1), потом сразу тесты (№2), а если что-то падает — запускаю отладку (№4). Главное — быть конкретным в запросе: чем точнее вы опишете задачу, тем качественнее будет ответ. Попробуйте применить хотя бы пару из них прямо сегодня — и вы заметите, как ускорится ваша работа. А если у вас есть свои любимые промты — делитесь в комментариях, я всегда за новые идеи!
Комментарии