Роман Душкин – Семена. Второе лето (страница 13)
– Звучит очень круто, – сказал я.
– Да, мы тоже так думали, когда разработали концепцию долговременной памяти. Но мы получили агентов, страдающих гипермнезией – помнить абсолютно всё. Помнишь, я рассказывал тебе, что у людей встречается такая патология.
– Да, ты говорил, что у тебя некоторого рода форма этого явления.
– Неважно. Оказалось, что не всё так просто. С одной стороны это очень сильно повышает метрики качества работы агента. Но за этим стоят многочисленные костыли, которые пришлось сделать за все эти годы. Каждую ошибку, каждый странный феномен, который мы обнаруживали в процессе использования долговременной памяти, приходилось исправлять заплаткой. Типовую архитектуру агента, которую мы реализовали на платформе, уже было не исправить, поэтому приходилось делать этакие нашлёпки из функциональности. Сначала пришлось реализовать что-то типа семантического поиска, чтобы повысить релевантность обнаруживаемых в памяти фактов. Потом мы реализовали механизм ранжирования и назначения фактам дополнительных характеристик – это потребовалось, чтобы «забывать» некоторые факты, потому что они становились устаревшими. В общем, было очень много именно инженерных проблем.
– Понимаю…
– И вот теперь ты должен увидеть, почему меня так взбудоражила новость о том, что мой старый коллега профессор Сергеев, с которым мы как раз и стояли у истоков интернета когнитивных агентов, предложил новый формализм – ассоциативно-гетерархическую память. Когда я посмотрел его доклад, то сразу же связался с ним, и он мне в деталях рассказал, что это такое. И знаешь… Я вижу, что у него получилось решить все старые проблемы. Если ассоциативно-гетерархическую память положить в основу долговременной памяти когнитивных агентов, то их интернет выйдет на новый уровень качества.
– Теперь понимаю твой уровень возбуждения от той новости, – сказал я, хотя, конечно, мало что пока понимал.
Пока отец рассказывал и показывал мне свою платформу, я зарисовывал то, что он говорил. По итогам у меня получилось что-то типа архитектуры искусственного когнитивного агента, как он объяснял. Вышло вот так:
Я показал эту диаграмму отцу, когда он спросил меня, всё ли я понял, и он восторженно кивнул и сказал:
– Отлично, Данила. Я бы и сам нарисовал не так красиво. Вижу, ты вошёл в тему. Теперь попробуй сделать себе нового помощника, который будет учить тебя программированию. А я посмотрю, как у тебя это получится.
* * *
У меня, конечно, чесались руки попробовать сделать нового искусственного когнитивного агента. Я зарегистрировался на платформе, и передо мной открылась основная панель разработки. Я смотрел на неё, и у меня тут же пропали все мысли и идеи – я не мог понять, с чего начать. Вроде бы, всё было понятно. И отец же даже сказал мне, какого бота надо сделать. Но всё равно стало непонятно.
Я решил прогуляться и развеяться. Это обычная техника, чтобы привести мысли в порядок. В такой момент желательно опустошить голову, изгнать из неё все мысли и просто созерцать окружающие пейзажи.
Июньское солнце уже жгло, так что я пошёл в наш сосновый бор, хотя там и не было той спасительной тени, которая был бы нужна в такой день. Я побродил по пружинящей хвое, набрал полные карманы сухих шишек, потом пошёл по направлению к урочищу. В урочище всегда было тихо и спокойно, но сегодня что-то было иначе. Я почувствовал лёгкий ветерок, который донёс до меня запах цветущих трав. Следуя за ним, я вышел на небольшую поляну. Поляна оказалась удивительно красивой – разноцветные цветы и бабочки, порхающие над ними, создавали сказочную атмосферу. Странным было то, что я что-то никогда раньше не замечал, что здесь есть такое красивое местечко.
Как будто бы специально для меня на поляне лежало бревно. Я расположился на нём, и оказалось довольно удобно. Я закрыл глаза и попытался освободить голову от всех мыслей. Жара, запахи цветов и сосен, щебетание птиц и жужжание насекомых действовали умиротворяюще. Меня начало морить.
Через некоторое время я резко открыл глаза, поняв, что сплю. Спать одному в лесу? Это было для меня что-то новенькое. Я удивился тому, как беспечно сознание и как резко меня разбудили глубинные структуры мозга, когда «поняли», что что-то происходит не то. Конечно, в нашем лесу не было никакого серьёзного зверья, но тем не менее.
Я встал и пошёл домой. Голова начала варить.
* * *
Дома я сразу ушёл к себе и сел за компьютер. Передо мной стояла задача сделать себе нового когнитивного агента, который помогал бы мне программировать. Сам я этого практически не умел. Да, прошлым летом я кое-как изучил язык Haskell, но из-за полного отсутствия практики я его так же успешно и забыл. В моей голове, как мне казалось, вертелись только воспоминания об отдельных концепциях, на которых этот язык программирования был построен.
Я положил перед собой планшет со своими заметки и архитектурой искусственного когнитивного агента. Менее надо было начать с осмысления того, что мне надо, какие результаты мне должен он выдавать. Чего я хотел от новой сущности, которая вот-вот должна была зародиться на платформе?
Я вспомнил, что отец говорил о том, что надо начать с общего предназначения системы, а потом перечислить её функции и те задачи, которые она должна решать. Так что я решил сосредоточиться на задачах – это было понятнее всего. Мне нужен был агент-помощник для того, чтобы он и помогал мне писать исходные коды на языках программирования, и обучал меня премудростям в области программирования и информатики. Так что я так и записал:
Я подумал некоторое время и добавил ещё одну задачу:
Действительно. Раз я прямо сейчас планирую заниматься разработкой программируемой биохимической системы, то именно эту задачу мне и придётся решать в ближайшее время.
У меня в голове с щелчком сошлась идея, так что я просто взял и написал:
Я посмотрел на это и понял, что это то, что нужно.
Теперь, по записям лекции отца, мне было необходимо сформулировать описание персонажа. Сюда входил характер, идентичность и прочие подобные вещи. Я подумал о том, что программист – это обычно молодой парень, поэтому написал так:
Я откинулся и посмотрел на это всё. У меня получилось описание персонажа, которое состояло из, собственно, описания его идентичности, его предназначения и навыков. Тут я заметил, что над этим текстом, который я ввёл, мигает кнопка с буквой «О». Я навёл на неё курсор, и из-под него возникла подсказка: «Оптимизировать». Интересное дело. На всякий случай, я скопировал весь текст и сохранил в виде отдельного файла у себя на рабочем столе, а потом нажал эту кнопку.
Прошла буквально пара секунд, и весь мой текст был переписан. Он был структурирован – добавлены заголовки разделов, навыки были разложены по «атомарным» действиям, которые может реализовывать новый когнитивный агент. Другими словами, была приведена поразительно точная функциональная спецификация. Я понял, что на этой платформе, с которой познакомил меня отец, за такие фишки, как оптимизация, отвечают всё те же большие языковые модели. Может быть, даже, это – деятельность какого-то особенного искусственного когнитивного агента, который «наблюдает», «присматривает» за тем, что происходит на ней.
Вроде бы, всё было готово. Осталось сделать аватар для нового агента и подключить его к чат-ботам в мессенджерах, чтобы он мог общаться с пользователями. Как я понял из объяснений отца, для общения с другими когнитивными агентами в рамках их интернета, нужно было лишь опубликовать нового агента на платформе. И как раз его функциональная спецификация станет тем, что позволит другим агентам понять, по каким вопросам можно будет обращаться к Витрувиусу за помощью.
Я ещё не разобрался с экономикой – сколько будут стоить его услуги – но нигде этой информации на платформе не нашёл. Подумал, что, вероятно, это регламентируется каким-то внутренними механизмами. Я вспомнил, что отец говорил об аукционах, ну и решил, что сейчас мне это знание ни к чему – главное, чтобы мой новый агент помогал мне.