ChatGPT или Claude для кода: что на самом деле влияет на результат

Pparadoxcalm12.09.2026
иипрограммированиеchatgptclaudeпрактика
ChatGPT или Claude для кода: что на самом деле влияет на результат

Две сильные модели могут одинаково хорошо решить простую задачу. Но из этого не следует, что они напишут одинаковый код — или одинаково справятся с большим проектом. Разбираемся на двух понятных примерах.

«Что лучше для программирования: ChatGPT или Claude?» Вопрос кажется простым. Хочется получить одно название, открыть нужное приложение и больше не сомневаться.

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

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

Почему на простых задачах разница может быть небольшой

В повседневной разработке много знакомых операций: проверить условие, отфильтровать список, преобразовать данные, обработать нажатие. Для них существуют стандартные приёмы и готовые библиотеки.

Если задача короткая и условия понятны, несколько сильных моделей вполне могут предложить подходящие решения. В таком случае на выбор влияют удобство работы, скорость ответа и доступные инструменты.

Но фраза «99% функций одинаковы» требует доказательств, которых у нас нет. Повторяемость отдельных приёмов не означает одинаковой сложности программ. Из знакомых деталей можно собрать системы с очень разными требованиями.

Даже команда «переставь кружку» предполагает условия: куда поставить, свободно ли место, нужно ли сохранить содержимое. В программе тоже важны входные данные, ограничения и последствия каждого действия.

Четыре составляющие результата: задача, контекст, модель и проверка

Пример 1. Разный код — одинаковое поведение

Поставим конкретную задачу:

Напиши на Python функцию, которая принимает список целых чисел и возвращает новый список без повторов. Сохрани порядок первого появления чисел. Исходный список не изменяй.

Один способ — собрать результат поэлементно:

def unique_a(numbers):
    result = []
    for number in numbers:
        if number not in result:
            result.append(number)
    return result

Другой — использовать словарь, который в современных версиях Python сохраняет порядок добавления ключей:

def unique_b(numbers):
    return list(dict.fromkeys(numbers))

В обоих случаях:

Вход:  [3, 1, 3, 2, 1]
Выход: [3, 1, 2]

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

При этом реализации не равноценны во всех отношениях. Первый вариант каждый раз ищет число в уже собранном списке; при большом количестве разных значений это требует всё больше сравнений. Второй вариант обычно лучше масштабируется благодаря поиску по ключам словаря.

Одинаковое поведение по условиям, одинаковый текст кода и одинаковое качество решения — разные вещи. Короткий код сам по себе не доказывает качество, а совпавший ответ на одном примере не доказывает равенство моделей.

Пример 2. Одно слово в задаче скрывает несколько решений

Теперь попросим: «Удали повторяющиеся имена».

names = [" Анна ", "анна", "АННА", "Борис"]

Если сравнивать строки буквально, здесь четыре разных значения. Различаются пробелы и регистр букв. Но человек мог ожидать всего два имени:

["Анна", "Борис"]

Чтобы получить именно такое поведение, уточним условия:

Удали пробелы по краям каждого имени. Сравнивай имена без учёта регистра. Сохрани порядок первого появления и написание первого имени после удаления пробелов. Пустые после очистки строки пропускай. На входе всегда список строк.

Тогда одна из реализаций выглядит так:

def unique_names(names):
    result = []
    seen = set()
    for raw in names:
        name = raw.strip()
        key = name.casefold()
        if name and key not in seen:
            seen.add(key)
            result.append(name)
    return result

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

Важная граница: одинаковое имя ещё не означает одного человека. Для объединения записей о клиентах понадобятся другие признаки. Нормализация строк решает только задачу сравнения текста.

Сравнение буквального удаления повторов и удаления по уточнённым правилам

Оба примера учебные и проверены локально. Это не результаты парного запуска ChatGPT и Claude; мы не приписываем этим моделям показанные реализации.

Хорошее объяснение помогает. Модель всё равно имеет значение

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

Более того, хороший помощник должен помогать уточнять требования. Пользователь не обязан заранее знать все технические подробности. Способность заметить недостающую информацию, задать уместный вопрос и правильно использовать ответ — тоже часть качества ИИ.

Это видно в исследовании LHAW, опубликованном Scale в феврале 2026 года. Авторы создали 285 вариантов многошаговых заданий, намеренно убирая часть важных условий. Возможность уточнять их у симулированного пользователя восстанавливала значительную часть потерянного качества. При этом модели различались по полезности вопросов, избыточным уточнениям и пониманию ответов. Исследование и методика.

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

Сами производители тоже рекомендуют начинать с критериев успеха. В документации Anthropic рядом с ясным определением результата стоит требование иметь способ его проверить. В рекомендациях OpenAI для GPT‑5.5 — описывать ожидаемый результат и ограничения, не расписывая каждый шаг без необходимости. Anthropic, OpenAI.

Сравнивать нужно и условия работы

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

В эксперименте Anthropic на Terminal-Bench 2.0 сохранялись модель, задания и управляющая программа, но менялись доступные вычислительные ресурсы. Между крайними конфигурациями разница успешности достигла 6 процентных пунктов. Это эффект условий выполнения в конкретном эксперименте, а не прибавка от более удачной формулировки запроса. Разбор эксперимента.

Поэтому полезный вопрос звучит конкретнее: какая модель, с какими инструментами и за какое время доводит мои задачи до проверенного результата?

Что написать ИИ перед началом работы

Пяти коротких пунктов часто достаточно, чтобы убрать основные недоразумения:

  1. Цель. Что должно получиться и зачем это нужно.
  2. Контекст. Где будет работать код, какие данные и существующие файлы важны.
  3. Ограничения. Что нельзя менять; нужны ли определённые версии языка или библиотеки.
  4. Примеры. Несколько входных данных и ожидаемых результатов, включая необычные случаи.
  5. Проверка. Как убедиться, что задача выполнена и соседняя функциональность продолжает работать.

Если вы не знаете, какие ограничения существенны, начните с цели и попросите помочь выявить недостающие условия. Точность не требует длинного запроса. Она требует полезной информации и готовности уточнять её по ходу работы.

Как проверить ChatGPT и Claude на своих задачах

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

Сравнивайте корректность, число необходимых исправлений, время и затраты. Отдельно попробуйте исходный короткий запрос и уточнённую версию. Учитывайте также время человека на подготовку условий и проверку ответа.

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

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

А у вас что чаще меняло результат: переход на другую модель или уточнение задачи? Расскажите на конкретном примере — с условием, ожидаемым результатом и тем, что получилось.


Материал XC7 подготовлен с помощью ИИ. Примеры кода проверены локально; собственное сравнительное испытание ChatGPT и Claude в рамках этого материала не проводилось. Источники проверены 11 сентября 2026 года. Исследования относятся к указанным в них моделям и условиям.

Источники

  1. Scale: Long Horizon Augmented Workflows — методика и результаты LHAW.
  2. Anthropic: Quantifying infrastructure noise in agentic coding evals.
  3. Anthropic: Prompt engineering overview.
  4. OpenAI: рекомендации по работе с GPT‑5.5.
  5. Python: словари и порядок добавления ключей.
0
Просмотры: 3Комментарии: 0

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

Комментариев пока нет