Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия

Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия

В 1989 году Дэн Симмонс написал «Гиперион» — роман, ставший классикой научной фантастики. Одна из его идей сегодня звучит особенно актуально.

Слои кода, как слои времени

В мире «Гипериона» существует Техно-Центр — сообщество искусственных интеллектов, развивавшееся столетиями. Первые слои кода писали люди на Старой Земле. Позже ИИ начали наращивать поверх них свои уровни — слой за слоем, поколение за поколением.

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

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

Мы — первый слой?

Сейчас мы впервые пишем код вместе с ИИ. Инструменты вроде Copilot, ChatGPT, Claude и Cursor уже не эксперименты — они часть повседневной разработки.

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

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

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

Это уже происходит

На первый взгляд, сценарий из «Гипериона» кажется далеким. Но похожие процессы уже есть — в масштабе легаси-систем.

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

Oracle Database. Десятки миллионов строк кода на C и ассемблере, написанных десятилетия назад. Изменение одной строки может сломать тысячи тестов. Исправление бага требует недель анализа флагов, макросов и сценариев.

Oracle 19c, выпущенный в 2019 году, останется поддерживаемым до 2032 года. Клиенты не спешат переходить на новые версии — потому что «стабильно работает». Новые функции добавляются поверх старой архитектуры, а фундамент не трогают.

Это не гипотетическое будущее. Это уже сегодня. Мы называем это «легаси», но это может стать нормой — системами, которые никто не может переписать, но от которых зависит всё.

Черные ящики внутри черных ящиков

Сейчас мы уже не всегда понимаем, почему нейросеть принимает то или иное решение. Область Explainable AI (объяснимый ИИ) существует именно потому, что модели стали слишком сложными.

Теперь представьте: ИИ, который сам пишет код, основываясь на логике, непонятной даже его создателям. Этот код становится основой для следующего ИИ, который его переписывает — и так слой за слоем, век за веком.

В «Гиперионе» ИИ могли моделировать целые вселенные, но не могли разобраться в собственном коде. Первые слои, написанные людьми, стали для них загадкой. И на этих слоях держалась вся цивилизация.

Археология кода

Есть термин — «археология кода». Обычно он описывает ситуацию, когда разработчик копается в старом коде, пытаясь понять, зачем в 2008 году кто-то написал // TODO: fix this later.

Но в контексте многовековых ИИ-систем этот термин приобретает буквальный смысл. Представьте, что инженер 2045 года (или ИИ-инженер) сталкивается с багом на глубине третьего слоя. Чтобы его исправить, нужно понять логику первого — но документации нет, авторы решений давно исчезли, а промежуточные ИИ уже выведены из эксплуатации.

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

Технический долг будущего

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

Но что, если этот долг накапливается не в одном проекте, а во всей технологической инфраструктуре? Что, если каждый новый ИИ наследует не только код, но и все компромиссы предыдущих поколений?

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

Что я решил для себя

Я не знаю, как избежать этой судьбы. Но для себя я выделил несколько принципов:

  • Документирую «почему». Не только что делает код, но и почему выбрано именно это решение. Какие были альтернативы? Какие ограничения? Именно «почему» теряется первым и восстановить его сложнее всего.
  • Задаю вопрос будущему. При проектировании спрашиваю себя: «Будет ли это понятно тому, кто придет после меня — даже если это ИИ?». Сам вопрос помогает улучшить архитектуру или хотя бы описать её подробнее.
  • Отношусь к ИИ как к ученику. Я перестал видеть в нём просто автокомплит. Я учу его, и он учится. Какие стандарты я закладываю сейчас — с такими он и будет работать в будущем.

Ответственность первого слоя

В «Гиперионе» древние слои кода стали непостижимыми. Это привело к скрытым процессам, тайным целям и потере контроля.

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

Если нет — единственное, на что я могу повлиять, — это качество того, что я пишу сегодня. Качество первого слоя.

Мысль не нова. Но после «Гипериона» она ощущается острее.

Это не прогноз. Совсем не обязательно, что легаси накопится слоями, ИИ станет непознаваемым, а ошибки в коде обрушат цивилизацию. Но книга заставила задуматься. Может, и вас тоже.

Читать оригинал