Исследовательская работа утверждает, что использование инструментов с искусственным интеллектом помогает разработчикам выполнять на 26,08 % больше задач.

На тысячах разработчиков из Microsoft, Accenture и некой анонимной компании проводили эксперимент: примерно половине сотрудников выдали доступ к Copilot, а другим пользоваться инструментом не разрешали. Сравнение данных двух групп говорит о положительном эффекте от написания кода с помощью искусственного интеллекта.

Бум генеративного искусственного интеллекта должен лишить миллионы людей работы. Большие языковые модели (БЯМ), системы генерации картинок, голоса, музыки и видео творят не хуже людей. Такие катастрофические последствия для рынка труда начали предсказывать ещё до выхода ChatGPT и Claude.

К примеру, отчёт McKinsey Global Institute, исследовательского отдела известной международной консалтинговой компании McKinsey, в июне 2018 года утверждал, что к 2030 году 400 миллионов человек (15 % от общего числа работников) потеряют работу. Схожий прогноз — 300 млн рабочих мест будут автоматизированы — дал банк Goldman Sachs уже во время нового «лета» ИИ в апреле 2023 года.

Менее алармистские исследования на тему ИИ (например, отчёт от Международной организации труда ООН) говорят о помощи работникам-людям, а не их замене. Роль этой помощи оценивают по-разному. Одна из статей даже провозглашает, что ChatGPT значительно поможет четвёртой промышленной революции (doi:10.1016/j.ject.2023.08.001). Некоторые утверждают, что макроэкономический эффект от ИИ будет незначительным, не более 0,66 % роста производительности труда за следующее десятилетие (doi:10.3386/w32487).

В июне 2023 года McKinsey выпустила другой документ, который фокусируется на экономическом потенциале от ИИ. Отчёт отмечает, что общий вклад ИИ в росте глобального ВВП составит от 15 до 40 %. Также McKinsey выделила четыре основные сферы, куда придётся ¾ влияния искусственного интеллекта: взаимодействие с клиентами, маркетинг, НИОКР и написание программного обеспечения.

Действительно, много стартапов пытаются создать ИИ для написании кода. На сайте AI Startups собран список из 30 подобных организаций. Не все из них — очередная система автодополнения кода; некоторые предлагают полностью заменить инженеров-людей автономными агентами. К числу подобных относится Devin от Cognition, представленный в марте 2024 года. Об успехах продукта можно судить по тому, что сам стартап-создатель Devin не закрывал наём инженеров программного обеспечения.

Впрочем, системы автодополнения и написания кода с нуля всё же завоевали популярность среди программистов. Некоторые даже утверждают об их абсолютном проникновении. В июне 2023 года данные опроса GitHub говорили, что 92 % разработчиков из США задействуют инструменты с ИИ для написания кода. В аналогичных отчётах GitHub от августа 2024 доля выросла до 97 %.

Другие оценки популярности таких инструментов выглядят скромнее. Только в июле 2024 года вышло как минимум три отчёта на эту тему. Опрос аутсорсера BairesDev оценивает популярность генеративного ИИ для написания кода среди разработчиков в 72 %, Stack Overflow — 62 %, Capgemini — лишь 46 %.

Конкретные числа разнятся, но все подобные отчёты соглашаются, что ИИ значительно помогает разработчикам. Свою лепту в оценки технологии пытается внести опубликованная 5 сентября статья, которую написали Чжэюань (также использует второе имя Кевин) Цуй из Принстонского университета, Мерт Демирер и Тобиас Зальц из Массачусетского технологического института, Соня Яффе из центра Microsoft Research, Леон Музольф из Пенсильванского университета и Сида Пэн из Microsoft.

