Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124

Открываешь пять вкладок с обзорами — и через 20 минут всё ещё не знаешь, какой инструмент запустить прямо сейчас. Вот алгоритм, который закрывает этот вопрос за три шага:
Это inline-автодополнение прямо в VS Code, JetBrains или Neovim — ни одного лишнего переключения окон. Бэкенд-разработчик на Python, пишущий CRUD-эндпоинты с FastAPI, получает завершённые методы быстрее, чем успевает напечатать сигнатуру функции. Copilot читает весь открытый проект через workspace-индексирование, а не только активный файл — это критично для монорепозиториев. Тариф Individual — $10/мес, Business — $19/мес на пользователя, Enterprise — $39/мес (включает политики доступа и аудит-лог). Слабое место — длинные многоходовые рефакторинги: модель теряет нить на третьем-четвёртом шаге.
DevOps-задачи здесь посредственны. Dockerfile он напишет. Но сгенерировать связанный Terraform-модуль с remote state и правильными IAM-политиками за один проход — нет.
Форк VS Code с нативно встроенным чатом, который видит всё дерево файлов проекта одновременно. Фронтенд-разработчик на React получает рефакторинг компонента с учётом импортов из соседних файлов — Copilot на такое не способен без ручного указания контекста. Cursor использует модели Claude 3.5 Sonnet и GPT-4o под капотом, переключаешь в настройках. Тариф Hobby — бесплатно (500 запросов/мес), Pro — $20/мес (неограниченные быстрые запросы), Business — $40/мес. Скорость генерации на Pro-тарифе — 2–4 секунды на средний блок кода.
Cursor выигрывает у Copilot именно на фронтенде с компонентными библиотеками. Команда @codebase в чате буквально просит модель найти все места использования конкретного хука — и она находит.
// Пример промпта в Cursor Chat
@codebase найди все компоненты, использующие useAuthContext,
и замени импорт на useSession из next-auth/react.
Покажи diff для каждого файла отдельно.
Anthropic Claude — не IDE-плагин, а чат-модель с контекстным окном 200k токенов. Скидываешь туда весь легаси-сервис на 3000 строк и просишь предложить декомпозицию на микросервисы. Работает. ChatGPT с аналогичным промптом начинает «плавать» после 80–100k токенов. Цены через API (2026): Claude 3.5 Sonnet — $3 за 1M input-токенов, $15 за 1M output-токенов; Claude 3.7 — $4/$16 соответственно. Подписка Claude Pro — $20/мес с приоритетным доступом и Projects-функцией для хранения контекста между сессиями.
Для бэкенда на Go или Rust — первый выбор. Точность типов, понимание borrow checker, генерация тестов с table-driven подходом. Без IDE-интеграции «из коробки», но плагин для VS Code через API настраивается за 10 минут.
// Пример системного промпта для Claude (бэкенд-задача)
System: You are a senior Go engineer. Respond only with code and inline comments.
User: Реализуй middleware для rate limiting на основе sliding window algorithm,
используя Redis. Лимит: 100 req/min на IP. Добавь юнит-тест с моком Redis-клиента.
GPT-4o — самый широкий охват языков и инструментов из всех четырёх. DevOps-инженер получает рабочий GitHub Actions workflow с кешированием зависимостей, матричными тестами и деплоем в ECS за один запрос. Claude тут немного уступает в понимании специфики AWS-сервисов. Цены: ChatGPT Plus — $20/мес, Team — $30/мес/пользователь, API GPT-4o — $2.50 за 1M input-токенов, $10 за 1M output-токенов; o3 — $10/$40 соответственно.
Скорость: GPT-4o — быстрее Claude 3.7 примерно на 30% при аналогичном объёме ответа. o3 — медленнее обоих, зато решает алгоритмические задачи уровня LeetCode Hard с объяснением каждого шага рассуждений.
# Пример: ChatGPT генерирует GitHub Actions pipeline
name: Deploy to ECS
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-central-1
- name: Build and push Docker image
run: |
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG .
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
Не читай длинные сравнения. Смотри таблицу:
Минимальный стек для команды из трёх человек: Cursor Pro ($20 × 3 = $60/мес) + Claude Pro ($20/мес для тимлида). Итого $80/мес закрывают 90% задач бэкенда и фронтенда без API-биллинга.
Cursor — это форк VS Code. Не плагин, не расширение. Отдельный бинарник, который забирает всё твоё окружение VS Code — расширения, темы, keybindings — через одну кнопку «Import VS Code Settings» при первом запуске. Скачай с cursor.sh, запусти установщик, нажми Import. Всё.
Внутри Cursor работает на трёх моделях на выбор: GPT-4o, Claude 3.5 Sonnet и cursor-small (собственная дистилляция для быстрых автодополнений). Переключение — Ctrl+Shift+P → «Cursor: Select Model». По умолчанию стоит claude-3-5-sonnet. Не меняй без причины: на практике Sonnet даёт меньше синтаксического мусора в коде, чем GPT-4o при одинаковом промпте.
Тарификация Cursor в 2026 году: Free-план — 2000 автодополнений + 50 «медленных» запросов к GPT-4o в месяц. Pro — $20/мес, безлимитные автодополнения, 500 быстрых запросов к premium-моделям. Business — $40/мес на пользователя, добавляется zero data retention и SSO. Если ты один, Pro достаточно.
Cursor читает файл .cursorrules в корне проекта как системный промпт для всей кодовой базы. Без него модель не знает ни стек, ни стиль, ни ограничения. Промпт без параметров — это как руль без рулевой рейки: крутится легко, но машина едет прямо.
Минимальный рабочий конфиг для Python/FastAPI-проекта:
# .cursorrules
You are a senior Python engineer working on a FastAPI 0.111+ project.
Stack: Python 3.12, FastAPI, SQLAlchemy 2.0 (async), Pydantic v2, PostgreSQL 16.
Rules:
- Always use async/await for DB calls. Never use sync sessions.
- Pydantic models: use model_config = ConfigDict(from_attributes=True), not class Config.
- Return types: annotate every function. No implicit Any.
- Tests: pytest + pytest-asyncio. Fixtures in conftest.py only.
- Never generate print() for debugging. Use loguru logger.
- If a function exceeds 40 lines, split it without being asked.
Этот файл коммитится в репозиторий. Вся команда получает одинаковый контекст модели. Молча.
Copilot в 2026 году стоит $10/мес (Individual) или $19/мес (Business с политиками организации). Есть бесплатный tier: 2000 автодополнений + 50 чат-запросов в месяц — достаточно, чтобы понять, нужен ли он тебе вообще.
Шаг 1: Extensions → поиск «GitHub Copilot» → Install (устанавливает два расширения: Copilot и Copilot Chat). Шаг 2: авторизация через GitHub OAuth во всплывающем окне. Шаг 3 — критический и большинство пропускает.
Открой settings.json (Ctrl+Shift+P → «Open User Settings JSON») и добавь:
{
"github.copilot.editor.enableAutoCompletions": true,
"github.copilot.advanced": {
"temperature": 0.1,
"top_p": 0.95,
"indentationMode": {
"python": "spaces",
"typescript": "spaces"
}
},
"github.copilot.chat.localeOverride": "en",
"editor.inlineSuggest.enabled": true,
"editor.inlineSuggest.suppressSuggestions": false
}
temperature: 0.1 — это не опечатка. Дефолтное значение у Copilot близко к 0.4–0.6, что даёт «творческие» варианты кода. Для генерации продакшн-логики это катастрофа. Снижай до 0.1, получай детерминированный, предсказуемый вывод.
Задача: в FastAPI-эндпоинте /api/orders ORM-запрос генерировал N+1 проблему — отдельный SELECT на каждый связанный User при выборке 500 заказов. Профайлер показал 503 запроса на один HTTP-запрос. Нужно свести к 2 запросам (основной + JOIN).
В Cursor открываем файл с проблемным кодом, выделяем функцию целиком, нажимаем Ctrl+K (инлайн-редактирование) и вводим промпт:
Refactor this SQLAlchemy 2.0 async function to eliminate N+1 query.
Use selectinload() or joinedload() where appropriate.
Current relationships: Order → User (many-to-one), Order → OrderItem (one-to-many).
Preserve existing return type: list[OrderSchema].
Add a comment explaining which loader strategy was chosen and why.
Do not change function signature.
Cursor вернул версию с selectinload(Order.user).selectinload(Order.items), добавил комментарий с объяснением выбора selectinload вместо joinedload (причина: избежать дублирования строк при one-to-many), сохранил сигнатуру. Количество запросов упало с 503 до 3. Три запроса, не два — потому что items тоже грузятся отдельным SELECT, что корректно.
Ручная правка заняла бы 15–20 минут с чтением документации SQLAlchemy. Cursor — 40 секунд.
Большинство разработчиков пишут промпты как поисковые запросы. «Напиши функцию сортировки». Результат предсказуем. Мусор.
Рабочая формула промпта для генерации кода: контекст стека + конкретное поведение + ограничения + формат вывода. Без одного из четырёх компонентов модель начинает угадывать и угадывает плохо.
«The quality of the output is directly proportional to the quality of the specification you give the model. Garbage in, garbage out — this hasn’t changed since the 1960s.» — Sam Altman, интервью Lex Fridman, 2024
Для Copilot Chat (Ctrl+Shift+I) работает схема /slash-команд: /explain — разбор выделенного кода, /fix — исправление ошибки с объяснением причины, /tests — генерация тестов для выделенной функции с покрытием edge cases. Slash-команды дают модели жёсткий фрейм задачи. Без фрейма — свободная интерпретация. Свободная интерпретация в коде — баги.
Один практический приём: перед сессией генерации кода открой в Copilot Chat файл с существующим кодом проекта и напиши @workspace /explain the coding patterns used in this file. Модель сама извлечёт паттерны. Следующие генерации в этой сессии будут стилистически консистентны с твоей кодовой базой — без дополнительных инструкций.
Бюджет режет быстрее, чем баг в продакшене. Четыре инструмента — GitHub Copilot, Cursor Pro, Claude API и GPT-4o API — съедают от $10 до $400+ в месяц в зависимости от сценария использования. Разница между «дёшево» и «эффективно» здесь измеряется не в долларах, а в токенах на строку кода и контекстном окне на один запрос.
| Инструмент | Подписка / API (2026) | Цена за 1M токенов (input/output) | Контекстное окно | Качество кода (1–10) | Скорость ответа | Где выигрывает |
|---|---|---|---|---|---|---|
| GitHub Copilot Individual | $10/мес или $100/год | Flat-rate. API недоступен публично | ~8K токенов (IDE-контекст) | 7/10 | ~200–400 мс (inline) | Автодополнение в реальном времени |
| GitHub Copilot Business | $19/мес на пользователя | Flat-rate. Без публичного API | ~8K токенов | 7.5/10 | ~200–400 мс | Командная политика + логи |
| Cursor Pro | $20/мес | Включено в подписку (500 fast-req/мес), далее $0.04/запрос | До 128K (через Claude/GPT-4o backend) | 9/10 | 1–3 сек (агентный режим) | Рефакторинг целых файлов, агент |
| Claude 3.5 Sonnet API | Pay-as-you-go | $3 / $15 за 1M токенов | 200K токенов | 9.5/10 | 2–5 сек | Code review, архитектурный анализ |
| Claude 3 Haiku API | Pay-as-you-go | $0.25 / $1.25 за 1M токенов | 200K токенов | 7/10 | ~500 мс | Массовые дешёвые задачи: линтинг, комментарии |
| GPT-4o API | Pay-as-you-go | $2.50 / $10 за 1M токенов | 128K токенов | 8.5/10 | 1–3 сек | Multimodal: код + скриншоты UI |
| GPT-4o mini API | Pay-as-you-go | $0.15 / $0.60 за 1M токенов | 128K токенов | 6.5/10 | ~300–600 мс | Высокочастотные микрозапросы в pipeline |
GPT-4o mini — это $0.15 за миллион входящих токенов. Считаем. Тысяча запросов по 500 токенов каждый — это 500K токенов input, итого $0.075. Меньше восьми центов на тысячу операций линтинга. Claude Haiku при той же нагрузке обойдётся в $0.125 — дороже в 1.6 раза, но контекстное окно в 200K против 128K у mini иногда решает всё.
Cursor Pro за $20 — не «дорого», если понимать структуру: 500 fast-запросов включены, а backend под капотом — это Claude 3.5 Sonnet или GPT-4o в зависимости от задачи. Покупая Cursor, ты покупаешь оркестрацию поверх дорогих моделей по цене ниже прямого API-доступа. Один запрос через Cursor Pro в рамках лимита стоит $0.04. Прямой вызов Claude 3.5 Sonnet с 2K токенов input + 1K output — $0.021. Разница минимальная, но Cursor добавляет IDE-интеграцию, диффы и агентный цикл.
Claude 3.5 Sonnet — лидер code review. Без вариантов. Его 200K контекст позволяет загрузить весь репозиторий небольшого сервиса одним запросом и получить системный анализ связанности модулей — то, что GPT-4o физически обрежет на 128K. Промпт для проверки архитектуры выглядит так:
{
"model": "claude-3-5-sonnet-20241022",
"max_tokens": 4096,
"messages": [
{
"role": "user",
"content": "Analyze the following codebase for SOLID violations, circular dependencies, and performance bottlenecks. Return structured JSON with: violations[], severity (critical/major/minor), file, line, recommendation.\n\n[CODE BLOCK]"
}
],
"temperature": 0.2
}
GPT-4o выигрывает там, где нужна мультимодальность. Загрузи скриншот Figma-макета — получи React-компонент. Это единственный сценарий, где GPT-4o не имеет прямого конкурента в этой четвёрке. GitHub Copilot проигрывает обоим по глубине анализа, но выигрывает по одному параметру: латентность inline-completion 200–400 мс против 1–5 секунд у остальных. Скорость подсказки прямо в строке кода — его единственное абсолютное преимущество.
Соло. Оптимальная схема 2026 года: Cursor Pro ($20) + Claude API с лимитом $30/мес = $50 суммарно. Покрывает 95% задач: автодополнение, рефакторинг, ревью PR, генерация тестов. GitHub Copilot при такой схеме — избыточен.
Команда 5 человек. GitHub Copilot Business: 5 × $19 = $95/мес. Cursor Pro: 5 × $20 = $100/мес. Разница — $5. Но Copilot даёт централизованную политику доступа и аудит-логи, критичные для enterprise-compliance. Cursor Pro даёт агентный режим и больший контекст. Выбор зависит не от цены — от того, нужен ли тебе SOC 2 Type II или рефакторинг легаси.
// Расчёт месячной стоимости API под нагрузку:
// 10 000 запросов/мес, avg 1000 токенов input + 500 output
GPT-4o: (10M * $2.50 + 5M * $10.00) / 1M = $25 + $50 = $75/мес
Claude Sonnet:(10M * $3.00 + 5M * $15.00) / 1M = $30 + $75 = $105/мес
GPT-4o mini: (10M * $0.15 + 5M * $0.60) / 1M = $1.5 + $3 = $4.5/мес
Claude Haiku: (10M * $0.25 + 5M * $1.25) / 1M = $2.5 + $6.25 = $8.75/мес
При 10 000 запросов в месяц разрыв между топовыми моделями и «дешёвыми» — 10–23x по стоимости. GPT-4o mini за $4.5 против GPT-4o за $75. Вопрос только один: твоя задача требует топовой модели или нет. Для автогенерации docstrings и unit-тестов по существующему коду — нет. Для архитектурного ревью перед релизом — да.
Rate limits убивают бюджет косвенно. Claude API на Tier 1 ограничен 40K токенов в минуту. Если твой CI/CD pipeline запускает параллельные проверки 20 PR одновременно, ты упираешься в лимит и платишь за retry-логику и задержки деплоя. GPT-4o на Tier 2 даёт 800K токенов в минуту — в 20 раз выше. Для автоматизированных pipeline это не деталь, это архитектурное ограничение. Tier повышается автоматически при достижении $500 суммарных трат на аккаунте Anthropic и $50 на OpenAI.
Промпт без системных инструкций — это как руль без рулевой рейки: крутится легко, но машина едет прямо в мусорный вывод. GitHub Actions + OpenAI API решают задачу автоматического ревью за 40–80 мс на файл при размере diff до 4k токенов. Настройка занимает один рабочий день. Платишь ровно за то, что обработал.
Стоимость в 2026 году: OpenAI API (GPT-4o) — $2.50 за 1 млн входящих токенов / $10.00 за 1 млн исходящих. Claude 3.5 Sonnet (Anthropic API) — $3.00 / $15.00 за те же объёмы. При среднем diff в 800 токенов и 200 PR в месяц итоговый счёт — меньше $3. Это не опечатка.
Пайплайн выглядит так: триггер на pull_request → вытащить diff через git diff origin/main → отправить в API → записать ответ как комментарий через GitHub REST API (POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews). Без Jenkins, без отдельного сервера, без состояния.
# .github/workflows/ai-review.yml
name: AI Code Review
on:
pull_request:
types: [opened, synchronize]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Get diff
id: diff
run: |
git diff origin/main...HEAD -- '*.py' '*.ts' '*.go' > diff.txt
echo "lines=$(wc -l < diff.txt)" >> $GITHUB_OUTPUT
- name: Run AI Review
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_NUMBER: ${{ github.event.pull_request.number }}
REPO: ${{ github.repository }}
run: |
python3 - <<'EOF'
import openai, os, json, httpx
diff = open("diff.txt").read()[:12000] # hard cap 12k chars
client = openai.OpenAI(api_key=os.environ["OPENAI_API_KEY"])
response = client.chat.completions.create(
model="gpt-4o",
temperature=0.2,
messages=[
{
"role": "system",
"content": (
"You are a senior engineer reviewing a pull request diff. "
"Rules: 1) Report ONLY bugs, security issues, and O(n²)+ complexity problems. "
"2) Skip style comments entirely. "
"3) Format output as JSON array: "
"[{\"file\": str, \"line\": int, \"severity\": \"critical|warning\", \"comment\": str}]. "
"4) If diff is clean, return empty array []."
)
},
{"role": "user", "content": f"Review this diff:\n\n{diff}"}
]
)
findings = json.loads(response.choices[0].message.content)
if not findings:
print("No issues found.")
exit(0)
body = "## 🤖 AI Review\n\n"
for f in findings:
emoji = "🔴" if f["severity"] == "critical" else "🟡"
body += f"{emoji} **{f['file']}:{f['line']}** — {f['comment']}\n\n"
httpx.post(
f"https://api.github.com/repos/{os.environ['REPO']}/pulls/{os.environ['PR_NUMBER']}/reviews",
headers={"Authorization": f"Bearer {os.environ['GH_TOKEN']}",
"Accept": "application/vnd.github+json"},
json={"body": body, "event": "COMMENT"}
)
EOF
Дефолтный промпт даёт 60% мусора. Кастомный — режет его до 10–15%. Ключевой параметр — жёсткое ограничение scope прямо в system-сообщении: запрети модели комментировать стиль, форматирование и именование переменных. Только баги, уязвимости, деградация производительности. temperature: 0.1–0.2 — выше не нужно, ревью не творческий жанр.
Реальный кейс. Задача: автоматизировать ревью Python-монорепозитория на 340k строк кода, 15–25 PR в день, команда 8 человек. Проблема — ревьюеры тратили 40% времени на поиск SQL-инъекций и N+1 запросов в ORM-слое вручную. Решение: Claude 3.5 Sonnet через API с системным промптом, заточенным под SQLAlchemy-паттерны. Результат через 3 недели — 0 SQL-инъекций прошло в main, время ревью сократилось с 47 до 18 минут на PR. Стоимость: $11 в месяц на весь объём трафика.
Контекстное окно GPT-4o — 128k токенов. Claude 3.5 Sonnet — 200k. Gemini 1.5 Pro — 1 млн. Считаем: 100k строк Python с комментариями ≈ 400–600k токенов. Ни один из первых двух не влезет целиком. Точка.
Рабочая стратегия — иерархический chunking: сначала анализируешь AST-граф зависимостей (через ast модуль Python или tree-sitter), вычленяешь затронутые диффом узлы, передаёшь в API только релевантные модули + их прямые зависимости. Размер чанка держишь в диапазоне 8k–32k токенов. Gemini 1.5 Pro при его миллионном окне стоит $1.25 / $5.00 за 1 млн токенов — дешевле GPT-4o, но latency выше: 8–14 сек на запрос против 2–4 сек у GPT-4o.
Для векторного поиска по кодовой базе — pgvector + OpenAI Embeddings (text-embedding-3-large, $0.13 за 1 млн токенов). Схема: эмбеддингуешь каждую функцию отдельно, при запросе ищешь top-K релевантных функций через косинусное сходство, собираешь контекст динамически. Это работает даже при кодовой базе в 2–3 млн токенов.
Не на merge. Не после деплоя. На стадии pre-merge check — между линтером и тестами. Именно здесь diff ещё чистый, а блокировка PR технически обоснована. Если severity содержит хотя бы один critical — pipeline падает с exit code 1, PR не мерджится автоматически.
«The models are getting to the point where they can do a lot of the work that a junior engineer does. And that's going to keep going.»
Интеграция в GitLab CI отличается одним параметром: вместо GitHub REST используешь GitLab API v4, endpoint POST /projects/:id/merge_requests/:merge_request_iid/notes. Токен передаётся через CI_JOB_TOKEN переменную окружения — она уже доступна внутри раннера без дополнительной настройки. Весь остальной Python-код идентичен.
Среднее время добавления ИИ-шага в существующий пайплайн — 4–6 часов инженерного времени. Окупаемость при команде от 5 человек — первая же неделя.
Промпт без контекста — это как руль без рулевой рейки: крутится легко, но машина едет прямо в стену. Большинство программистов, получив от модели синтаксически корректный ответ, сразу запускают его в продакшн. Это фатальная ошибка номер один.
ChatGPT-4o не знает версию вашего Python. Он не знает, что вы используете SQLAlchemy 2.0, а не 1.4, где API сессий изменился кардинально. Модель генерирует код под «среднестатистический проект» из своего обучающего датасета — то есть под то, что преобладало в GitHub до середины 2023 года. Результат предсказуем.
Claude 3.7 Sonnet справляется лучше с длинным контекстом (до 200k токенов), что критично при работе с легаси-кодом — но только если вы вставляете этот контекст. Без него модель галлюцинирует зависимости с той же уверенностью, что и с ним. Уверенность — не точность. Запомните разницу.
Задача: есть парсер на aiohttp + asyncio, написанный под Python 3.8. После апгрейда среды до 3.11 начали сыпаться DeprecationWarning по loop.create_task() и падать тесты на asyncio.coroutine-декораторах, которые удалены в 3.11 окончательно.
Первый запрос в GPT-4o без контекста дал код с asyncio.get_event_loop() — deprecated в 3.10+. Классика. Второй запрос — с правильно сформированным промптом:
You are a Python 3.11 migration expert.
Context:
- Current Python version: 3.11.9
- Framework: aiohttp 3.9.x
- Problem: code uses asyncio.coroutine decorator (removed in 3.11)
and loop.create_task() pattern (deprecated)
- Constraints: no third-party event loop libraries (uvloop not available)
- Output format: refactored code block only, no explanations
Input code:
@asyncio.coroutine
def fetch(session, url):
response = yield from session.get(url)
return response
loop = asyncio.get_event_loop()
loop.create_task(fetch(session, url))
Модель вернула корректный результат с async def, asyncio.get_event_loop() заменила на asyncio.run(), а create_task переместила внутрь работающего event loop через asyncio.TaskGroup (Python 3.11+). Время решения от промпта до working code — 4 минуты вместо 40.
Разница между первым и вторым запросом — не магия. Это структура.
1. Укажи точную версию языка/фреймворка. Не «Python», а «Python 3.11.9». Не «React», а «React 18.3 с Vite 5.x».
2. Вставь зависимости. Скопируй релевантные строки из requirements.txt или package.json прямо в промпт.
3. Опиши ошибку дословно. Вставляй полный stack trace, не пересказывай его своими словами. Модель читает traceback лучше, чем вашу интерпретацию.
4. Укажи, что уже пробовал. Это исключает повторные советы с тем же решением.
5. Задай формат вывода явно. «Верни только код без пояснений» или «Объясни каждый шаг перед кодом» — это разные режимы работы модели.
6. Ограничь scope. «Оптимизируй только функцию parse_response(), не трогай остальное» — иначе GPT перепишет весь файл со своим видением архитектуры.
7. Запроси проверку на edge cases. Добавь в промпт: «После решения перечисли три edge case, которые этот код не обрабатывает».
8. Не давай задачу целиком за раз. Декомпозируй: сначала алгоритм, потом реализация, потом тесты. Три отдельных запроса дают лучший результат, чем один «сделай всё».
9. Проверяй импорты вручную. Модели регулярно генерируют несуществующие методы внутри реальных библиотек. pandas.DataFrame.to_arrow() — реальный пример галлюцинации, которая выглядит правдоподобно.
10. Используй температуру 0 для кода. Если работаешь через API — ставь temperature: 0. Креативность при генерации кода убивает воспроизводимость.
{
"model": "gpt-4o",
"temperature": 0,
"messages": [
{
"role": "system",
"content": "You are a senior backend engineer. Output only working code."
},
{
"role": "user",
"content": "..."
}
]
}
11. Проверяй лицензии генерируемого кода. Copilot и Codex обучены на публичных репозиториях, включая GPL-код. Риск небольшой, но реальный при коммерческой разработке.
12. Никогда не используй сгенерированный код без локального запуска. Точка.
«Модели не понимают код. Они предсказывают следующий токен с очень высокой точностью. Это не то же самое, что понимать.»
— Демис Хассабис, CEO DeepMind
Это не философия. Это инженерное следствие: модель не ловит логические ошибки, которые синтаксически корректны. Функция, возвращающая None вместо пустого списка при отсутствии данных — валидный Python. ИИ не увидит проблему без явного указания. Стоимость пропущенного баг-репорта в продакшне от таких «мелочей» легко превышает $500 на инфраструктурных инцидентах.
GitHub Copilot Business стоит $19/месяц на разработчика. ChatGPT Team — $25/месяц. Claude Pro — $20/месяц. API OpenAI (GPT-4o) — $2.50 за 1 млн входящих токенов и $10 за 1 млн исходящих. Если ты пишешь промпты без структуры и переспрашиваешь модель по 6-7 раз на одну задачу, ты сжигаешь токены в 4-5 раз быстрее, чем при правильно составленном первом запросе. Экономика чек-листа считается прямо.