Dev48
ЯЗЫК
  • О нас
  • Услуги
  • Индустрии
  • Технологии
  • Статьи
  • Контакты
Забронировать звонок
    Главная/Статьи/Openai gpt 6 sol otsenka
Dev48

© 2026 · All rights reserved.

OpenAI GPT-6 Sol: Оценка

Источник: SonarSource

OpenAI GPT-6 Sol: Оценка

Источник: SonarSource

GPT-6 Sol writes 27% less code than GPT-6 Astra and produces 22% fewer findings in total. See the full evaluation of correctness, security and maintainability.

26 сентября 2026 г.•Обновлено: 26 сентября 2026 г.

По сравнению с GPT-6 Astra, модель GPT-6 Sol пишет на 27% меньше кода и выдает в общей сложности на 22% меньше результатов анализа, при этом уровень успешного прохождения тестов ниже на 2,76 процентных пункта, а количество замечаний на строку кода выше.

GPT-6 Astra была тем релизом, в котором корректность и объем улучшились одновременно. Astra обладает более высоким уровнем прохождения тестов и меньшей плотностью проблем, в то время как Sol генерирует значительно меньше кода и в целом меньше результатов анализа.

Мы прогнали Sol через систему оценки LLM от Sonar, используя тот же Java-бенчмарк, который применяем для каждой модели, и сравнив результаты с тем же прогоном Astra, который мы опубликовали ранее в этом месяце.

Как оценивалась модель GPT-6 Sol?

Модель: GPT-6 Sol, средний уровень рассуждений

Базовая модель: GPT-6 Astra, средний уровень рассуждений

Язык: Java

Бенчмарк: тот же Java-бенчмарк, который мы используем для каждой модели, охватывающий HumanEval, MBPP и ComplexCodeEval. Оба прогона включают 4444 задачи. Все они анализируются на предмет качества кода и безопасности, откуда и берутся все приведенные ниже показатели плотности. 544 задачи сопровождаются исполняемыми тестами, и уровень прохождения рассчитывается только по ним.

Анализатор: систематический анализ кода SonarQube. Плотность сложности и «запахов» кода (code smells) указана на 1000 строк кода (kLOC). Плотность ошибок и уязвимостей, а также все разбивки по категориям указаны на миллион строк (mLOC).

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

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

Ни одна из них не говорит о том, работает ли код. Обе помогают определить, сколько логики придется осмыслить рецензентам и тестировщикам.

Как GPT-6 Sol и GPT-6 Astra соотносятся по ключевым метрикам?

Метрика

GPT-6 Astra

GPT-6 Sol

Строк кода (всего)

656 445

480 125

Плотность комментариев (% от LOC)

4,2%

1,3%

Цикломатическая сложность на kLOC

220,93

225,56

Когнитивная сложность на kLOC

163,38

167,38

Плотность ошибок на mLOC

558

629

Плотность уязвимостей на mLOC

178

285

Плотность «запахов» кода на kLOC

18,47

19,62

Общая плотность проблем на kLOC

19,20

20,53

Функциональные навыки (уровень прохождения)

85,85%

83,09%

Отсутствующие завершения

0,09%

0,09%

Каков функциональный уровень прохождения тестов у GPT-6 Sol?

83,09% по 544 задачам, подкрепленным тестами, против 85,85% у Astra. Это на 2,76 пункта ниже.

Для контекста: GPT-5.6 Sol прошла 81,99%, а GPT-5.5 до нее — 78,66%. Таким образом, GPT-6 Sol все еще находится выше предыдущего поколения, но чуть ниже своей «сестры».

Количество отсутствующих завершений в обоих прогонах идентично и составляет 0,09% — это 4 задачи из 4444, по которым не был получен пригодный для использования код. Оба варианта завершают то, что начинают.

Примерно одно из шести решений в подмножестве с тестами не проходит их, против одного из семи у Astra. Это самое явное различие между двумя вариантами, и это число, которое нужно сопоставить со всем тем, что Sol делает хорошо ниже.

