ChatGPT заменит разработчиков?
Обновлено 25 января 2025 - 2 месяца назад. Devops.com.
ИИ снова набирает обороты благодаря недавнему выпуску ChatGPT, чат-бота на естественном языке, которого люди используют для написания электронных писем, стихов, текстов песен и эссе для колледжа. Первые пользователи даже использовали его для написания кода на Python, а также для реинжиниринга шелл-кода и его переписывания на C. ChatGPT вселил надежду в людей, ожидающих появления практических приложений ИИ, но также заставляет задуматься о том, не вытеснит ли он писателей и разработчиков так же, как роботы и компьютеры вытеснили кассиров, рабочих сборочных линий и, возможно, в будущем водителей такси.
Трудно сказать, насколько совершенными будут возможности ИИ по созданию текстов в будущем, по мере того как технология будет поглощать все больше и больше примеров нашего письма в Интернете. Но я вижу, что возможности программирования у него весьма ограничены. В конце концов, это может стать еще одним инструментом в наборе разработчика для решения задач, которые не требуют от инженеров-программистов навыков критического мышления.
ChatGPT произвел впечатление на многих людей, потому что он отлично имитирует человеческий разговор и звучит грамотно. Разработанный компанией OpenAI, создателем популярного ИИ-движка DALL-E, он работает на основе большой языковой модели, обученной на большом количестве текстов, взятых из интернета, включая репозитории кода. Он использует алгоритмы для анализа текста и тонкой настройки обучения системы, чтобы отвечать на вопросы пользователей полными предложениями, которые звучат так, как будто их написал человек.
Но у ChatGPT есть недостатки - те же ограничения, которые мешают использовать его для написания контента, делают его ненадежным и для создания кода. Поскольку он основан на данных, а не на человеческом интеллекте, его предложения могут звучать связно, но не давать критически обоснованных ответов. Кроме того, он использует оскорбительный контент, например, язык ненависти. Ответы могут звучать разумно, но могут быть крайне неточными. Например, на вопрос, какое из двух чисел, 1 000 и 1 062, больше, ChatGPT уверенно ответит, что 1 000 больше.
На сайте OpenAI приведен пример использования ChatGPT для отладки кода. Ответы генерируются на основе предыдущего кода и не имеют возможности повторить человеческий контроль качества, а значит, могут генерировать код с ошибками и недочетами. OpenAI признала, что ChatGPT "иногда пишет правдоподобные, но неправильные или бессмысленные ответы". "Именно поэтому его нельзя использовать непосредственно при создании программ.
Недостаточная надежность уже создает проблемы для сообщества разработчиков. Stack Overflow, сайт вопросов и ответов, который кодеры используют для написания кода и устранения неполадок, временно запретил его использование, заявив, что ChatGPT генерирует такое огромное количество ответов, что не может обеспечить контроль качества, который осуществляется людьми.
"В целом, поскольку средний процент получения правильных ответов от ChatGPT слишком низок, размещение ответов, созданных ChatGPT, наносит существенный вред сайту и пользователям, которые спрашивают или ищут правильные ответы".
Если не принимать во внимание ошибки в коде, то, поскольку ChatGPT, как и все инструменты машинного обучения, обучается на данных, которые соответствуют его результатам (в данном случае - текстовым), ему не хватает способности понять человеческий контекст вычислений, чтобы хорошо программировать. Инженеры-программисты должны понимать назначение создаваемого ими программного обеспечения и людей, которые будут его использовать. Хорошее программное обеспечение не может быть создано путем компоновки программ, состоящих из неоптимизированного кода.
Например, ChatGPT не может понять двусмысленность в простых требованиях. Хотя ясно, что если один мяч отскакивает и возвращается, а другой отскакивает и снова возвращается, то второй мяч пролетел дальше, ChatGPT борется с этим нюансом; этот нюанс будет необходим, если эти системы когда-нибудь придут на смену разработчикам.

