Нейросети пишут тексты, рисуют картины, сочиняют музыку и даже программируют, но основной их вклад лежит в области ассистирования. Они не просто пишут — они помогают редакторам, авторам и копирайтерам генерировать идеи. Они не просто рисуют, а создают концепты для художников. И наконец, они не просто кодят, а ассистируют программистам. Потому что в первую очередь нейросети — не криэйторы, они помощники.
Поговорим о том, как искусственный интеллект помогает программировать, на примере одного из самых популярных инструментов — GitHub Copilot. А о том, как начать кодить на Python при помощи ChatGPT, мы говорим на бесплатном вебинаре — присоединяйтесь!
Что такое GitHub CoPilot
Copilot (буквально «второй пилот») — разработанный компаниями GitHub и OpenAI инструмент дополнения кода, выпущенный в 2022 году. В его основе лежит генеративная нейросеть, которая анализирует написанный программистом код и предлагает варианты того, как его можно реализовать. Лучше всего он работает с такими языками как Python, JavaScript, TypeScript, Ruby и Go.
Анонсирован Copilot был еще в 2021 году и тогда же выпущен в виде плагина для интегрированной среды разработки Visual Studio Code. После окончания бета-тестирования инструмент был представлен широкой аудитории. Теперь любой разработчик может его использовать — или в виде расширения, или в рамках подписки Copilot Enterprise.
Про Visual Studio Code читайте тут: «Как настроить среду разработки Python в Visual Studio Code».
Какие фичи есть у ассистента:
- дополнение кода — Copilot предлагает варианты функции в режиме реального времени;
- чат-бот — у нейросети можно просто попросить совета, если какое-то место вызывает вопросы;
- саммари для пулл-реквестов — Copilot сам опишет изменения, которые кодер вносит в репозиторий;
- база знаний — или опция для создания документации с использованием нейросети.
Хотя в основе ChatGPT и GitHub Copilot лежит одна и та же большая языковая модель, более того, в их разработке принимала участие одна и та же компания, работают они по-разному. У чат-бота можно просто попросить написать код с нуля. Задача «второго пилота» — помогать «первому пилоту», или программисту.
Во время бета-тестирования разработчики оценивали, будет ли их инструмент действительно полезен кодерам. И, как оказалось, Copilot — именно то, чего не хватало программистам.
Как нейросети улучшают код
Первая версия Copilot в виде плагина была запущена в 2021 году, основная версия — в 2022 году. Целый год ушел у компании GitHub на то, чтобы исследовать, полезен ли он разработчикам.
Как оказалось, очень даже:
- 60-75% разработчиков отметили, что стали получать большее удовлетворение от своей работы, они ощущают меньше фрустрации и могут сфокусироваться на тех элементах кодинга, которые приносят им удовольствие;
- 87% сказали, что виртуальный ассистент помогает им сохранять ментальную стабильность, которая неизменно страдает при постоянном выполнении рутинных повторяющихся задач.
Это показал проведенный GitHub опрос 2000 кодеров.
Спустя год компания провела еще одно исследование, приуроченное к релизу очередной фичи — GitHub Copilot Chat, чат-бота, с которым можно посоветоваться по поводу кода. На этот раз эксперты наняли 36 программистов с опытом разработки от 5 до 10 лет, которых попросили поработать привычным образом, а потом опробовать GitHub Copilot Chat.
Результаты получились интересными:
- 85% разработчиков сказали, что с GitHub Copilot Chat стали чувствовать себя более уверенными;
- на 15% увеличилась скорость код ревью — так называется практика оценивания кода другими разработчиками;
- 88% опрошенных отметили, что им стало проще поддерживать так называемое «состояние потока», когда человек включен в работу и сфокусирован на ней.
Нейросети-ассистенты делают программистов продуктивнее, что подтверждает исследование, проведенное уже независимыми экспертами.
Написанному искусственным интеллектом коду необязательно быть идеальным. Он и не будет идеальным на том уровне развития нейросетей, который имеется сейчас. Но разработчики, использующие Copilot, воспринимают предложения нейросети как некий трамплин для генерации новых идей. Самый ощутимый эффект, как ни странно, наблюдается в тех ситуациях, когда программисты «выпадают из потока», когда у них нет хороших идей и даже особого желания работать.
Нейросеть помогает им оставаться сфокусированными даже в моменты, когда они по какой-то причине не могут писать код так же продуктивно, как в «пиковое» время. И это — отличная новость для всех, кто работает удаленно или в разных часовых поясах.
За год с момента релиза GitHub Copilot подключили к своим средам порядка миллиона индивидуальных разработчиков и около 20 000 организаций. Что это значит? Что нейросети востребованы — причем не чтобы заменить специалистов, а чтобы улучшить их работу: сделать более продуктивными, снизить ментальную нагрузку, убрать рутину, помочь в генерации новых идей. Как и ожидалось с самого начала, нейросети — это ассистенты, помощники человека, способные принести пользу в тех областях деятельности, которые требуют креативности.
Заменит ли искусственный интеллект человека? Нет! Он ему поможет.