категории | RSS

Исследование: ChatGPT работает лучше на Julia, чем на Python и R

Исследователь из Массачусетского технологического института Кристофер Ракаукас выяснил, что ChatGPT лучше справляется с задачами генерации кода на языке Julia, чем на Python и R.

Ранее другой исследователь Алессио Бушеми опубликовал материал под названием «Сравнительное исследование генерации кода с использованием ChatGPT 3.5 на 10 языках программирования». Он создал несколько примеров задач, запросил у ChatGPT код, выполнил его и задокументировал результаты. Автор сделал вывод, что 45,8% запусков привели к исполняемому коду, однако процент сильно варьируется в зависимости от тестируемого языка. Бушеми подчеркнул, что ChatGTP лучше всего работает на Julia: 81,5% сгенерированного кода выполняется успешно. Худшие результаты чат-бот демонстрирует в случае с C++: только 7,3% успешных выполнений. В частности, модель работает лучше на динамически типизированных языках высокого уровня (javascript, Julia, Perl, Python, R, Ruby, Smalltalk), чем на статически типизированных языках более низкого уровня (C, C++, Go), сделал вывод исследователь.

Ракаукас решил применить ChatGPT для обновления привязок и документации diffeqpy, пакета быстрого решения дифференциальных уравнений на Python, который использует Julia в качестве серверной части. Ему потребовалось перевести массив кода Julia DifferentialEquations.jl в формат Python для diffeqpy.

Исследователь заметил, что чат-бот попадался на тех же несоответствиях API Python, что и его студенты-новички. Результаты ИИ были формально «правильными», но контекстуально неправильными из-за несоответствий стандартной библиотеки или её отсутствия. Например, для него запрос «создать массив случайных чисел в Python» означает «импортировать случайные числа», а затем «random_numbers = [random.randint(1, 100) for _ in range(5)]». ChatGPT не понимает этих контекстных различий и начинает путаться в подсказках, что может ввести в заблуждение неопытного разработчика. Реальным выходом же является запрос «создать массив случайных чисел в Python с помощью numpy». 

В случае с Julia чат-бот путался только в задачах повышенной сложности, например, при использовании синтаксиса «A = coo_matrix(([4, 1],([0, 1], [1, 1])),shape=(2, 2))». 

Ракаукас сделал вывод, что обучение больших языковых моделей на массивах общедоступных данных — не всегда хорошо, когда речь идёт о программировании. По его словам, в случае с Python таких данных гораздо больше, но не все из них качественные.

Ранее команда исследователей Университета Пердью проанализировала ответы ChatGPT на 517 вопросов Stack Overflow, чтобы оценить правильность, последовательность, полноту и краткость ответов чат-бота. Выяснилось, что 52% ответов чат-бота содержали ошибки, а 77% были слишком многословными.



Источник новости: habr.com

DimonVideo
2023-11-21T10:50:04Z

Здесь находятся
всего 0. За сутки здесь было 0 человек
Яндекс.Метрика