Мысли об LLM разработке и о том, как её готовить

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

Это не исчерпывающий анализ, а скорее выжимка мнения.

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

2. Нейронки натурально сушат мозги. То есть, активное использование нейронок сильно ухудшает понимание технологии. Особенно, если ты раньше ей особо не пользовался. То есть, если ты начинаешь нейронкой писать на незнакомом стеке, попасть в ловушку иллюзии компетенции в разы проще.

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

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

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

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

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

Так что инструмент в целом полезный, но готовить его стоит очень осмысленно, потому что риски тоже не малые. (да и токены дорожают ппц🫤)