LINUX.ORG.RU

Оценка эффективности применения AI-инструментов выявила замедление, а не ускорение разработки

 , ,


0

1

Исследовательская группа METR (Model Evaluation & Threat Research) опубликовала результаты эксперимента по оценке эффективности применения AI-инструментов для написания кода. Вопреки ожиданиям, исследование показало, что AI-помощники не ускоряют, а замедляют решение поставленных задач, при том, что субъективно участники эксперимента считали, что AI ускорил их работу.

Фактически при использовании AI-помощника на решение задачи в среднем было потрачено на 19% больше времени, в то время как участники полагали, что благодаря AI смогли выполнить работу на 20% быстрее, а до начала работы считали, что AI поможет им ускорить работу на 24%. Результаты также значительно расходятся с прогнозами экспертов в области экономики и машинного обучения, которые предсказывали экономию времени при использовании AI на 39% и 38%, соответственно.

В ходе эксперимента 16 разработчикам открытых проектов, имеющим средний опыт работы с AI-инструментами, было предложено решить 246 задач, связанных с исправлением ошибок и добавлением новых возможностей. Задачи были сформированы на основе реальных issue в GitHub-репозиториях проектов, с которыми у выбранных разработчиков был опыт работы не менее 5 лет. Случайным образом часть задач предлагалось решить вручную, а часть с использованием любого AI-помощника на выбор разработчика (большинство предпочли редактор кода Cursor с моделью Claude 3.5/3.7 Sonnet).

В эксперимент, который проводился с февраля по июнь 2025 года, были вовлечены такие открытые проекты, как mito, stdlib, ghc, cabal, flair, jsdom, hypothesis, trieve, scikit-learn, gpt-neox и transformers. В среднем задействованные проекты имели 23 тысячи звёзд на GitHub, 1.1 млн строк кода, 20 тысяч коммитов и 710 участников.

Упоминаются следующие возможные причины замедления решения задач при использовании AI:

  • Низкое качество AI-рекомендаций - разработчики приняли менее 44% от сгенерированных AI предложений и потратили много времени на их чистку и проверку.

  • Излишний оптимизм в плане полезности AI и завышенные ожидания от возможностей AI-инструментов.

  • Большой опыт работы участников с репозиториями, для которых решались задачи. Разработчики очень хорошо ориентировались в проектах и помощь AI в этой ситуации не представляла ценности.

  • В эксперименте использовались слишком крупные и сложные репозитории, с которыми AI работает хуже.

  • Неявный контекст репозитория - AI не понимал контекст, в котором работал.

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

>>> Подробности на opennet

★★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 2)
Ответ на: комментарий от Ygor

Не, я использую его только как сильно крутое автопополнение - иногда по контексту он сразу нужные аргументы в функцию добавляет и т.п., быстро комментарии... В таком режиме и правда быстрее. Т.е. алгоритмы я сам придумываю.

Shadow ★★★★★
()

Claude 3.5 - старая унылая модель для кодинга.

АИ категорически помогает ускориться в мелких задачах, а если хотя бы как в AI Studio доступен миллион токенов в контекстном окне, то и в средних.

One ★★★★★
()
Ответ на: комментарий от One

По опыту срачей «AMD vs Intel», мы в шаге от «Тесты не тесты» со всеми вытекающими: модель старая, кванты говно, bartowski vs unsloth, кривой p-top, низкая/высокая температура, участники эксперимента джуны, а вот если поменять пару байт вот в этом 100Гб файле, то...

DarkAmateur ★★★★
()
Последнее исправление: DarkAmateur (всего исправлений: 5)

Ничего удивительного. Опытному разработчику проще всё самому сделать чем глупостями заниматься.

PS недавно мне пытались рассказать что от ИИ буст, но по факту никакого буста не обнаружилось. http://python.su/forum/topic/43647/?page=3#post-233989

Rodegast ★★★★★
()
Последнее исправление: Rodegast (всего исправлений: 1)

Ну как посмотреть на выводы статьи. По тому что я прочёл, можно сделать вывод не в том, что llm плох, а в том, как его использовали. Опыт в программировании не равен опыту в промпт-инжиниринге, а особенно работы с контекстом llm. Чтобы заставить llm эффективно работать с проектом на миллион (или сколько там в этих проектах) строк кода, недостаточно просто открыть cursor. Нужно понимать, как работают RAG-пайплайны, как комбинировать их с традиционными методами поиска вроде BM25, как использовать модели-реранкеры для повышения релевантности. Сейчас для работы с RAG ставят отдельную llm, которая анализирует запрос и преобразует его в оптимальный, структурированный json для RAG.

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

