По горячим следам
Спустя 2 с половиной месяца разработки в агентских системах, 2 тысячи коммитов, 270 приёмочных тестов и ещё 600 разных юнитов, что имею сказать по поводу этого парада ИИ-фейлов. Ну и вообще всей ИИ-разработки.
Все не очень радужно
Когда я только начинал, у меня было стойкое ощущение, что я очень сильно отстал от лидеров. Уважаемые люди рассказывали про ускорение разработки в десятки раз. И про то, что где-то там, в лучших домах Европы, весь код от края до края пишут роботы, ревьюят роботы, а люди... Непонятно, короче, чем там люди занимаются.
Спустя 2,5 месяца я все ещё пытаюсь найти тех самых лидеров, от которых я, как мне казалось, должен был отстать. Но, если честно, что-то я их не очень нахожу.
Каменный век
В целом, судя по тому, что я вижу, ИИ-разработчики разбились на 3 больших группы.
Одна группа использует агентов в режиме микро-менеджера - у них нет богатой системы промптов, они просто пишут ии, что делать, а потом пишут, как это что-то исправить. Тут лидеров искать бессмысленно, просто потому что в таком режиме нет особого развития процессов разработки. Вот что ты в первый день знакомства с агентами делал, вот примерно то же ты делаешь спустя пол года.
Другая группа каждую неделю носится с next big thing: то spec-driven development, то bmad, то get shit done, то spek kit, то Ralph loops. А как только фреймворк закончил свою работу, они незаметно превращаются в первую группу.
Последние вообще пребывают в эйфории, что ии может сам генерить код, сам его ревьюить, сам ещё тесты напишет. Ещё он спеку нагенерит, аналитику проведет и вообще, человек нужен только в самом конце, чтобы сказать - все фигня, давай по новой.
Вот последний подход вообще самый опасный и, кажется, именно он является причиной резкого увеличения числа отказов в проде.
Короче, все это, откровенно говоря, вообще не то.
Чего им всем не хватает?
1. Без фреймворка нельзя.
Голая ллмка до безобразия рандомна. Сейчас сделает так, в следующий раз по-другому. Кроме тех случаев, когда она стабильно делает одни и те же ошибки.
Если не ограничивать ллмку набором правил, то она из раза в раз будет генерить не то что нужно, а вы из раза в раз чинить одни и те же проблемы.
2. Тесты всему голова.
Есть одна мысль, которую в нашей индустрии понимают плохо. Тест-кейс - это та самая фундаментальная неделимая частица, из которых состоит продукт. Атом, единица поведения. По кейсам измеряется общий объём функциональности. По зелёным кейсам измеряется прогресс.
В олдскульной доиишной разработке подавляющим большинством аналитиков, разработчиков и менеджеров эта идея усвоена не была. А тестировщиков, к сожалению, никто особо не спрашивал. Теперь же, в ИИ-разработке, этой идеи не хватает ещё сильнее.
Поэтому всем этим фреймворкам не достаёт главного - тест-кейсов. То есть однозначных критериев приёмки. Не написанного где-то туманного описания требований, а конкретного сформулированного набора кейсов, которые потом превращаются в реальные автотесты. Особенно, с учётом того, что с ИИ автотесты уже совсем почти бесплатные.
Без этого все эти фреймворки, откровенно говоря, не особо полезны. Почему? Вот вы требования сформулировали, а где хоть какой-то контроль, что они ВСЕ выполнены, корнеры прописаны, и прилага не спятисотит на каком-нибудь хитром кейсе? В итоге, что с фреймворком, что без - на входе бардак и на выходе то же самое.
3. Нельзя без ревью.
Когда Антропик гордо заявляет, что "coding is solved", а потом не может даже 2 девятки показать, то это, конечно, вызывает ухмылку. Может, конечно, Антропик может строить успешный бизнес с двумя девятками, но есть огромная куча областей, где такая надёжность ну совсем неприемлема.
Современные ллмки неспособны надёжно генерировать код и даже спеку, чтобы ничего не упустить. И чем больше продукт, тем больше нюансов они могут упускать из виду. Если честно, я не вижу особых предпосылок к тому, чтобы в ближайшее время это как-то изменилось.
Post #67
669
- 👍 13
- ❤ 6