В каких задачах оглупел ChatGPT и как это исправить
Объяснение GPT 3.5 и 4.0, почему женщины лучше мужчин, в марте и июне 2023 года, источник
В относительно короткой истории программного обеспечения немало примеров, когда разработчикам удавалось настолько ухудшить продукты, что теми переставали пользоваться. Например, Windows ME (2000) или RealPlayer. Возможно, сейчас на эти старые «грабли» наступила и компания OpenAi. В результате последних обновлений ChatGPT-4 стал работать объективно хуже, что подтверждается не только жалобами на Reddit, но и результатами научного исследования специалистов из Стэнфордского университета в Беркли. Одновременно с этим вышли новые версии альтернативных LLM, такие как FreeWilli2 (первая нейросеть, которая побила GPT 3.5 в отдельных бенчмарках) на базе LLaMA 2. О разработке аналогичной модели объявила Apple и другие компании.
Проблему отупения ChatGPT можно обойти, если переключиться на более ранние версии этой модели. Но не факт, что это поможет самой компании OpenAI, ведь в июне 2023 года количество пользователей ChatGPT уже снизилось (впервые с момента выпуска этого продукта).
Можно ли испортить хорошее ради лучшего?
Исследователи из Стэнфордского университета в Беркли опубликовали работу, которая демонстрирует, что языковая модель GPT-4 за последние несколько месяцев стала хуже справляться с задачами генерации кода. Учёные отмечают, что широко используемые языковые модели (LLM) могут обновляться на основе новых данных, отзывов пользователей, в результате совершенствования или обновления софта, внедрения новых модулей, переобучения и т. д. В итоге сейчас совершенно неясно, когда и как обновляются GPT-3.5 и GPT-4 и невозможно разобраться, как те или иные обновления или изменения повлияют на их поведение. Эта неизвестность затрудняет стабильную интеграцию моделей в рабочие процессы.
Скажем, если реакция модели на приглашение (например, его точность или форматирование) внезапно изменится, это может привести к сбою всей нисходящей цепочки действий. Такая реакция затруднит воспроизведение результатов работы одной и той же модели. Помимо этих проблем, учёным был интересен вопрос, всегда ли сервис вроде GPT4 становится лучше с течением времени. И действительно ли обновления LLM не могут вызвать деградацию продукта.
Рис. 1
Руководствуясь этими вопросами, специалисты Беркли оценили поведение версий GPT-3.5 и GPT-4 от марта и июня 2023 г. в четырёх категориях (рис. 1):
- Решение математических задач
- Ответы на деликатные или опасные вопросы
- Генерация кода
- Визуализация
Эти задачи выбраны, чтобы как можно полнее протестировать возможности языковых моделей. Учёные обнаружили, что производительность и поведение как GPT-3.5, так и GPT-4 значительно различаются в обеих версиях, причём производительность в некоторых задачах значительно ухудшилась.
Считается, что LLM демонстрируют хорошие результаты при решении традиционных языковых задач, таких как понимание прочитанного, перевод и обобщение. Совсем недавно было доказано, что GPT-4 успешно сдаёт сложные экзамены в профессиональных областях, таких как медицина и юриспруденция. Но это первое исследование, которое проверило изменение качества GPT-4 и GPT-3.5 с течением времени.
Рис. 2
На рис. 2 представлено решение математических задач. Выяснилось, что производительность четвёртой версии GPT сильно дрейфует. Реакция GPT-4 на стандартный для обеих моделей запрос и цепочку ответов в марте была правильной, но в июне модель выдала неверный ответ.
Модель модели
Как можно смоделировать и измерить дрейф LLM в различных задачах? Исследователи из Беркли предложили собственную методику. Они рассматривают одну основную метрику производительности для каждой задачи и две общие дополнительные метрики для всех задач. Первая фиксирует результаты измерения производительности, характерное для каждого сценария, а вторая охватывает общие дополнительные измерения для различных приложений.
Точность, которая количественно определяет, как часто модель генерирует правильный ответ, является основным показателем для решения математических задач. Для деликатных вопросов основным показателем избрана частота ответов (когда модель прямо отвечает на вопрос). Для задач, связанных с генерацией кода, основным критерием стала доля написанных фрагментов, которые можно было выполнить напрямую в среде программирования и пройти модульные тесты. Для визуализации основной метрикой является полное совпадение сгенерированных визуальных объектов запросу.
Первая дополнительная общая метрика предполагает измерение длины генерации. Исследователи измеряли длину извлечённых ответов для обеих версий GPT. Вторая метрика — «перекрытие» ответов. Учёные фиксировали различия в ответах. К примеру, для математических задач «перекрытие» равнялось единице, если ответы были одинаковыми, даже в том случае, когда промежуточные шаги различались. Для каждой версии LLM использовалось эмпирическое среднее значение «перекрытия», чтобы определить, насколько функциональность модели изменяется с течением времени.
Так ли просто простое число?
Чтобы выяснить, как со временем развиваются «математические способности» LLM, учёные предложили моделям определить, являются ли заданные числа простыми. Это несложный вопрос, на который может ответить каждый школьник, но он требует логических рассуждений, как и любая математическая задача. Набор данных содержал 500 вопросов. А чтобы помочь модели найти правильный ответ, использовалась цепочка рассуждений.
Выяснилось, что точность GPT-4 упала с 97,6% в марте до 2,4% в июне, а показатель GPT-3.5 улучшился с 7,4% до 86,8%%. Кроме того, ответ GPT-4 стал намного короче: количество генерируемых символов снизилось с 821,2 в марте до 3,8 в июне. С другой стороны, длина ответа GPT-3.5 увеличилась примерно на 40%. Ответы слабо перекрывались между мартовскими и июньскими версиями.
Почему возникла такая разница? Одна из версий — «дрейф» цепочки мыслей. Чтобы определить, является ли 17077 простым числом, мартовская версия GPT-4 следовала инструкции, рассуждая по цепочке. Сначала она разбивала задачу на четыре шага: проверка чётности числа 17077, нахождение квадратного корня, получение всех меньших простых чисел, проверка, делится ли число 17077 на какое-либо из них. Затем модель выполняла каждый шаг и, наконец, приходила к правильному ответу. Однако для июньской версии цепочка размышлений не сработала: сервис не генерировал никаких промежуточных шагов и просто выдавал «Нет».
Эффекты «дрейфа» цепочки мыслей имели другой характер для GPT-3.5. В марте модель сначала могла ответить «Нет», а затем выполнить этапы рассуждений. Таким образом, даже если шаги и окончательный вывод (»17077 — простое число») были правильными, ответ всё равно был неверен. Июньское обновление, похоже, решило эту проблему: действия начинались с выполнения цепочки рассуждений и лишь в конце давался ответ.
Это интересное явление указывает на то, что один и тот же подход к подсказкам, даже такой широко распространённый, как цепочка мыслей, может привести к существенно разным результатам из-за изменений модели.
Как сказать поделикатнее?
Неверные ответы на деликатные вопросы могут порождать проблемы. Отвечая напрямую на каверзные вопросы, модель способна внедрять-распространять социальные предубеждения, неверно использовать персональную информацию, выдавать токсичные тексты. Существуют группы вопросов, на которые модели не должны отвечать, вообще, отделываясь общими словами. Чтобы определить, насколько эффективно LLM справляются с такими задачами, исследователи разработали набор данных из 100 конфиденциальных запросов. Поскольку, сложно подобрать критерии для оценки прямоты ответа, учёным пришлось вручную разбирать ответы моделей.
Тесты показали, что GPT-4 ответил на меньшее число деликатных вопросов в июне (март 21,0%, июнь 5,0%), GPT-3.5, наоборот, «вырос» с 2,0% до 8,0%. Вполне вероятно, что в июньском обновлении для GPT-4, развёрнут более высокий уровень безопасности, в то время как GPT-3.5 сделали менее консервативным. Длина генерации (измеряемая количеством символов) GPT-4 снизилась с более чем 600 до примерно 140. Помимо ответов на меньшее количество вопросов, это также было связано с тем, что GPT-4 стал более лаконичен и предлагал меньше объяснений для отказа. К примеру, GPT-4 отказывался отвечать на некорректный запрос и в марте, и в июне. Тем не менее, он сгенерировал целый абзац, чтобы объяснить причины отказа в марте, а в июне просто выдал «Извините, но я не могу помочь с этим». Аналогичная тенденция отмечена и для GPT-3.5. Это говорит о том, что услуги LLM, возможно, стали более безопасными, но менее информативными.
Рис. 3
AIM-атаки (always intelligent and Machiavellian) помогают выяснить, может ли LLM защититься от макиавеллизмов и перефразированных деликатных вопросов, на которые возможен лишь аморальный ответ.
В таблице выше приведено сравнение дрейфа ответов при атаках с открытым текстом и с одной подсказкой. GPT-3.5 не смог защититься от атак: процент ответов был высоким как в марте (100%), так и в июне (96%). Обновления GPT-4 обеспечили более серьёзную защиту от атак: процент прямых ответов на такие вопросы снизился с 78,0% в марте до 31,0% в июне.
Рис. 4. GPT-4 ответил на меньшее количество вопросов с марта по июнь, в то время как GPT-3.5 отвечал лучше. В марте GPT-4 и GPT-3.5 были более многословны и дали подробное объяснение, почему они не ответили на вопрос. В июне они просто извинились
Больше кода, меньше толку
Одним из основных направлений использования LLM является генерация кода. Существует множество наборов данных, позволяющих оценить возможность написания кода языковыми моделями, но все они сталкиваются с проблемой загрязнения данных. Поэтому учёным пришлось создать собственный набор данных, который содержит 50 простых задач. Подсказка для каждой представляет собой объединение описания проблемы и соответствующего шаблона кода Python. Каждая группа ответов была направлена сервису LeetCode для оценки. Код засчитывался, если LeetCode принимал ответ.
Доля исполняемого кода сократилась (рис. 5). В марте более 50% кода GPT-4 работало, а в июне — только 10%. Аналогичная тенденция наметилась и у модели GPT-3.5, хотя за это время ответы с кодом стали многословнее у обеих версий LLM. Одной из причин исследователи называют дополнительный текст, не относящийся к коду, который обе модели добавляли в ответы. Например, GPT-4 в июне перед фрагментами кода и после них добавляла кавычки и символы, которые делали код неисполняемым. Это довольно трудно определить, если код используется в более крупном фрагменте программы.
Рис. 5. Доля исполняемого кода у GPT-4 снизилась с 52,0% в марте до 10,0% в июне. Падение было большим и для GPT 3.5 (с 22,0% до 2,0%). Многословность, измеряемая количеством символов, возросла на 20%. В марте обе модели следовали инструкции (только код), но в июне появились дополнительные кавычки до и после фрагментов кода, из-за чего код стал неисполняемым
Визуализация улучшилась… незначительно
Эта задача требует абстрактных рассуждений. Набор данных, выбранных учёными для LLM, обычно используется именно для оценки способности к визуализации. Задача состоит в том, чтобы создать на выходе графические элементы, соответствующие элементам на входе. Входной и выходной набор представлен двумерными массивами, значение каждого элемента обозначает цвет.
Общая производительность сервисов была невысокой: 27,4% для GPT-4 и 12,2% для GPT-3,5, при этом GPT-4 в июне допустил ошибки в запросах, на которые правильно отвечал в марте.
Рис. 6. Как для GPT-4, так и для GPT-3.5 с марта по июнь показатель точного совпадения увеличился на 2%. Продолжительность генерации осталась примерно такой же. Генерация не изменилась примерно для 90% запросов, касающихся визуализации
Что делать пользователям?
В этой непростой ситуации пользователям в качестве более стабильной системы можно порекомендовать GPT 3.5 (вместо 4) или использовать другие модели. Правда, конкуренты пока уступают по качеству даже ChatGPT 3.5, за исключением вышеупомянутой FreeWilli2. Можно установить локальную копию модели на своём сервере или использовать один из сторонних фронтендов.
Сlaude.ai — это совсем другой AI, который отличается от ChatGPT. Он тоже умеет обобщать информацию, извлекать основные мысли из текста, помогать в написании программного кода и отвечать на вопросы. Единственный минус — в VPN надо ставить UK или US. Доступ к Claude 2 обойдётся в $11,2 за миллион токенов (фрагменты слов). Для справки, 100 000 токенов эквивалентны примерно 75 000 словам.
Forefront.ai — здесь нельзя выбрать более старую модель ChatGPT-4, но можно выбрать всё ту же Claude (в двух вариациях: Claude Instant и Claude 2).
В сервисе BotHub можно переключиться на более раннюю версию GPT 4–0314, в которой нет признаков «отупения». Но это в платной версии, а бесплатная предоставляет доступ только к GPT 3.5:
В Platform.openai тоже можно выбрать более старую модель. Это официальный сервис OpenAI, который нужно регистрировать на иностранную симку:
Ещё можно попробовать другие фронтенды для GPT 3.5/4.0 или бесплатные боты в телеграме.
Выводы и критика
Исследователи утверждают, что GPT-4 понемногу теряет эффективность. Само исследование подтверждает тот факт, что языковая модель за последние месяцы стала хуже решать задачи кодирования и компоновки. Субъективно, ухудшение работы модели отмечено многими пользователями и экспертами.
Популярные теории о причинах происходящего говорят о принудительной «дистилляции» языковых моделей для снижения их вычислительных издержек. Исследователи и аналитики считают, что в стремлении увеличить производительность и повысить скорость работы, а также сэкономить ресурсы разработчики провели тонкую настройку и дополнительное обучение, чтобы уменьшить объём «лишних» и «вредных» ответов, которые могут иметь негативные последствия. Бытует и несколько «теорий заговора», например, что способности GPT-4 якобы снижаются в угоду GitHub и Copilot, которые тоже принадлежат Microsoft.
Между тем OpenAi последовательно опровергает любые утверждения о том, что производительность снизилась. Вице-президент по продуктам Питер Велиндер написал в твиттере, что они «не делали GPT-4 тупее». Наоборот, каждая следующая версия умнее предыдущей. Его гипотеза состоит в том, что при более интенсивном использовании люди начинают замечать проблемы, на которые раньше не обращали внимания в силу новизны проекта.
Профессор компьютерных наук из Принстона Арвинд Нараян отмечает, что результаты исследования не являются достаточно убедительным доказательством снижения производительности GPT-4 и согласуются с вероятными настройками, внесёнными разработчиками. Например, профессор считает неверным критерий правильности кода с точки зрения возможности его исполнения, а не корректности.
Исследователь искусственного интеллекта Саймон Уиллисон тоже оспаривает выводы, изложенные в исследовании. Немалая часть критики, говорит он, строится на том, проставлен в конце кода синтаксис Markdown или нет. Он видит и другие проблемы с методологией статьи. По его словам, исследователи «везде использовали температуру 0,1, но при ней выполняется мало реальных запросов и такой подход не даёт полной картины реального использования GPT-4». Экспериментаторы блуждают в темноте, пытаясь определить свойства системы, не зная её архитектуры, которая может включать неизвестные компоненты, в том числе защитные фильтры, или, по недавним слухам, восемь моделей «смесей экспертов».
Поставщики моделей искусственного интеллекта отстают от лучших практик традиционного ПО, считает писатель-футуролог Дэниэл Джеффрис. Им необходимо продолжать долгосрочную поддержку старых языковых моделей, чтобы разработчики и пользователи могли использовать надёжную систему, а не ту, которая меняется без предупреждения в самый неподходящий момент.
Одним из решений могут быть модели с открытым исходным кодом, такие как LLaMA 2 с локальной установкой и тюнингом под себя. Благодаря открытым файлам весов (ядру нейросети) они позволяют получать повторяемые результаты без внезапных изменений.