Инструментов автодополнения кода на основе искусственного интеллекта много: это GitHub Copilot, Amazon CodeWhisperer, Replit Ghostwriter и другие. Исследование фокусировалось только на первом из них. Случайно выбранные программисты получали доступ к Copilot (экспериментальная группа), а другие (контрольная) работали без него. Анализу подвергли разработчиков трёх компаний:

  • Microsoft. Эксперимент шёл на протяжении 7 месяцев и задействовал 1746 разработчиков из американских офисов компании. Из них 50,4 % случайной выборкой попали в экспериментальную группу.

    В один день члены экспериментальной группы получили письмо о возможности получить доступ к новому инструменту. Письмо описывало пользу Copilot для производительности труда и потенциальный эффект на задачи по написанию кода. При этом ни письмо, ни любые другие должностные инструкции никак не требовали задействовать новинку в работе и не объясняли, как пользоваться Copilot.

    Эксперимент шёл с первой недели сентября 2022 года по 3 мая 2023 года. Как объясняет статья, в дате окончания сыграло роль то, что среди контрольной группы возросла информированность о Copilot и появилось желание задействовать его в работе.

    Письма, которые получили экспериментальная (выше) и контрольная (снизу) группы
    Письма, которые получили экспериментальная (выше) и контрольная (снизу) группы
  • Accenture. Здесь эксперимент длился 4 месяца и задействовал разработчиков из, как обтекаемо выражается статья, Юго-Восточной Азии. Если судить по локациям компании с её сайта, это могли быть офисы в Малайзии, Сингапуре, Таиланде, Индонезии и/или на Филиппинах.

    61,3 % из 320 разработчиков получили доступ к Copilot. Аналогичным образом экспериментальной группе объяснили о пользе инструмента, но не в виде письма, а полноценного тренинга. Другое отличие заключается в том, что менеджеров членов экспериментальной группы просили стимулировать использование Copilot.

    Экспериментальной группе выдали Copilot в первую неделю июля 2023 года. В декабре 2023 инструментом разрешили пользоваться и контрольной группе, но среди её членов популярность Copilot оказалась ниже.

    Во время некоторых экспериментов в Accenture прошёл раунд сокращений, затронувший 42 % участников. Данные этих экспериментов были отброшены из основных выводов.

  • Некая третья компания, имя которой не называется. Упоминается лишь, что это производитель электроники, который входит в список Fortune 100. В этом случае Copilot выдали всем 3054 разработчикам, но не одновременно — часть команд получила инструмент на шесть недель раньше остальных. Даты выдачи инвайтов распределили случайно по сентябрю и октябрю 2023 года.

Продуктивность разработки программного обеспечения измерить тяжело. В оценке помогало то, что процесс работы структурирован и разбит на небольшие задачи в системах управления версиями. Говоря проще, исследователи посчитали пул-реквесты в GitHub, поскольку все три компании пользовались этим сервисом. Также подсчитывались коммиты, билды и доля успешных билдов.

Кроме того, учитывалось то, как использовался Copilot, сколько кода ИИ предложил и сколько сгенерированного принял разработчик. В случае Microsoft исследователям дали данные по дате найма сотрудников и их уровень внутри компании, что позволило оценить профессиональные навыки.

Полученные результаты (кроме успешности билдов) имеют высокие значения стандартного отклонения. Отмечается, что высокая вариативность ограничивает качество регрессионного анализа экспериментальных данных.

Сравнение контрольной и экспериментальной группы до начала эксперимента. Чем меньше разница, тем «чище» эксперимент.

Контрольная группа

Экспериментальная группа

Среднее

Стандартное отклонение

Среднее

Стандартное отклонение

Разница

p-значение

Microsoft

Пул-реквесты

0.86

1.49

0.87

1.50

0.01

0.88

Коммиты

9.43

14.86

9.36

14.80

-0.07

0.94

Билды

7.76

12.99

7.67

12.73

-0.09

0.91

Доля успешных билдов

0.72

0.30

0.75

0.29

0.02

0.33

Недавно нанятые

0.48

0.50

0.52

0.50

0.04

0.23

Джуны

0.55

0.50

0.61

0.49

0.06

0.03**

Accenture

Пул-реквесты

0.13

0.47

0.14

0.47

0.00

0.85

Коммиты

2.56

6.00

3.64

7.25

1.08

0.01**

Билды

0.96

2.54

1.10

2.68

0.14

0.38

Доля успешных билдов

0.51

0.37

0.54

0.38

0.03

0.40

Анонимная компания

Пул-реквесты

0.73

1.23

0.73

1.19

-0.00

0.99

Накладывает отпечаток также нежелание самих подопытных прибегать к новому инструменту. Хотя Copilot интегрирован в среды разработки и не требует никаких особых финансовых или трудовых вложений, его популярность далеко не 100 %.

  • В первые две недели эксперимента лишь 8,5 % членов экспериментальной группы Microsoft начали использовать Copilot в работе. Вероятно, что письмо просто утонуло в потоке рабочей переписки. 15 и 28 февраля 2023 года внутри Microsoft разослали два дополнительных письма-напоминания. В последовавшие за этим две недели использование Copilot в экспериментальной группе возросло до 42,5 %.

    Также 0,5 % контрольной группы задействовали Copilot, наплевав на ограничения эксперимента. Когда контрольной группе всё же разрешили инструмент, многие из них быстро к нему подключились.

    К январю 2024 года использование Copilot в контрольной группе оказалось ниже, чем в экспериментальной. Вероятно, что в статье опечатка, поскольку для этого приводятся процентовки 75,6 % и 64,0 %, соответственно.

  • В Accenture популярность Copilot в первые 1–2 месяца послушно выросла до 60 %, но больше почти не менялась. По окончании эксперимента в декабре 2023 года контрольная группа интересовалась инструментом меньше, чем экспериментальная. В апреле 2024 доля использующих Copilot составила 69,4 % в экспериментальной и 24,4 % в контрольной группах.

  • Аналогичным образом ситуация сложилась в анонимной компании: сразу после раскатывания Copilot доля его использующих вышла на плато и в дальнейшем менялась сла́бо.