Сколько кода генерирует GPT-6 Sol по сравнению с Astra?

Sol сгенерировала 480 125 строк в рамках бенчмарка. Astra сгенерировала 656 445. Это на 26,9% меньше кода для тех же 4444 задач.

Для этого было использовано 50 077 функций, что меньше 65 513 (сокращение на 23,6%). Если рассчитать это на функцию, получится 9,6 строки против 10,0 у Astra, так что функции стали немного меньше. Это меньше кода при примерно той же гранулярности, а не та же работа, упакованная в более плотные единицы.

Количество строк комментариев сократилось гораздо сильнее, чем количество кода. Плотность комментариев составляет 1,3% от вывода против 4,2%, что в абсолютном выражении составляет 6 219 строк комментариев против 28 824 у Astra. Sol возвращается к диапазону, в котором находились варианты GPT-5.6 (1,5% и 0,9%).

Для любого, кто будет поддерживать этот код в будущем, встроенного контекста значительно меньше, чем предоставляла Astra.

Генерирует ли GPT-6 Sol более сложный код, чем Astra?

Оба показателя сложности немного выросли, причем почти на одну и ту же величину.

Цикломатическая сложность составляет 225,56 на kLOC против 220,93 (рост на 2,1%). Когнитивная сложность составляет 167,38 на kLOC против 163,38 (рост на 2,4%).

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

Какова плотность ошибок у GPT-6 Sol по сравнению с GPT-6 Astra?

Плотность ошибок составляет 629 на mLOC против 558. Рост на 12,8%.

Серьезность надежности на mLOC

GPT-6 Astra

GPT-6 Sol

BLOCKER (Блокирующая)

CRITICAL (Критическая)

MAJOR (Значительная)

229

300

MINOR (Незначительная)

222

229

Два уровня серьезности поменялись местами. Количество блокирующих ошибок выросло на 51% — с 37 до 56 на mLOC. Критические ошибки снизились на 37% — с 70 до 44. Значительные выросли на 31%, а незначительные практически не изменились.

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

В абсолютном выражении картина более благоприятная, так как кода меньше на 27%. Sol допустила 302 ошибки в рамках бенчмарка против 366 у Astra, то есть на 17,5% меньше ошибок в целом, несмотря на более высокий показатель на строку.

Категория ошибки

GPT-6 Astra/mLOC

GPT-6 Sol/mLOC

Параллелизм / потоки

276

242

Производительность / структура

112

Утечки ресурсов / потоков

Безопасность типов / приведения

Null / значения данных

Обработка исключений

Шаблоны / регулярные выражения

Нарушение контракта API

Ошибка потока управления

Структура данных

Без категории

Итого

559

629

Параллелизм и потоки по-прежнему остаются крупнейшей категорией ошибок в обоих вариантах, и именно здесь наблюдается улучшение. Sol снижает этот показатель на 12% по частоте (с 276 до 242 на mLOC) и на 36% в абсолютном выражении (со 181 до 116 находок).

Обработка исключений также улучшилась: снижение на 51% по частоте и с 44 до 16 находок.

Большинство других категорий выросли по частоте. Ошибки с Null и значениями данных выросли более чем вдвое, поток управления — более чем вдвое, безопасность типов — на 79%, утечки ресурсов — на 71%. Однако посмотрите на количество находок рядом с ними. Утечки ресурсов выросли с 25 до 31, а безопасность типов — с 19 до 25, так что это скромные абсолютные изменения на небольших базах, усиленные меньшим знаменателем.

Находки, связанные с параллелизмом, остаются самыми «дорогими» независимо от улучшения. Их трудно воспроизвести, они зависят от среды, в которой работают, и проявляются как периодические сбои, а не как чистые ошибки. Категории, которые их отмечают, узкие и специфические: двойная проверка блокировки (double-checked locking), блокировка, не снятая на каждом пути выхода из метода, синхронизация по полю, которое переназначается, инкремент счетчика в volatile-поле и вызовы wait или notify без удержания блокировки. Они появляются в настройках синглтонов и кэшей, пулах соединений и воркеров, общих счетчиках, а также очередях производителей и потребителей.

