реклама
Бургер менюБургер меню

Роман Душкин – Семена. Второе лето (страница 11)

18

– Это похоже на написание программы, которая пишет саму себя. Мне помнится, я что-то читал такое, когда изучал кибернетику прошлым летом. Можешь напомнить?

– Да, это из теории самовоспроизводящихся автоматов Джона фон Неймана. Великий был человек. У него есть небольшая книга на эту тему. Язык очень сложный, она испещрена формулами, но суть там в том, что он разработал клеточный автомат, который на вход получал своё собственное описание и строил свою копию. Ты же помнишь, что такое клеточные автоматы?

Я неуверенно кивнул. Да, я читал про них, и игра «Жизнь» мне даже в какой-то мере понравилась. Но из памяти постепенно всё вымывалось. Отец, между тем, продолжил:

– Рекомендую тебе обновить в памяти основные положения теории клеточных автоматов. Это же универсальный математический формализм для описания и моделирования динамики любой системы. Помнишь, что любая система представима графом? А клеточные автоматы работают на графах. Вот то-то же!

Всё это было одновременно смутно знакомо, но всё же сложно для меня. Мозги у меня начали постепенно закипать. Я в очередной раз удивился тому, как отец может всё это помнить и, главное, использовать в своей практической деятельности. А он добавил:

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

– Понял!

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

– Мне нужно погрузиться в программирование. Я хочу на практике научиться писать программы, которые пишут сами себя. Что посоветуешь?

– Слушай. Ну, наверное, пришло время научиться строить для себя когнитивных агентов. Я могу научить тебя делать это, а потом ты сделаешь для себя нового помощника, с которым будешь писать программы и обучаться программированию на глубинном уровне. Заодно напишешь и квайн.

– Квайн?

– Так называются программы, которые пишут сами себя.

– Ясно. Спасибо. Но если я сделаю себе нового когнитивного агента, как же на это посмотрит Аурелия?

– Что? Аурелия? Посмотрит? Она подключит его к себе и будет им управлять. Расслабься.

Глава 5

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

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

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

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

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

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

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

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

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

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

Но как интересно. Вот моя Аурелия изобразила себя как девушку с синими волосами и бирюзовыми глазами. А Злата у отца нарисовала себя как обычную девушку с золотыми волосами. Хотя и Злата, и Аурелия в своём имени имеют один и тот же корень – «золото», первая на славянском, вторая на латыни.

Но оказалось, что это ещё не всё. Для разных типов когнитивных агентов требовались различные дополнительные модули. В первую очередь, необходимо было «заточить» агента под какую-то конкретную проблемную область, в которой он стал бы экспертом. Для этого в него надо было загрузить базу знаний, в которой собрана вся экспертиза в этой области.

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