Данные анализировались в приближении к одной человеко-неделе. Чтобы оценить эффективность Copilot, исследование задействует формулу

y_{it} = \beta D_{it} + \mu_i + \gamma_t + \epsilon_{it}.

Значение оценивалось двухшаговым методом наименьших квадратов. Здесь β — коэффициент интереса, Dit — это фиктивная переменная внедрения, которая активируется после того, как разработчик впервые использует Copilot, µi — это фиксированный эффект разработчика, аγt — это фиксированный эффект недели. Работа с данными, где разработчики постепенно получали доступ к инструменту, оценивалась ещё сложнее.

Данные оценки β собрали в таблицу, сравнив со средним значением контрольной группы. Стандартные ошибки сгруппированы на уровне назначения экспериментальной группы, которое варьируется по компаниям.

Показатель

Microsoft

Accenture

Анонимная компания

Объединённые данные

Пул-реквесты

27.38** (12.88)

17.94 (18.72)

54.03 (42.63)

26.08** (10.3)

Коммиты

18.32 (11.25)

-4.48 (21.88)

-

13.55 (10.0)

Билды

23.19 (14.20)

92.40*** (26.78)

-

38.38*** (12.55)

Доля успешных билдов

-1.34 (4.23)

-17.40** (7.12)

-

-5.53 (3.64)

Число разработчиков

1,521

316

3,030

4,867

Число групп

690

316

432

1,438

Если верить полученным данным, Copilot повысил в Microsoft число пул-реквестов, коммитов и билдов без значимого ущерба для коммитов (лишь –1,34 % при стандартной ошибке 4,23 %). Для других двух компаний заявлены схожие наблюдения, но указывается, что их статистический эффект не так выражен. Вероятно, поэтому усреднённое число в 26,08 % из последней колонки вынесли в раздел Abstract краткого содержания научной статьи и преподнесли как рост продуктивности.

Также в среднем заметно выросло число еженедельных коммитов, на 13,55 % (стандартная ошибка 10,0 %), и количество билдов в неделю, на 38,38 % (стандартная ошибка 12,55 %). Текст статьи утверждает, что Copilot не только помогает делать больше — качество не падает. Как говорит исследование, показатель успешности билдов не снизился. Впрочем, в таблице в последнем столбце с усреднениями всё же заметен отрицательный рост в 5,53 %.

Среди других наблюдений:

  • Сотрудников Microsoft разбили на новых (меньше медианы времени найма) и давно работающих в компании (больше). Оказалось, что новички чаще — 84,3 % против 74,8 % — используют Copilot. Более того, новые сотрудники чаще ветеранов Microsoft продолжают использовать Copilot в дальнейшем и чуть более охотно (25,4 % против 24,3 %) принимают сгенерированный инструментом код.

    Как спекулирует статья, так происходит потому, что новички — люди по возрасту молодые и способные извлечь больше пользы из нового инструмента.

  • Аналогичный эффект наблюдается, если разбить разработчиков Microsoft по уровням. Джуны используют Copilot больше (82,1 % против 76,8 %) старших разработчиков. В данном случае неравенства частоты отказа от Copilot не наблюдается.

    Легко предположить, что сеньоры принимают предложения от ИИ реже, чем джуны. Однако в исследовании эта разница незначительна: всего 1,8 % или половина процентного пункта, 25,2 % против 24,7 %.

  • Вклад Copilot в продуктивность выше для новых сотрудников Microsoft и джунов. Если для давно работающих в компании рост показателей составил от 8 до 13 %, то новички улучшились на 27–39 %. Утверждается, что разница по уровням не так заметна: для джунов она составляет от 21 до 40 %, для сеньоров — от 7 до 16 %.

Сто́ит отметить, что GitHub Copilot перевели на БЯМ GPT-4 лишь 30 ноября 2023 года, уже позже основного периода эксперимента. Большинство полученных данных относится к периоду, когда код писать помогала заметно более примитивная модель GPT-3.5. А со вчерашнего дня GitHub раскатывает на избранных пользователей o1, одну из самых многообещающих БЯМ компании OpenAI. Новая модель опережает в точности и производительности даже GPT-4/GPT-4o.

Препринт научной статьи «The Effects of Generative AI on High Skilled Work: Evidence from Three Field Experiments with Software Developers» опубликован в хранилище препринтов Social Science Research Network (doi:10.2139/ssrn.4945566).