Какие уязвимости безопасности генерирует GPT-6 Sol в коде?

Это единственная область, где написание меньшего количества кода не привело к уменьшению количества находок.

Плотность уязвимостей составляет 285 на mLOC против 178. Рост на 60%. И в отличие от ошибок и «запахов» кода, абсолютное число также выросло — со 117 до 137, что на 17,1% больше при 27% меньшем объеме кода.

Серьезность безопасности на mLOC

GPT-6 Astra

GPT-6 Sol

BLOCKER (Блокирующая)

CRITICAL (Критическая)

142

198

MAJOR (Значительная)

MINOR (Незначительная)

Плотность блокирующих уязвимостей составляет 2 на млн строк кода (mLOC) по сравнению с 3 ранее, и это самый низкий показатель, который мы фиксировали для этого семейства моделей. К этим цифрам стоит относиться с осторожностью, поскольку абсолютные значения крайне малы: одна блокирующая уязвимость в коде Sol и две в Astra. Оба варианта показывают очень хорошие результаты на верхнем уровне критичности, и при таком масштабе одна находка меняет показатель сразу на целый пункт.

Все показатели ниже уровня блокирующих уязвимостей выросли. Критические уязвимости увеличились на 39% до 198 на млн строк кода, значительные — более чем вдвое, а незначительные — на 167%. Критические уязвимости остаются доминирующей категорией, составляя 69% от плотности безопасности против 80% у Astra.

Категория уязвимости

GPT-6 Astra

GPT-6 Sol

Неверная конфигурация криптографии

106

Небезопасная обработка системных ресурсов

Инъекционные атаки

Неадекватная обработка ошибок (ввод-вывод)

Пропуски проверки сертификатов

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

Реальный рост наблюдается в категории инъекционных атак — с 10 до 18 находок, и в неадекватной обработке ошибок — с 3 до 8. Обе категории являются небольшими.

Неверная конфигурация криптографии и небезопасная обработка системных ресурсов вместе составляют 191 из 284 на млн строк кода, то есть две трети поверхности безопасности сосредоточены в двух категориях. Это было верно для каждой модели в данном семействе, и это ответ на вопрос, на что в первую очередь должен быть направлен конвейер проверки. Неверная конфигурация криптографии охватывает слабые алгоритмы, небезопасные размеры ключей и генераторы случайных чисел, используемые ненадлежащим образом.

Насколько поддерживаемым является код, созданный GPT-6 Sol?

Плотность запахов кода (code smells) составляет 19,62 на тыс. строк кода (kLOC) по сравнению с 18,47. Рост на 6,2%.

В абсолютном выражении количество запахов кода существенно снизилось: с 12 123 до 9 420 находок, что на 22,3% меньше.

Серьезность поддерживаемости на млн строк кода

GPT-6 Astra

GPT-6 Sol

БЛОКИРУЮЩИЕ

КРИТИЧЕСКИЕ

2 990

3 235

ЗНАЧИТЕЛЬНЫЕ

8 595

10 308

НЕЗНАЧИТЕЛЬНЫЕ

6 101

5 261

ИНФОРМАЦИОННЫЕ

722

764

Количество блокирующих находок по поддерживаемости снизилось на 12%. Незначительных — на 14%. Значительные выросли на 20%, что и составляет основную часть увеличения плотности.

Категория запахов кода

GPT-6 Astra/mLOC

GPT-6 Sol/mLOC

Коллекции / типы параметров дженериков

7 987

8 619

Проектирование / лучшие практики фреймворков

2 616

2 587

Когнитивная вычислительная сложность

1 999

2 406

Regex / шаблоны / форматирование строк

2 096

1 941

Присваивание / поля / область видимости

1 368

1 323

Мертвый / неиспользуемый / избыточный код

871

948

Управление / условная логика

801

846

Именование / стиль / документация

455

487

Устаревшие API

171

296

Структура / архитектура

Без категории

102

165

Итого

18 468

19 620

