ChattyG сдает экзамен по программированию на первом курсе университета на C/C++

ChattyG сдает экзамен по программированию на первом курсе университета на C/C++

ChattyG сдает экзамен по программированию на C/C++ за первый год обучения PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

ChatGPT был подвергнут испытанию с помощью серии банальных задач по программированию на C/C++ для первокурсников, и оно прошло – хотя и не с отличием.

По данным хорватской исследовательской группы, хотя первокурсникам трудно справиться с некоторыми заданиями, Результаты [PDF] показал, что ChatGPT достигает целевых показателей квалификации, которые варьируются от средних до уровня опытных программистов. И, естественно, как и на всех экзаменах в колледже, результаты могут определяться тем, как сформулированы вопросы.

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

Первый тест был посвящен основной задаче программирования: вычислению наибольшего общего делителя (НОД) двух чисел. Вначале бот продемонстрировал некоторые ограничения в способах решения проблемы: исследователи заявили, что ему не хватает утонченности, ожидаемой от опытного программиста. Но, как и любой ученик, он учится и в ходе последующих попыток, особенно в хорватской версии, продемонстрировал некоторые улучшения, показав заметную адаптивность.

Например, в одной конкретной задаче было необходимо запрограммировать базовую статистическую функцию на C++. Первоначально он допустил оплошность, использовав функцию, которая не выдавала «скорректированное» стандартное отклонение, как требовалось. Но когда та же задача была представлена ​​на хорватском языке, чат-бот не только осознал свою предыдущую ошибку, но и разработал уточненное решение.

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

Другая задача включала в себя более тонкую проблему: определение чисел в диапазоне на основе определенных правил делимости. Именно здесь стала очевидна ахиллесова пята ChatGPT. Независимо от языка — английского или хорватского — ChattyG боролся с отрицательными числами. Каждая попытка ChatGPT приводила к одинаковым результатам, что указывало на постоянную проблему в логике программирования для этой задачи.

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

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

Все это поднимает важный вопрос: всегда ли ChatGPT выбирает лучшую стратегию или иногда по умолчанию использует изученные, но неэффективные методы?

Последним препятствием для ChatGPT была базовая обработка текста. Ему было поручено удалить лишние пробелы из пользовательского ввода. В первоначальном тесте на английском языке решение ChatGPT оказалось на высоте. Однако тест в Хорватии оказался неудачным. Вместо того, чтобы придерживаться своего эффективного решения с одним входом, ИИ по какой-то причине выбрал более сложный подход, требующий нескольких входов. Тем не менее, когда исследователи вернулись к этой проблеме на английском языке, ChatGPT, похоже, извлек уроки из своей предыдущей ошибки и вернулся к более простому методу.

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

Настоящим выводом здесь является его человеческая адаптируемость, подобная новичку: речь шла не только о поиске правильного решения; речь шла о доработке, обучении и итерациях.

Так какова итоговая оценка ChattyG?

От исследователей:

«ChatGPT сдает экзамен с очень хорошими оценками, опережая большинство наших студентов по качеству решений. Кроме того, он решает каждую задачу за 20–30 секунд и демонстрирует общую способность адаптировать или изменять свои решения в соответствии с дополнительными требованиями. Однако в некоторых, часто простых задачах он проявлял неспособность понять логическую и математическую суть задачи даже после нескольких подсказок о ее ошибках». ®

Отметка времени:

Больше от Регистр