У него также возникают проблемы с базовой математикой, например, когда его просят определить, что больше, и предлагают выбрать между отрицательным и положительным числом. ChatGPT уверенно говорит нам о правильном суммировании пространства, но не может понять, что -5 меньше 4. Представьте, что ваши термостаты сбились с ритма, потому что отопление включается при 40 градусах Цельсия, а не при -5, потому что программа искусственного интеллекта закодировала его таким образом!

Генерация предварительно обученного кода ИИ также вызывает некоторые юридические вопросы в отношении прав интеллектуальной собственности: в настоящее время он не может различать код, лицензированный в ограничительной или открытой форме. Это может подвергнуть людей риску соблюдения лицензионных требований, если ИИ заимствует заранее написанную строку кода из хранилища, защищенного авторским правом. Эта проблема уже стала причиной коллективного иска против другого продукта на базе OpenAI под названием GitHub Copilot.
Для создания программного обеспечения, на которое полагаются люди, нам нужны люди, но это не значит, что в разработке программного обеспечения не может быть места для ИИ. Подобно тому, как автоматизация используется операционными центрами безопасности для сканирования, мониторинга и базового реагирования на инциденты, ИИ может служить инструментом программирования для решения задач более низкого уровня.
В определенной степени это уже происходит. GitHub Copilot позволяет разработчикам использовать ChatGPT для улучшения кода, добавления тестов и поиска ошибок. Amazon предлагает CodeWhisperer, инструмент на машинном языке, призванный повысить производительность разработчиков с помощью рекомендаций по коду, генерируемых на основе комментариев на естественном языке и кода в интегрированной среде. А кто-то создал расширение кода Visual Studio, которое работает с ChatGPT.
А одна компания тестирует ИИ для разработчиков. DeepMind, материнская компания которой принадлежит Google, выпустила свой собственный инструмент для генерации кода, получивший название AlphaCode, в начале этого года. В начале этого месяца DeepMind опубликовала в журнале Science под заголовком "Системы машинного обучения тоже могут программировать" результаты симуляционных оценок в соревнованиях на платформе Codeforces. Не обращая внимания на грамматику заголовка, AlphaCode заняла место в 54 % лучших участников, решив задачи, "требующие сочетания критического мышления, логики, алгоритмов, кодирования и понимания естественного языка". В аннотации к работе говорится: "Разработка таких платформ для кодирования может оказать огромное влияние на производительность труда программистов. Это может даже изменить культуру программирования, переключив работу человека на формулирование проблем, а машинное обучение будет ... отвечать за генерацию и выполнение кодов".
Системы машинного обучения с каждым днем становятся все более совершенными, однако они не могут мыслить так, как мыслит человеческий мозг. Так было на протяжении последних 40 с лишним лет изучения искусственного интеллекта. Хотя эти системы могут распознавать закономерности и повышать производительность при выполнении простых задач, они не всегда могут создавать код так же хорошо, как человек. Прежде чем мы позволим компьютерам массово заниматься созданием кода, мы должны увидеть, как системы вроде AlphaCode войдут в 75 % лучших участников на такой платформе, как Codeforces, хотя я боюсь, что это может быть слишком много для такой системы. Тем временем машинное обучение может помочь в решении простых проблем программирования в будущем, позволяя разработчикам завтрашнего дня думать о более сложных вопросах.
На данный момент ChatGPT не разрушит ни одну область технологий, особенно программную инженерию. Опасения по поводу того, что роботы вытеснят программистов, сильно преувеличены. Всегда будут существовать задачи, которые могут выполнять разработчики с человеческим мышлением, и которые никогда не будут под силу машинам.
Эта статья является экземпляром Текста-спринтера. Такие тексты отлично продвигают сайты в ТОП органического поиска Яндекс и Google. Здесь я пишу об этом более подробно.

Искренне Ваш,
Nikita Interactive
Это реальная история!
Раздел с Текстами-спринтерами привлек 18 090 пользователей за 9 месяцев.
На новом сайте. Без ссылок.
Измеримые результаты и устойчивый успех.