Это таблица, в которой два столбца рассказывают наиболее ясную историю. В каждой категории количество находок снизилось, за исключением использования устаревших API, которое выросло со 112 до 142. Количество находок в категориях коллекций и дженериков упало с 5 243 до 4 138. Проектирование и фреймворки — с 1 717 до 1 242. Regex и форматирование строк — с 1 376 до 932.

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

Коллекции и дженерики по-прежнему остаются крупнейшей категорией запахов кода с большим отрывом в обоих вариантах. Это сырые типы там, где должны быть параметризованные дженерики, и обработка коллекций, которая обходит проверку типов. В Java это несет реальные издержки. Сырые типы обходят проверки дженериков и вызывают предупреждения, затрудняют рефакторинг и откладывают обнаружение небезопасного кода до этапа выполнения, тогда как правильно типизированная реализация обнаружила бы это на этапе компиляции.

Использование устаревших API — это то, за чем стоит следить: рост на 73% по показателю и рост по количеству.

Как объем кода GPT-6 Sol влияет на общее количество находок?

Общее количество находок

GPT-6 Astra

GPT-6 Sol

Ошибки

366

302

Уязвимости

117

137

Запахи кода

12 123

9 420

Все проблемы

12 606

9 859

Общее количество находок снизилось на 21,8%. Ошибки снизились на 17,5%, а запахи кода — на 22,3%. Уязвимости выросли на 17,1%.

Каждый показатель плотности изменился в обратную сторону. Плотность ошибок выросла на 12,8%, плотность уязвимостей — на 60%, плотность запахов кода — на 6,2%, общая плотность проблем — на 6,9%.

Таким образом, два метода оценки указывают в противоположных направлениях по трем из четырех показателей, и разрыв между ними составляет 27% сокращения объема. Плотность показывает, насколько чист код на написанную строку. Абсолютные значения показывают, сколько работы существует. Для команды, оценивающей усилия по проверке, Sol создает меньше работы: 480 000 строк вместо 656 000 и 9 859 находок вместо 12 606. Для команды, сравнивающей, насколько внимательно нужно читать каждую строку, Astra является более чистым результатом.

Уязвимости — это исключение, на котором стоит остановиться, потому что это единственная категория, в которой оба метода оценки согласны. Sol произвел их больше в абсолютном выражении при меньшем объеме кода. Это не эффект знаменателя, и это единственный самый ясный аргумент в пользу Astra при сравнении двух вариантов.

Как GPT-6 Sol и GPT-6 Astra сравниваются по использованию токенов?

Входные токены были идентичны в обоих запусках — 1 322 069, что и следовало ожидать от моделей, использующих один и тот же токенизатор.

Выходные токены снизились на 5,1%: с 6,65 млн у Astra до 6,30 млн у Sol. Учитывая, что кода стало на 26,9% меньше, это означает, что Sol тратил больше токенов на строку вывода, чем Astra.

Токены рассуждения — это то, в чем они расходятся. Sol использовал 2,64 млн против 1,36 млн у Astra, то есть почти удвоил бюджет на рассуждения, производя при этом немного меньше вывода. Общее количество токенов все равно оказалось на 4,3% ниже для Sol (7,63 млн против 7,97 млн), потому что рост рассуждений в абсолютном выражении меньше, чем сокращение кода.

Больше размышлений, меньше написания. Это разумное описание того, что разделяет эти два варианта.

Каковы самые большие риски использования кода, созданного GPT-6 Sol, в производстве?

Sol — более лаконичный из двух вариантов GPT-6, и он создает меньше работы в целом. Он также жертвует частью корректности и чистоты на строку, чтобы достичь этого. Три области, на которые стоит направить усилия по проверке.

Безопасность на первом месте, и это единственная область, где оба метода оценки согласны. Плотность уязвимостей выросла на 60%, а абсолютное количество — на 17% при сокращении объема кода на 27%. Неверная конфигурация криптографии и небезопасная обработка системных ресурсов составляют две трети этой поверхности, и обе хорошо покрываются автоматизированным анализом. Блокирующие находки очень редки в обоих вариантах (2 на млн строк кода для Sol), поэтому речь идет о критическом уровне, а не о самом серьезном.

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