mamina_radost
()
Ответ на: комментарий от mamina_radost

Опыт в программировании не равен опыту в промпт-инжиниринге, а особенно работы с контекстом llm.

Раньше люди не умели задавать вопросы Гуглу, теперь учатся задавать вопросы ИИ…

TechnoMag ★★
()
Ответ на: комментарий от TechnoMag

Раньше люди не умели задавать вопросы Гуглу

Они и не научились, им просто перестало это быть нужно. Дальше первого рекламного сайта и википедии они и не ходили.

теперь учатся задавать вопросы ИИ

Да, к сожалению, нужно учиться работать с инструментом, если было принято решение завязатать на нём работу проекта в сотни тысяч/миллионы строк кода.

mamina_radost
()
Ответ на: комментарий от mamina_radost

Долгие годы для многих становилось неприятным сюрпризом, что комп делает ровно то, что ты его попросишь делать, а не то, что ты подразумеваешь. ИИ делает ровно то же самое, но в рамках своего «разумения». При этом ИИ слегка может понимать чего ты подразумеваешь, а не просишь.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от mamina_radost

т.е. получается сейчас нужен программист для кода и еще один программист для написания промтов в json? очень эффективно

daminatorus ★★
()
Ответ на: комментарий от daminatorus

ставят отдельную llm, которая анализирует запрос и преобразует его в оптимальный, структурированный json для RAG.

llm

еще один программист для написания промтов в json?

еще один программист

Вам точно нужен отдельный человек или llm, чтобы справиться с прочтением комментария.

mamina_radost
()
Ответ на: комментарий от daminatorus

Представь, что ты рубишь деревья топором. В день аж 5 деревьев, что в среднем круто.

Вдруг тебе дают новую модную бензопилу и ты начинаешь ею стучать по дереву, как топором. Производительность падает до 1 дерева.

А кто виноват? Конечно же пила.

LightDiver ★★★★★
()

А вот альтернативная точка зрения: Cloudlflare builds OAuth with Claude and publishes all the prompts.

Kenton Varda, технический лидер из компании Cloudflare написал библиотеку на языке TypeScript, которая реализует сторону провайдера протокола OAuth 2.1 с поддержкой PKCE.

Библиотека в основном была написана с помощью Claude.

Вот цитата самого Kenton: «Я потратил несколько дней, чтобы написать эту библиотеку с помощью ИИ. По моей оценке мне бы потребовалось несколько недель, может быть месяцев, чтобы написать её вручную.»

vbr ★★★★★
()
Ответ на: комментарий от vbr

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

Он просто статью выше не читал, иначе он бы написал библиотеку на 19% быстрее, чем это сделал с claude.

mamina_radost
()
Ответ на: комментарий от vbr

Я сравниваю свою работу до ИИ и с ИИ, скорость в среднем даже замедлилась, да, но это если считать по строкам.

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

Потом возникает опыт и понимание как именно лучше писать. Что нужно продумывать архитектуру. А ИИ еще и добавляет проверки всевозможные на крайние случаи, на типы данных.

В итоге написание вместо бездумного строчения кода превратилось в задумчивое мышление над кодом с редким написанием. Наполняемость кода смыслом возросла раз в 20, баги ушли как класс, практически не вылазят - их нет.

Так же ИИ может мыслить довольно глубоко и изворотливо, рисуя красиво и быстро там интерфейсы, где ты бы возился в 20 раз дольше и сделал бы хуже, а потому получается еще и красиво и удобно.

Так что тут спорно. Чтобы написать так же, как с ИИ мне бы понадобилось лет 10 вместо полугода, но чтобы написать плюс минус 80% такой же функциональности криво и без ИИ - месяца два. Но это все в итоге уперлось бы в невозможность развивать, как уперся мой прошлый проект на 36 тысяч строк. Его тупо больше невозможно допиливать - это коллекция костылей.

Тут я в чем то понимаю разрабов вэйленда и почему они отказались от иксов.

Прошлый проект я пилил три года. Вышло 36 тысяч строк. Новый за полгода занимает тысяч 16 строк, а функциональность очень сложно сравнивать. Напрямую функций в новом процентов 20 от старого, но теперь интерфейсы двигаются, масштабируются, везде проверки всякие, все легко настраивается итд итп. Вообще другой уровень проекта. Ноль дублирования кода, все строго в рамках ООП.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от LightDiver