Комментарии (16)


  1. panzerfaust
    20.09.2024 11:16

    Я, конечно, в матстате не шарю. Но разве первая таблица не говорит о том, что разница между 2 группами незначительна?


    1. atomlib Автор
      20.09.2024 11:16

      Это данные до начала эксперимента. Чем меньше там разница, тем лучше. Добавил подпись, спасибо.


      1. panzerfaust
        20.09.2024 11:16

        Ок. Понял. Тогда в итоговой таблице строка "Доля успешных билдов" с минусами интересная выходит. Фигачим больше кода, но он прям заметно хуже работает - я правильно понял?


        1. atomlib Автор
          20.09.2024 11:16

          В отчёте исследования это обходится стороной. Утверждается, что качество не меняется. Вероятно, падение в 5,53 % считается статистически незначительным.


        1. Krasnoarmeec
          20.09.2024 11:16

          А  "доля успешных билдов" с минусами - это что значит? Не скомпилился или не прошёл тесты?

          И в том и в другом случае те, кто перед коммитом не запускает автотесты - так себе разрабы.


          1. panzerfaust
            20.09.2024 11:16
            +1

            Подозреваю, что подопытных так восхитил Копилот, который аж все сам делает, что они роняя слюни скорее бежали делать ПР без локальных проверок, чтобы похвастаться своей невероятной продуктивностью.


  1. ritorichesky_echpochmak
    20.09.2024 11:16
    +3

    Эксперимент шёл на протяжении 7 месяцев и задействовал 1746 разработчиков

    А можно где-то рядом график о том, насколько больше делают люди за которыми наблюдают и регулярно спрашивают про эту всю чехарду и рядом такой же с графиком насколько быстрее они сгорают в хлам? А то вдруг окажется что если в людей постоянно тыкать палкой без аишечки, то они ещё больше успеют...


  1. panzerfaust
    20.09.2024 11:16
    +3

    В общем получается, что выросло число ПРов, но упало число успешных билдов. Непонятно, почему исследователи фокусируются на первом и оставляют без внимания второе. Это в общем-то инь и ян процесса деливери.

    • Без ПРа нет билда.

    • Упавший билд означает, что ПР так себе (не берем в расчет флакающие тесты - они и без всякого ИИ бывают), и ведет к тому, что ты делаешь еще один коммит в ПР, чтобы исправить упавший билд. Можно набить много таких коммитов.

    • Когда билд успешен, но код не выполняет бизнес-требования, то ты открываешь еще один ПР. Пока задача ходит по кругу In Progress - In Testing, то можно очень сильно повысить количество ПРов без повышения фактической полезности своей деятельности.

    Хорошей метрикой было бы уменьшение среднего времени, которая задача проводит в пути In progress -> Done.

    В общем у меня вау-эффекта нет. Но исследование полезное. Потоки хайпа нужно охлаждать реальными цифрами.


    1. Einherjar
      20.09.2024 11:16
      +3

      Непонятно, почему исследователи фокусируются на первом и оставляют без внимания второе.

      "так слона не продашь"


      1. panzerfaust
        20.09.2024 11:16

        Ну а так его продашь только легендарным индусским потогонкам. Или в MS реально считают KPI по количеству ПРов? Это ж кринж какой-то эпический.


        1. Einherjar
          20.09.2024 11:16
          +1

          Ну а так его продашь только легендарным индусским потогонкам

          В этом и смысл. А сгенерированный код может даже и читаемее индусского будет


  1. alexhott
    20.09.2024 11:16

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


  1. Advisers
    20.09.2024 11:16

    Интересно было бы услышать в таких статьях - как относятся клиенты/заказчики к ситуации, если исполнители/программисты используют в своей работе ЭйАй... готовы ли они платить за работу меньше? больше? Как они относятся к безопасности такой работы, соглашаются ли они "шарить" код в такое окружение? Ожидают ли они сокращение времени от исполнителей, более качественные результаты? Готовы ли они набирать больше дешевых джунов или наоборот? ...в каких отраслях?

    ... и что же происходит при этом на практике ("под капотом", т.е. на самом деле)?


  1. mentin
    20.09.2024 11:16
    +1

    Обожаю такое - 26.08%. Не 26% или хотя бы 26.1%, а 26.08. Хотя стандартные отклонения такие что и в 6-ке уверенным быть нельзя. Куда делось правило, что результат надо округлять до значащих цифр?


    1. Advisers
      20.09.2024 11:16

      Сперва нужно убедиться, что все понимают что такое значащие цифры )

      (к этому сразу нужно добавлять вопросы про средние температуры по больнице.... по частоте использования в разного рода отчетах и выступлениях)


      1. Advisers
        20.09.2024 11:16

        Кстати, даже здесь встречаются люди, которые уверены, что математика в школе не очень важна..., а потом мы встречаем в IT сфере сотрудников, для которых удивительно легко показывать вот такие цифры в презентациях для клиентов..., и если клиенты не с таким же "бэкграундом", а все таки имеют нормальную математическую культуру - ...то такие презентации для них, без объяснений, красный флажок...