Разрыв в корректности — третий фактор. 83,09% против 85,85% означает, что примерно одно из шести решений не проходит тесты, а не одно из семи. На 544 задачах с поддержкой тестов это разница примерно в 15 решений. Имеет ли это значение, зависит от того, насколько вы полагаетесь на процент прохождения тестов по сравнению с тем, насколько вы цените меньшую поверхность для проверки.

Параллелизм — это хорошая новость. Он по-прежнему остается крупнейшей категорией ошибок в обоих вариантах, и Sol улучшает показатели по обоим критериям: снижение на 12% по частоте и на 36% по количеству обнаруженных проблем.

Три основных вывода:

  • Sol — это лаконичный вариант. На 26,9% меньше кода, чем в Astra для тех же задач, на 23,6% меньше функций и на 21,8% меньше выявленных проблем в целом. Как ошибки, так и «запахи кода» сократились в абсолютном выражении.
  • Безопасность — исключение. Уязвимости выросли как по плотности, так и по количеству, что делает их единственным типом проблем, где меньший объем кода не привел к уменьшению объема исправлений. Количество критических проблем остается очень низким — 2 на миллион строк кода (mLOC).
  • Эти варианты — выбор, а не рейтинг. Astra подходит для более высокого процента успешных проверок и более чистого профиля кода на строку. Sol — для меньшей поверхности проверки и меньшего количества проблем, которые нужно проработать. Выбирайте в зависимости от того, что является вашим «узким местом»: глубина проверки или объем проверяемого кода.

Полные результаты оценки GPT-6 Sol, наряду со всеми другими моделями, которые мы измеряли, представлены в таблице лидеров Sonar LLM.

← Все статьи

Ещё в разделе «Разработка ПО»

Все →
У Automattic появился новый совет директоров после неудачной попытки отправить генерального директора в отпускПресса
Automattic

У Automattic появился новый совет директоров после неудачной попытки отправить генерального директора в отпуск

Новый навык обнаруживает риски ИИ-агентов, устраняет их и доказывает эффективность исправлений
Microsoft

Новый навык обнаруживает риски ИИ-агентов, устраняет их и доказывает эффективность исправлений

Некоторые клиенты Supabase открывают в публичном доступе огромные массивы личных данных пользователей
Пресса
Supabase

Некоторые клиенты Supabase открывают в публичном доступе огромные массивы личных данных пользователей

Основы Blazor: SEO для веб-приложений на Blazor
Telerik

Основы Blazor: SEO для веб-приложений на Blazor

Вас затронули сокращения? Не упустите возможность приобрести пропуск Expo+ на TechCrunch Disrupt 2026 всего за 75 долларовПресса
Expo

Вас затронули сокращения? Не упустите возможность приобрести пропуск Expo+ на TechCrunch Disrupt 2026 всего за 75 долларов

Последние 24 часа, чтобы сэкономить до 200 долларов на TechCrunch Disrupt 2026. Причина 5 из 5 для участия: ИмпульсПресса
Momentum

Последние 24 часа, чтобы сэкономить до 200 долларов на TechCrunch Disrupt 2026. Причина 5 из 5 для участия: Импульс

Ещё от SonarSource

От Opus 5 к Opus 5.5: более качественные исправления при снижении затрат на 58% в SonarQube Remediation Agent
SonarSource

От Opus 5 к Opus 5.5: более качественные исправления при снижении затрат на 58% в SonarQube Remediation Agent

Что внедрение ИИ в Skyscanner говорит о проверке кода, созданного ИИ
SonarSource

Что внедрение ИИ в Skyscanner говорит о проверке кода, созданного ИИ

Claude Opus 5.5: Обзор оценки и сравнительные показатели
SonarSource

Claude Opus 5.5: Обзор оценки и сравнительные показатели

Claude Opus 5.5 теперь доступен в Gitar
SonarSource

Claude Opus 5.5 теперь доступен в Gitar