10 промтов для GPT-4: от написания кода до архитектурных решений

Введение

Каждый день я открываю ChatGPT и вбиваю десятки запросов. Но 80% времени уходит на правки, потому что промт был слишком расплывчатым. За несколько лет я нащупал шаблоны, которые работают безотказно. Ниже — 10 проверенных промтов для программирования, отладки и рефакторинга. Они разделены на три группы: код с нуля, отладка и архитектура.

Важно: Промты под GPT-4 (или o1, o3-mini). Для старых моделей результаты могут отличаться.

1. Написание функции с нуля

Промт:

Напиши на Python функцию `merge_sorted_lists(a, b)`, которая сливает два отсортированных списка в один отсортированный. Используй только стандартную библиотеку. Добавь докстринг и type hints. Сложность O(n+m).

Пример использования:

def merge_sorted_lists(a: list[int], b: list[int]) -> list[int]:
    """Сливает два отсортированных списка в один отсортированный."""
    i = j = 0
    result = []
    while i < len(a) and j < len(b):
        if a[i] < b[j]:
            result.append(a[i])
            i += 1
        else:
            result.append(b[j])
            j += 1
    result.extend(a[i:])
    result.extend(b[j:])
    return result

Вывод: Такой промт даёт сразу готовый код с комментариями и без лишней воды. Достаточно скопировать и вставить.

2. Отладка с контекстом ошибки

Промт:

У меня падает код с ошибкой: `KeyError: 'user_id'`. Стек: File "/app/views.py", line 45, in get_user. Приложи полный код этой функции (см. ниже). Помоги найти причину и предложи исправление.
[вставка кода функции]

Пример использования:
Причина часто — отсутствие ключа в словаре после изменений в API. GPT-4 указывает на строку, где словарь формируется, и предлагает добавить .get('user_id', None) или проверку.

Вывод: Контекст ошибки и код — лучший способ получить точное решение, а не догадки.

3. Рефакторинг «улучши код»

Промт:

Дан код на JavaScript. Он работает, но есть проблемы с читаемостью и дублированием. Проведи рефакторинг: выдели общие части, добавь обработку граничных случаев, переименуй переменные. Покажи diff.

[вставка кода]

Пример использования:
После рефакторинга функция сокращается в 2 раза, исчезают вложенные if, появляется ранний возврат (early return).

Вывод: Подробный запрос с «покажи diff» заставляет GPT объяснить изменения, а не просто выдать новый код.

4. Генерация регекса по описанию

Промт:

Составь регулярное выражение для поиска email-адресов в тексте. Учти, что домен может быть только .com, .ru, .org. Регекс должен быть совместим с Python (модуль re). Плюс напиши тестовые случаи.

Пример результата:
`r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.(?:com

|ru|org)'` с пояснением каждой части.

Вывод: GPT отлично генерирует регексы, если чётко указать язык и ограничения.

5. Написание unit-тестов

Промт:

Для функции `calculate_discount(price, coupon_code)` напиши набор pytest-тестов. Покрой: нормальные случаи, граничные значения (0, отрицательная цена), None, пустой код. Используй параметризацию.

Пример:

@pytest.mark.parametrize("price, code, expected", [
    (100, "SAVE10", 90),
    (100, "", 100),
    (0, "SAVE10", 0),
])
def test_calculate_discount(price, code, expected):
    assert calculate_discount(price, code) == expected

Вывод: Чёткие требования к параметризации дают готовый тест-сьют.

6. Декомпозиция задачи

Промт:

Мне нужно реализовать REST API для блога (Flask). Разбей задачу на подзадачи по принципу MVC. Для каждой подзадачи напиши, какой класс/функция нужен, и пример сигнатуры.

Пример вывода:
- Модель Post, контроллер PostController, схемы валидации.
- Краткие сигнатуры: class Post(db.Model): ..., def list_posts(page, per_page) -> list[Post].

Вывод: Декомпозиция — сильная сторона GPT. Он не пишет полный код, но даёт план, по которому легко работать.

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

Промт:

Объясни, что делает этот код на C#, построчно. Акцент на алгоритмической сложности и возможных узких местах.
[вставка кода]

Пример результата:
GPT разбирает циклы, указывает на O(n²) и предлагает оптимизацию до O(n log n) с помощью сортировки.

Вывод: Хорош для кода, который нужно понять перед рефакторингом.

8. Оптимизация SQL запроса

Промт:

Дан SQL-запрос (PostgreSQL), который выполняется 5 секунд. Предложи варианты оптимизации: добавление индексов, переписывание JOIN, использование CTE. Объясни, как проверить план выполнения.
[вставка запроса]

Пример:
GPT предлагает создать составной индекс на (user_id, created_at) и переписать подзапрос в JOIN. Ссылается на официальную документацию PostgreSQL по EXPLAIN ANALYZE.

Вывод: Конкретные рекомендации с планом выполнения.

9. Проектирование БД по описанию

Промт:

Спроектируй схему БД для интернет-магазина. Нужны сущности: пользователь, товар, корзина, заказ. Используй нормализацию до 3НФ. Выведи ER-диаграмму в текстовом виде (используя псевдографику) и DDL для PostgreSQL.

Пример:

users (id PK, email, password_hash, created_at)
products (id PK, name, price, stock)
carts (id PK, user_id FK, ...)
...

Вывод: Промт с требованием нормализации даёт готовую модель без избыточности.

10. Выбор архитектурного решения

Промт:

Сравни два подхода для микросервисной системы: синхронная связь через REST vs асинхронная через Kafka. Критерии: сложность разработки, масштабирование, согласованность данных. Обоснуй, что лучше для сервиса заказов.

Пример ответа:
GPT перечисляет плюсы и минусы, ссылается на паттерны Saga и Event Sourcing. Для сервиса заказов рекомендует асинхронную связь из-за требования eventual consistency.

Вывод: Хорош для принятия технических решений в начале проекта.

Заключение

Эти 10 промтов покрывают 90% моих ежедневных задач. Главный секрет — конкретика и контекст. Чем больше деталей вы даёте (язык, среда, ограничения), тем точнее ответ. Попробуйте адаптировать любой из них под свою задачу — и вы заметите, как вырастет скорость работы. А если хотите углубиться, рекомендую почитать официальную документацию OpenAI по промт-инжинирингу.

← Все статьи

Комментарии

Читайте также

Vibe Coding не убьёт разработчиков: он убьёт мидлов

27 июля 2026

Акции китайского производителя чипов взлетели на 470%: как Vibe Coding меняет полупроводниковую индустрию

27 июля 2026

Интеграция газовых сенсоров MQ-* с AI-агентом ASI Biont: мониторинг утечек и автоматизация без программирования

27 июля 2026

Интеграция OPC-UA с AI-агентом ASI Biont: как подключить SCADA и DCS к AI без кода и сократить простои на 40% в 2026 году

27 июля 2026

От медленных запросов к SQL, готовому к продакшену: Как курс SQL Mastery изменил мой процесс работы с данными

27 июля 2026

Как освоить валютное право по 173-ФЗ и избежать штрафов: пошаговый план с AI-обучением на Asibiont

27 июля 2026

M&A Strategy — слияния и поглощения: стратегия и реализация: как AI-обучение помогает освоить сделки века

27 июля 2026

Разбор Vibe Code: почему ваше приложение проходит демо, но проваливает проверки безопасности

27 июля 2026

Cambridge IGCSE Global Perspectives (0457): Как подготовиться к экзамену и развить навыки XXI века с помощью AI

27 июля 2026