Това, което Self-Improving Coding Agents ме научиха за AI
Какво ме научиха самоусъвършенстващите се AI агенти за работата с изкуствен интелект
Когато започнах да експериментирам с AI агенти, способни да анализират и подобряват собствените си резултати, очаквах да бъда впечатлен от техническата им сложност. Това, което не очаквах, беше да придобия фундаментално различно разбиране за това как хората трябва да си сътрудничат с големи езикови модели.
Два месеца ежедневна работа с тези агенти промениха начина, по който мисля за всичко — от писането на инструкции до архитектурата на съвременните работни процеси.
Ефектът на огледалото
Най-големият ми шок беше следният: самоусъвършенстващите се агенти не просто стават по-добри в писането на код. Те стават по-добри в това да разкрият какво сме вършили погрешно през цялото това време.
Когато един агент преглежда собствените си последни резултати и се запита „Защо избрах този подход?", често изважда на повърхността предположения, за които изобщо не сме подозирали. Гледах как един агент проследи повтаряща се грешка до фина несъответствие в начина, по който беше разбрал конвенциите за именуване. Интроспекцията на агента разкри, че аз самият съм бил непостоянен в именуването през целия проект — модел, толкова вкоренен, че никога не го забелязах.
Този огледален ефект важи и за инструкциите ни. Агенти, които анализират взаимодействията си, често ни показват, че нашите подкани съдържат скрити противоречия или неявни допускания. Когато наблюдаваш агент да се бори с дадена задача и после да анализира защо се е затруднил, често откриваш, че объркването е тръгнало от неясни инструкции, за които си мислил, че са кристално ясни.
Рекурсивната природа на подобрението
Самоусъвършенстващите се агенти работят, като преглеждат собствената си история — успехите и провалите си — и използват този анализ, за да вземат по-добри решения. Тази рекурсивна структура има една интересна последица: качеството на подобрението зависи в много голяма степен от качеството на обратната връзка.
Агенти, които получават прецизна, контекстуална обратна информация за това защо нещо е проработило или не, се подобряват много по-бързо от тези, които просто получават сигнали „успех" или „провал". Това ми даде ценен урок за собствените ми практики:
Добрата обратна връзка е конкретна и причинно свързана. Вместо да казвам на агента „това е грешно", научих се да казвам „това се провали, защото не отчете крайния случай X в ситуация Y". Агентите, получаващи причинна обратна връзка, развиват много по-добри интуиции за подобни проблеми в бъдеще.
Това отразява как най-добрите екипи въвеждат нови хора в работата. Никой не се усъвършенства, когато обратната връзка е само „това не изглежда добре". Подобрението идва, когато обясняваме разсъжденията зад стандартите си.
Проблемът с абстракцията
Един от най-поразителните модели, които забелязах, беше как агентите се справят с абстракцията — или се провалят в това.
Когато обработват заявки, агентите често работят на ниво конкретни токени и модели, които са видели, вместо да абстрахират истинските основни принципи. Самоусъвършенстващ се агент може да забележи „Виждал съм този модел 47 пъти", без да развие концептуалната рамка, която би му позволила да се справи с 48-я случай, който е малко по-различен.
Това е точно проблемът, който тормози начинаещите разработчици, научили модели без да разбират принципите. И е полезно предупреждение за всеки, който разчита силно на AI помощ: разпознаването на модели те отвежда далеч, но абстракцията е това, което ти позволява да се справиш с непредвидени ситуации.
Импликацията за разработчиците е значителна. Тъй като AI асистентите стават все по-способни, човешкото сравнително предимство все повече лежи в абстракцията — способността да видиш общия принцип, който свързва различни конкретни случаи.
Проектиране за AI-човешкия интерфейс
Може би най-практическият урок от наблюдението на самоусъвършенстващи се агенти беше свързан с структурата на проекта. Кодови бази, които работят добре за човешко сътрудничество, не винаги работят добре за AI сътрудничество, и обратното.
Агентите се справят отлично, когато проектите имат:
- Ясни, последователни конвенции за именуване
- Добра документация на зависимостите
- Предвидими файлови структури
- Ясни модели за обработка на грешки
Агентите се затрудняват с проекти, разчитащи силно на неявен контекст — където разбирането защо нещо работи изисква знанието за исторически решения, които не са уловени в самия код.
Това предполага ново измерение в архитектурата на проектите: проектиране за AI интерфейса успоредно с човешкия интерфейс. Когато строиш проект, който ще разчита силно на AI помощ, някои традиционни практики може да се нуждаят от пренастройка. Явното е по-добро от неявното. Документацията не е само за бъдещи хора — тя е и за бъдещи агенти.
Връзката с vibe coding
В NameOcean говорим много за „vibe coding" — възникващата практика да използваш AI за ускоряване на разработката, като същевременно запазиш творчески контрол. Моят опит със самоусъвършенстващи се агенти изясни нещо важно за това какво прави vibe coding работещ.
Vibe coding не е за това AI да поеме управлението. Става дума за намиране на правилното разделение на труда между човешката преценка и AI възможностите. Интроспективните агенти ми показаха, че това разделение работи най-добре, когато:
Хората се занимават с абстракция и принципи. Ние определяме концептуалната рамка, която ръководи проекта.
Агентите се заемат с имплементация и изпълнение на модели. Те превръщат нашите принципи в работещ код, следвайки установените модели.
И двамата участват в непрекъснати цикли на обратна връзка. Нито човекът, нито AI не трябва да работят във вакуум.
Най-добре работещите самоусъвършенстващи се агенти поддържаха продуктивен диалог с човешките си сътрудници — получаваха високорискови насоки, изпълняваха конкретни задачи и докладваха какво е проработило и какво не.
Какво означава това за екипите за разработка
Ако самоусъвършенстващите се AI агенти ни учат на нещо, то е, че бъдещето на разработката не е за това да заменим човешката преценка с AI възможности. Става дума за създаване на по-добри обратни връзки между човешкия и машинния интелект.
За екипите, които искат да въведат AI-подпомагани работни процеси, това предполага няколко конкретни практики:
Инвестирайте в качеството на обратната връзка. Колкото по-добре екипът ви се научи да обяснява защо нещо работи или не, толкова по-ефективно AI инструментите ще се подобряват.
Документирайте не само какво, но и защо. Бъдещите AI сътрудници ще се възползват от разбирането на разсъжденията зад решенията, не само на резултатите.
Проектирайте за яснота. Проекти с изрична структура и предвидими модели ще използват AI помощта много по-ефективно.
Отнасяйте се към AI инструментите като към партньори за сътрудничество, не като към магически кутии. Агентите, които се подобряват, са тези, получаващи добра входна информация. Същият принцип важи за всеки AI-подпомаган работен процес.
По-голямата картина
Има нещо дълбоко в това да гледаш AI система да анализира собствените си разсъждения. Това ни принуждава да се изправим пред факта, че тези системи, въпреки впечатляващите си възможности, все още са машини за разпознаване на модели, опериращи върху вероятности, извлечени от данни за обучение.
Но ето какво: човешката интуиция работи по същия начин. Разликата се крие в нашата способност да абстрахираме, да разсъждаваме причинно и да комуникираме разсъжденията си на другите. Това са способностите, които остават отличително човешки дори когато AI инструментите стават все по-усъвършенствани.
Уроците от самоусъвършенстващите се AI агенти не са наистина за самите агенти. Те са за нас — какво носим към сътрудничеството, какво можем да научим, наблюдавайки AI системите да работят, и как можем да структурираме практиките си, за да извлечем максимума от наличните ни инструменти.
Докато AI-подпомаганата разработка се превръща в норма, а не в изключение, тези прозрения стават все по-ценни. Разработчиците, които ще процъфтяват, ще бъдат тези, които разбират не само какво AI може да направи, но и как да работят с AI ефективно.
И понякога най-добрият начин да научиш за това сътрудничество е да гледаш агент да учи за себе си.
Какво са те научили от опита ви с AI агенти за кодиране? Пейзажът се развива бързо и моделите, които наблюдаваме днес, ще оформят практиките за разработка през следващите години.