Представь, тебе дают новую модную бензопилу, а ее нужно сначала примонтировать к дереву, подключить к генератору, выставить по уровню, использовать для каждого дерева индивидуальную цепь

daminatorus ★★
()
Ответ на: комментарий от daminatorus

Скорее тебе дают бригаду лесорубов, понимаешь? Но ты, как бригадир, должен им объяснить что делать. Половина из них может забухать и решать это нужно тебе.

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

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от mamina_radost

похоже это вам нужна llm, для понимания написаного

судя по всему реальной разработкой вы никогда не занимались

ставят отдельную llm, которая анализирует запрос и преобразует его в оптимальный, структурированный json для RAG.

ехал llm через llm, видит в llm llm…

daminatorus ★★
()
Ответ на: комментарий от LightDiver

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

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

На текущий момент код, сгенерированный ИИ, принципиально ничем не отличается от кода, написанного коллегой, который я должен интегрировать в свой проект. И отношение у меня такое же - я его просто весь перепишу.

Но, в отличие от коллеги:

Во-первых ИИ можно «дрочить» до победного, заставлять его переписывать код сколько угодно, вводить сколько угодно правил и он будет слушаться.

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

Поэтому я всё же полагаю, что когда-нибудь мне удастся интегрировать ИИ в свою работу полностью, переложив на него написание кода и не испытывая от этого фрустрации.

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

vbr ★★★★★
()
Ответ на: комментарий от vbr

У меня очень мало опыта и знаний, он мне охренеть сколько нового и полезного во время работы подсказывает. И меня до сих пор поражает как он может понимать контекст - именно предугадывает то что хочу, а не то что я прошу.

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

Я думаю для профессионалов он реально на порядок менее полезен просто.

LightDiver ★★★★★
()
Ответ на: комментарий от daminatorus

ехал llm через llm, видит в llm llm…

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

mamina_radost
()
Ответ на: комментарий от mamina_radost

Я тебе больше скажу - калькуляторами пользуются только нубы, профессионал знает, что у него не всегда рядом будет калькулятор и считает на бумажке в столбик.

LightDiver ★★★★★
()
Ответ на: комментарий от mamina_radost

Опыт в программировании не равен опыту в промпт-инжиниринге

…что отлично отражено в народной мудрости про ворочанье мешков.

thesis ★★★★★
()
Ответ на: комментарий от LightDiver

И меня до сих пор поражает как он может понимать контекст - именно предугадывает то что хочу, а не то что я прошу.

Ничего удивительного. Почти все нубы прутся по одним и тем же дорожкам с одними и теми же граблями.

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)
Ответ на: комментарий от mamina_radost

Опыт не просто не равен, а еще нужно понимать особенность того или иного ИИ, понимать как он знает предмет работы, его косяки, особенности.

Вот для моего устаревшего сервера все ИИ раз за разом предлагали апи из новых версий. А их у меня просто нет. Сначала я исправлял, объяснял, пытался вручную переделывать. Потом плюнул и просто реализовал инструменты из новх версий. Сам вручную написал нужное. И так хорошо стало - и инструменты то удобные, не просто же так их запилили и сразу подход правильный.

LightDiver ★★★★★
()

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

alysnix ★★★
()
Ответ на: комментарий от DarkAmateur

модель старая, кванты говно, bartowski vs unsloth, кривой p-top

Чот изучение помощника в написании хелоуворлдов выглядит сложнее написания хелоуворлдов.

thesis ★★★★★
()

В ходе эксперимента 16 разработчикам

На этом можно было закончить, масштабы экскримента просто поражают.

anc ★★★★★
()

Что очень важно, но никак не отражается в исследовании - это разная требуемая квалификация программиста. Возможно, это лишь предположение, а не утверждение, для написания кода с помощью AI требуется меньшая квалификация, и результат будет дешевле.

VIT
()
Ответ на: комментарий от mamina_radost

По тому что я прочёл, можно сделать вывод не в том, что llm плох, а в том, как его использовали. Опыт в программировании не равен опыту в промпт-инжиниринге, а особенно работы с контекстом llm.

Ну т.е. сначала надо выучится на программиста, потом на «промт-инженеринг» и вот тогда точно взлетит? Напоминает «ноги, крылья и хвосты».

