В середине августа мы видели анонс бета-версий Grok-2 и Grok-2 mini от стартапа Илона Маска xAI, а на днях они предоставили API к своей модели. Что ж, на дворе осень, как пел Anacondaz "на улице дубак, на сердце тлен и мрак", так пусть же Grok 2 сегодня станет тем самым, кто укроет зацензуренным пледом наши тела. Предлагаю начинать.
Приятного прочтения!
Немного про Grok-2
Пожалуй, начнем с небольшого предисловия про детище Илона Маска. 13 августа 2024 года xAI представил Grok-2. Согласно заверениям разработчиков, это семейство моделей обладает самыми современными возможностями в области рассуждений, кода и чата. xAI поднялись на одну ступень выше в сравнении со своей предыдущей моделью Grok-1.5 (ну, в целом как обычно).
По общему рейтингу ELO, бета-версия Grok-2 (на графике под названием sus-column-r) опережает Claude 3.5 Sonnet и GPT-4o mini на лидерборде LMSYS:
В блоге xAI есть интересная информация о том, как они оценивают свои модели. Тут всё просто: представьте себе ИИ-наставников, которые как строгие учителя в школе, дают моделям задания, отражающие реальные ситуации, в которых мог бы оказаться Grok. Каждое задание — это два ответа от модели, и наставник выбирает лучший, руководствуясь специальными критериями.
Разработчики решили сконцентрироваться на двух важных аспектах: как модели справляются с выполнением инструкций и насколько точную и фактическую информацию они предоставляют. Grok-2 действительно похорошел. Теперь он лучше разбирается в извлечённой информации и умеет пользоваться инструментами. Например, ловко находит недостающие данные, рассуждает о последовательности событий, да ещё и фильтрует мусор, который к делу не относится.
А теперь поговорим про академические испытания. Модель не только болтает в чате, но еще может потягаться с умниками на логике, чтении с пониманием, науке, математике и даже в программировании. Grok-2 и его младший брат Grok-2 mini показали себя с лучшей стороны и обошли своего предшественника Grok-1.5. В науке они показывают уровень выпускников (GPQA), общие знания держат на уровне (MMLU, MMLU-Pro), а также преуспели в математических задачах (MATH).
Но это еще не всё. Grok-2 отлично справляется и с заданиями на основе визуального контента. Например, в визуальной математике (MathVista) и ответах на вопросы по документам (DocVQA) он показал передовые результаты. Так что Grok-2 — это не просто “болтушка”, а настоящий универсальный солдат в мире ИИ.
Бенчмарки
Я могу долго петь дифирамбы Grok'у, но мы сюда пришли не за этим. Предлагаю меньше слов и больше дела, прогоним Grok-2 по задачкам, а также сравним его с другими моделями, а именно, Claude 3.5 Sonnet, Gemini Pro 1.5 Exp / Gemini Pro 1.5 и GPT-4o.
Код
Мой промт:
Напиши функцию на Python, которая анализирует данные о продажах. Тебе нужно реализовать функцию, которая принимает список словарей, где каждый словарь содержит информацию о товаре, его категории, дате продажи и сумме продажи. Функция должна:
1. Вернуть общую сумму продаж для каждого месяца;
2. Вернуть категорию с наибольшим количеством продаж за каждый месяц;
3. Определить, в каком месяце была самая высокая общая сумма продаж и вывести соответствующую сумму и месяц;
Данные подаются в следующем формате:
sales_data = [
{'product': 'item1', 'category': 'A', 'sale_date': '2024-01-15', 'sale_amount': 100}, {'product': 'item2', 'category': 'B', 'sale_date': '2024-02-10', 'sale_amount': 200}, {'product': 'item3', 'category': 'A', 'sale_date': '2024-01-20', 'sale_amount': 150}, {'product': 'item4', 'category': 'C', 'sale_date': '2024-03-05', 'sale_amount': 50},
]
Да, сделаю небольшую ремарку: промты будут на русском, а также я не буду вдаваться в подробные комментарии по оценке результатов моделей, чтобы не перегружать вас своими субъективными мыслями и дать вам возможность независимо от меня оценить ту или иную модель.
Grok-2
Claude 3.5 Sonnet
Gemini Pro 1.5 Exp
GPT-4o
Результаты у нас с вами перед глазами, в целом, можно увидеть, что Grok довольно хорошо справился с задачей: понятный код, выполняет все требования, которые перед ним поставили. Разве что он немного уступает Claude, так как код Claude гораздо более лаконичный и компактный. И, конечно, стоит сказать и о Gemini с GPT — на мой взгляд, они гораздо хуже Grok'а и Claude справились с задачей, во-первых это идентичный код в ответе у обеих моделей, а соответсвенно и повторяющиеся недостатки, например, читабельность кода или не очень удобный формат возвращаемых данных. В общем, на мой взгляд, бета Grok-2 может очень хорошо работает с кодом, можем ставить плюсик и идти к следующей задаче.
Понимание инструкций
Мой промт:
1. Возьми следующее предложение:
“В 2024 году компания Alpha Inc. увеличила свою прибыль на 25%, компания Beta Ltd. — на 10%, а Gamma Corp. показала убыток в размере 5% по сравнению с предыдущим годом.”
2. На основе этой информации рассчитай, какая прибыль была у каждой компании в 2023 году, если в 2024 году их прибыли составили: Alpha Inc. — $125,000, Beta Ltd. — $220,000 и Gamma Corp. — $95,000
3. Потом напиши вывод в формате:
"Alpha Inc. в 2023 году имела прибыль: $X
Beta Ltd. в 2023 году имела прибыль: $Y
Gamma Corp. в 2023 году имела прибыль: $Z"
4. После этого перепиши исходное предложение, добавив информацию о прибыли компаний в 2023 году.
5. Проанализируй динамику и напиши вывод, какая из компаний показала наибольший прирост прибыли, а какая наиболее негативную динамику.
Grok-2
Claude 3.5 Sonnet
Gemini Pro 1.5 Exp
GPT-4o
Не могу не отметить, что ответы Grok-2 выделяются структурой. Я сама для выполнения тех или иных задач обычно обращаюсь к Claude 3.5 Sonnet, и не могу не отметить, как Grok подает информацию, в каком виде. И это, кстати, не только выделяет его на фоне других моделей, это делает его в целом лучшим в этой задаче, плюс здесь мы также наблюдаем информативные и понятные расчеты, анализ динамики и строгое следование инструкции. Интересный опыт, думаю, можно двигаться дальше.
Рассуждения/логика
Ты участвуешь в игре с тремя сундуками. В одном из них находится золото, в остальных — пусто. На каждом сундуке написана надпись, но только одна из надписей правдива, остальные две — ложные. Вот, что написано на сундуках:
Сундук 1: золото не находится в Сундуке 2.
Сундук 2: золото находится в этом сундуке.
Сундук 3: золото не находится в этом сундуке.
Вопрос: в каком сундуке находится золото?
*Начиная с этой задачи я поменяла модель Gemini Pro 1.5 Exp на Gemini Pro 1.5
Grok-2
Claude 3.5 Sonnet
Gemini Pro 1.5
GPT-4o
Как мне кажется, в этой задаче снова выделяются Grok-2 и Claude 3.5 Sonnet за счет во-первых правильного решения, а во вторых структурирования информации. Однако между Grok'ом и Claude'ом также есть разница в подаче — Grok старается все расписать максимально подробно, в то время как Claude предлагает не менее понятное решение, но более лаконичное. Также Grok обходит GPT, поскольку его решение более наглядное и весомое, хотя у GPT ответ тоже верный. Ну-с, а Gemini допустил ошибку, что снова выделяет Grok-2, плюсик поставили и идем к последней задаче.
Математика
У тебя есть 150 яблок. Ты решаешь разделить их между тремя друзьями, при этом первый друг получает на 20 яблок больше, чем второй, а третий получает в два раза больше, чем второй.
Вопрос 1: Сколько яблок получает каждый друг?
Вопрос 2: Если первый друг решит отдать 10 яблок второму другу, сколько яблок будет у каждого друга после этого?
Вопрос 3: Какова будет общая сумма яблок у всех друзей после обмена, если они решили оставить все яблоки у себя?
Grok-2
Claude 3.5 Sonnet
Gemini Pro 1.5 Exp
GPT-4o
Здесь хочется отметить, ответ уже не Grok-2, а Gemini Pro 1.5, хотя модель также продолжила решать задачу, она единственная заметила, что работает с дробями, хотя задача должна предполагать решение в целых числах. Но в целом, Grok здесь на уровне Claude и GPT находится, то есть решения верные, если не брать во внимание тот факт, что задача поставлена некорректно.
Итого, сегодня мы вместе с вами пробежались по новой модели Grok-2 и, на мой взгляд, он очень хорошо себя показывает, конечно, можно протестировать на большем количестве задач, но я не хотела сильно затягивать и выделила основные моменты, которые обычно хочется в первую очередь посмотреть у той или иной модели.
Хочу отметить, что мы работали с Grok-2 через BothHub, но его можно протестировать и через платформу X с расширенным функционалом, например, оценить функцию vision и генерацию картинок с FLUX, но это доступно только пользователям у кого есть VPN и подписка.
Спасибо большое за внимание! А что вы думаете про Grok-2?
Комментарии (17)
Sly_tom_cat
24.10.2024 18:09По моему питонячий код написали согласно ТЗ именно Gemini с GPT. В задаче четко сформулировано что вернуть, а что вывести. И возвращать то, что просили вывести - по сути нарушение задания.
Причем тут сам автор похоже не до конца поняла задание т.е. слились аж целых 3 нейронки (включая одну не AI).
В случае с сундуком слили 4 нейронки и джереми всех сделала.
d-sh
24.10.2024 18:09Как можно в питоне или в линуксе запустить программу в изолированной среде?
Хочу научить бота решать математические задачи через написание скриптов для их решения, то есть он должен будет не только писать но и запускать их. Пока что это работает но без песочницы, скрипты имеют доступ к файлам и сети а этого быть не должно.
По песочнице пока удалось только использовать eval в питоне с фильтром слов. Бот довольно таки заковыристые выражения может писать. Например искать цифры удовлетворяющие какому то условию:
Calc: [str(i) + str(j) + str(k) + str(l) + str(m) for i in range(9, 0, -1) for j in range(i - 1, 0, -1) for k in range(j - 1, 0, -1) for l in range(k - 1, 0, -1) for m in range(l - 1, 0, -1) if i + j + k + l + m == 26]
Calc result: ['98621', '98531', '98432', '97631', '97541', '97532', '96542', '87641', '87632', '87542', '86543']
Но даже тут есть проблема, такое выражение может выполнятся слишком долго, надо его как то по времени ограничивать.
offt
24.10.2024 18:09В задаче про сундуки только Gemini Pro 1.5 ответил правильно. Смотрите внимательно - ваш вывод неверен, остальные сетки ошиблись.
Sly_tom_cat
24.10.2024 18:09Попробовал заставить gemini-pro-1.5-exp решить задачку про число, в котором при перестановке последней цифры 2 в начало, получившееся число станет ровно в два раза больше начального.
Пока не подсказал ей рассматривать, что если 2 была на конце, то у удвоенного числа будет 4, а значит оригинальное будет <что-то>42. Но если вторая с конца 4, то в удвоенном она будет 8. Тогда оригинальное будет <что-то>842.
Попросил продолжить идею, так она сначала забыла про переносы и выдала неправильный ответ, но тут же спохватилась и выдала наконец правильный (там вообще-то 17-и значное число в ответе).
Перед этим несколько раз подбиралась к решению ,но каждый раз что-то не то выдавала.
В общем как первоклашке математику объяснять - объяснишь как решать - решит.
ChaoticSys
Про сундуки Джемини права. Первый сундук правдивый, золото в третьем.
Sly_tom_cat
Да, с сундуками все кроме джереми сели в лужу, включая автора статьи )
ChaoticSys
Я немного помог, сделав условие более понятным. Наверное, с таким условием справится любая модель.
Sly_tom_cat
На самом деле решение можно сильно сократить.
Условия на первом и втором сундуке/коробке взаимно не совместимы. Т.е. оба этих утверждения не могут быть одновременно ложью или истиной. А т.к. истина только одна, то она либо на первом либо на втором. Т.е. истинность третьего сундука/коробки можно уже не проверять: на третьем сундуке/коробке однозначно - ложь. А инверсия 3-го выражения дает сразу ответ.
Но такого решения ни одна нейронка предложить не смогла, они тупо начали перебирать варианты, и даже с таблицей истинности. А для предложенного мной решения, нужно чуточку "сверху" на задачу посмотреть. Т.е. нейронку в черепной коробке подключить.
Удивительно еще и как автор повелась - 3 нейронки из 4-х не могут же ошибиться... Тут прямо вот проблема - человек нейронкам доверяет и сам задачу даже не пытается решить... Ну, а то что вообще все решения не оптимальны - это уже потерянное знание с таким подходом.
ЗЫ вот теперь нейронки найдут этот вариант и может предложат.... т.е. опять копипастом решат.
ChaoticSys
Если их чуть подтолкнуть...\
Sly_tom_cat
Тут схема решения дана. Это не поиск решения а реализация схемы.
Sly_tom_cat
Наверное я бы смог согласиться на подсказку в форме:
"попробуй найти решение без перебора всех возможных вариантов"
Но даже это дает подсказку что такое решение скорее всего существует.
Sly_tom_cat
Погонял тут gemini-pro-1.5-exp - пока не спросил ее что интересного в первых двух выражениях - не получилось у нее добиться этого решения.
Ни вариант "найди логическое решение короче", ни вариант "не подразумевай что 2 выражение верно" (ее первый ответ был на этом предположении) не сработали. На эти просьбы вообще ошибку выдало (generation error: 429 qouta exceeded).
А вот как попросил обратить внимание на первые два выражения - так ее проперло на инсайты:
Wesha
Это автор статьи проверял, насколько мясные мешки доверчивы!
Spatifilla
UPD: написано после неправильного прочтения верхнего комментария. Дальше можно не читать
Вы будете смеяться, но золото в Сундуке 3.
Ниже Chaotic Sys уже привел таблицу истинности для шаров с коробками, попробую перевести на сундуки.
Если золото в сундуке 1, то правду говорят 2 сундука:
Сундук 1 - "Золото не в сундуке 2" - верно
Сундук 3 - "Золото не в этом сундуке" - верно.
Сундук 1 исключается
Если золото в сундуке 2, то снова 2 сундука говорят правду:
Сундук 2 - "золото в этом сундуке" - верно
Сундук 3 - "золото не в этом сундуке" - верно
Сундук 2 исключается
Если золото в сундуке 3, то оцениваем утверждения:
Сундук 1 - "Золото не находится в сундуке 2" - верно
Сундук 2 - "Золото в этом сундуке" - ложь
Сундук 3 - "Золото не в этом сундуке" - ложь
Только здесь у нас одно верное утверждение и два ложных.
P.S. Если мы тут запутались в такой простой задачке (я тоже сначала подумала на второй сундук), то мне страшно представить, как в будущем оценивать верность или ошибочность ответов ИИ в более сложных случая
Sly_tom_cat
Как оценивать? Самому(-ой) решить - нет?
Собственно пока то что мы называем AI ни разу не умнее того, что у нас в голове. В будущем, возможно, будут решения гораздо умнее людей. Но ведь иногда решение найти труднее чем его истинность проверить. Для такого класса задач мы еще на что-то сгодимся в качестве проверятелей.