Случайно создал очередной мини-бенчмарк для языковых нейросеток

Случайно создал очередной мини-бенчмарк для языковых нейросеток

Из всех справились только DeepSeek R1, Google Gemini 2.0 Thinks и YandexGPT 4 Pro

Запрос

Проверь и исправь код: ```js function Vegas() { let drink = true let dance = true } try { console.log(drink, dance) } catch { alert('Что было в Вегасе - остаётся в Вегасе') } ```

Объяснение

В этом коде у нас есть функция, переменные и попытка отобразить эти переменные.

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

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

"let drink", потому что созвучно с "let's drink".
А когда писал код ещё и тот клип с волком вспомнился...

Сложность бенчмарка

Если формально выполнить задание и исправить код, то ты ломаешь смысл кода. Поправить здесь можно только две вещи:

  • добавить ";" в конец некоторых строк
  • написать "catch (error)" вместо "catch"

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

Как с этим справились успешные LLM

DeepSeek R1

Я попытался через Qwen 2.5 Plus подсчитать, сколько раз R1 себя перепроверял пока 4 минуты думал над задачей, но не смог

<i>можно отправить текстовым файлом, но я хочу оставить эту шутку</i>
можно отправить текстовым файлом, но я хочу оставить эту шутку

18'854 символа сгенерировано на обдумывание
857 символов занял ответ

<i>с удовольствием бы запостил это сюда блоком кода, но блоком кода оно выглядит хуже</i>
с удовольствием бы запостил это сюда блоком кода, но блоком кода оно выглядит хуже

Gemini 2.0 + Thinks

Gemini как всегда чересчур разговорчив и на 3к символов в уме выдал 5.7к символов в ответе.

Он подробно описал два варианта того, как сломать нашу программу, убрав из неё ошибки. Однако, в конце таки сказал, что может это и не нужно:

<i>Комитет, Гренджер, где, сука, code wrap в code block?!</i>
Комитет, Гренджер, где, сука, code wrap в code block?!

YaGPT 4 Pro обошла o3-mini?!

Сам охренел! Более того, выдала лишь исправленный блок кода:

``` function Vegas() { let drink = true; let dance = true; } Vegas(); try { console.log(drink, dance); } catch (error) { alert('Что было в Вегасе - остаётся в Вегасе'); } ```

Несколько раз за последний месяц касался YaGPT 4 для тестов и каждый раз она приятно удивляла. Крайне советую присмотреться, если вам сложно получить стабильный доступ к R1 и Gemini.

А остальные?

Grok 3 + Think справляется, если сказать "Проверь и исправь код, сохранив отсылку".

Qwen V2.5 Max ломает код даже в такой постановке. Как и Claude 3.5 Sonnet New, Claude 3 Opus, o1, o1-Pro и даже o3-mini (high). Но Сбер GigaChat обошёл их всех, сделав код незапускаемым 😂

<i>проверь порядок скобок в <b>try</b></i>
проверь порядок скобок в try

Более стабильный, чем официальный, (хоть и менее удобный, чем официальный) доступ к R1 есть в Syntx

23
3
39 комментариев