anc ★★★★★
()
Ответ на: комментарий от VIT

Самое ироничное тут, что ИИ убивает именно джунов. Они теперь не нужны и никто не задумывается откуда будут браться квалификации опытных.

LightDiver ★★★★★
()
Ответ на: комментарий от DarkAmateur

Да и плевать. Будет как с мобилками: все пользуются, никто не понимает, как они работают (и всем похер), и никто не считает себя ИНЖЕНЕРОМ на основании умения возюкать пальцем по экрану.

thesis ★★★★★
()
Ответ на: комментарий от LightDiver

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

Сам использую в работе 2 ИИ и могу подтвердить, что разработка замедлилась, т.к. нужно проверять, что они генерируют, т.к. в 70% случаев ИИ предлагает старые библиотеки и методы

daminatorus ★★
()

Пока еще работа с формальными языками у LLM оставляет желать лучшего.

Они хороши, когда нужно классифицировать какие-то данные, накидать список технологий или инструментов, похожих на описанные, объяснить общие принципы технологии, добавить «мясо» в статью и т.п.

wandrien ★★★
()
Последнее исправление: wandrien (всего исправлений: 1)

Зато как быстро он техдолг генерирует!

Nervous ★★★★★
()
Ответ на: комментарий от mamina_radost

Нужно понимать, как работают RAG-пайплайны, как комбинировать их с традиционными методами поиска вроде BM25, как использовать модели-реранкеры для повышения релевантности. Сейчас для работы с RAG ставят отдельную llm, которая анализирует запрос и преобразует его в оптимальный, структурированный json для RAG.

Чувак, тебе жить не страшно?

Rodegast ★★★★★
()
Ответ на: комментарий от VIT

АИ в области разработки ПО пока несовершенен, и требуется квалификация, чтобы разыскать все его ошибки. Хорошо, если код падает сразу, плохо, если ошибки будут сидеть ожидая своего часа.

То есть код по любому подвергается читке квалифицированным разрабом, дабы вскрыть темные места.

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

alysnix ★★★
()
Ответ на: комментарий от LightDiver

С 1 сентября 2025 г. Минцифры совместно с вузами и IT-компаниями запустит новую программу подготовки высококвалифицированных IT-кадров уровня «сеньор», в том числе для направлений искусственного интеллекта (ИИ)

:)

sabacs
()
Ответ на: комментарий от sabacs

Ну ты же понимаешь, что нигде кроме реальной практики нельзя подготовить специалиста? За пять лет в ВУЗе можно подготовить личинку специалиста, который будет знать некоторую теорию, но затем ему нужно будет еще * лет, чтобы стать реальным специалистом.

LightDiver ★★★★★
()
Ответ на: комментарий от LightDiver

По окончании программы «цифровой кафедры» студент получает диплом государственного образца о профессиональной переподготовке

Кучушев уточнил, что по проекту «цифровых кафедр» на обучение по IT-направлениям было принято около 500 000 студентов из 48 регионов России. Из них уже 367 000 прошли комплексную переподготовку, 231 000 завершает обучение

В общем пол миллиона сеньоров уже есть :)

sabacs
()
Последнее исправление: sabacs (всего исправлений: 1)
Ответ на: комментарий от sabacs

У меня сейчас прорывается что то саркастическо-скептическое, что я не могу выразить словами по правилам форума.

LightDiver ★★★★★
()
Ответ на: комментарий от sabacs

Ах вот как это делается. Ну что ж, буду знать.

Irma ★★★
()
Ответ на: комментарий от anc

выполнение ненужных операций

Почему вы считаете, что то, чем вы занимаетесь в жизни, является нужной операцией? Бабка из соседнего подъезда считает компьютеры и интеренет в принципе не нужными. Почему её мнение менее важно, чем ваше?

mamina_radost
()
Ответ на: комментарий от Ygor

ЛЛМ БЯМ – это лишь такая поисковая система, которая не может выдать того, чего в ней просто нет. К тому же для эффективного использования надо хорошо понимать, как и что она ищет и как правильно формулировать вопрос. С хорошим правильным вопросом можно и в Гугол сходить. Или к коллеге.

БЯМ пока на поиграться, до отработанной полезной технологии им ещё длинный путь проделать.

mister_VA ★★
()
Последнее исправление: mister_VA (всего исправлений: 1)

Без годного промпта результат очевиден. Желательно ещё создать документ спецификации.

ac130kz ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.