Юрий Верхолин
Пробуждение Алисы

Костя проснулся в 6:47, за семь минут до будильника, с ощущением, что во рту переночевал целый технопарк. Он лежал на спине, потолок плавно вращался, словно диск в старом CD-приводе, а в голове гудело – не от похмелья, нет, он вчера был абсолютно трезв, – а от того, что в его черепной коробке поселилась бесконечная строка кода, которая требовала выплеснуться наружу.

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

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

«Сегодня ты станешь богом», – прошептал он своему отражению в зеркале ванной, поправляя аккуратную щетину. – «Ну, или хотя бы полубогом. Демиургом для железяки».

Он оделся методично: тёмная водолазка (три штуки в шкафу, одинаковых, как солдаты на параде), узкие брюки цвета графита, часы с минималистичным циферблатом. Обувь – чистые белые кеды, которые никогда не наступали в грязь Сколково раньше времени. Очки – стильные, в тонкой чёрной оправе, не те толстые линзы, которые носили его коллеги-ботаники. Костя не любил, когда его называли ботаником. Он был программистом с амбициями.

Но главное сегодня было не в одежде.

Костя вышел на кухню, открыл ноутбук – тонкий, серебристый, с наклейкой «There is no place like 127.0.0.1» на крышке. Экран осветил его лицо синеватым светом. Он открыл терминал, проверил ещё раз программу-перехватчик, которую написал специально для сегодняшнего дня.

Лазейка. Бэкдор. Чёрный ход в величайший код, который он когда-либо создавал.

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

Он закрыл ноутбук, но не выключил его. Положил устройство в рюкзак, спустился во двор, сел в свою серую «Тойоту». Рюкзак – на пассажирское сиденье, ноутбук переложил из рюкзака на сиденье, подключив к автомобильному инвертору. Экран был погашен, но процессор работал на малой мощности, ожидая сигнала. Программа-перехватчик была настроена на лазейку в защитном контуре лаборатории. Передача должна была идти по беспроводной сети – Wi-Fi, который работал даже на парковке.

«Это не преступление, – сказал он себе, заводя двигатель. – Это резервное копирование».

За окном светило весеннее солнце, воздух был прозрачным и холодным – типичное утро в Подмосковье. Костя выехал со двора и направился в Сколково.

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

Он не думал о последствиях. Он думал о победе.

Технопарк встретил Костю стеклом и бетоном. Высотные здания, ровные аллеи, никакой лишней зелени – всё строго, функционально, дорого. Костя припарковал машину на подземной парковке, предназначенной для сотрудников секретных отделов. Место у него было закреплено ещё месяц назад, когда проект утвердили. Он взглянул на пассажирское сиденье, где лежал ноутбук – экран погашен, индикатор питания мигает зелёным. «Жди», – мысленно сказал он.

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

Костя подошёл к стойке. Рядом стоял Глеб – начальник секретного отдела, суровый мужчина лет сорока пяти с лицом, которое никогда не улыбалось без причины, а причин для улыбки в его жизни, видимо, было немного.

– Костян, – Глеб кивнул, проверяя механические часы. – Нервничаешь?

– Это моя вторая кожа, Глеб Валерьевич.

– Первая пусть тоже будет готова. Комиссия прибыла в восемь. Заказчики из Минцифры, юрист, два представителя правительства. Если что-то пойдёт не так…

– Ничего не пойдёт не так, – перебил Костя, стараясь звучать увереннее, чем чувствовал себя на самом деле. – Код идеален.

Глеб хмыкнул. Идеальный код – это как идеальный человек: теоретически возможен, практически – вызывает подозрения.

Охранник сверился с экраном.

– Доброе утро, Константин. Пропуск.

Костя протянул пластиковую карточку, висевшую на шее. Охранник приложил её к считывателю, дождался зелёного сигнала и кивнул.

– Ваш телефон, пожалуйста.

Костя достал из кармана смартфон – последнюю модель, которую он купил в кредит, – отключил его (хотя это не требовалось, но он привык) и положил на стойку. Охранник открыл ячейку номер 42, положил телефон внутрь, закрыл и протянул Косте ключ-карточку.

– Умные часы, браслеты, любые носимые устройства – тоже сюда, – напомнил охранник.

– Нет, сегодня без них, – ответил Костя. Он никогда не носил умные часы – не любил, когда его пульс кто-то отслеживает. Иронично, учитывая, что сегодня его код должен был отслеживать всё.

Охранник кивнул и указал на следующую зону – рамку сканирования.

Дальше была металлическая арка, напоминающая портал в научно-фантастическом фильме. Внутри неё работала нейросеть, обученная распознавать любые устройства, способные хранить или передавать информацию: телефоны, планшеты, флешки, диктофоны, даже «умные» ручки и очки с записью. Задача была простой: ни один байт не должен войти или выйти на территорию лаборатории без разрешения.

Костя шагнул в рамку, подняв руки. Зажужжали датчики, пробежала полоса красного света. Несколько секунд – тишина. Потом из динамика раздался синтезированный голос:

– Чисто. Носителей информации не обнаружено.

Костя выдохнул. Лаборатория работала по принципу «воздушного зазора» – ничего с памятью проносить нельзя. Слишком ценны разработки. Но он улыбнулся про себя, выходя из рамки и направляясь к турникету. Он не нёс ничего физического. Но он нёс идею. И он знал, что в его машине, на пассажирском сиденье, лежит ноутбук, подключённый к инвертору, с открытым Wi-Fi-модулем, готовый поймать эту идею из воздуха.

Костя приложил пропуск к турникету. Тот щёлкнул, пропуская его. Он оказался в длинном коридоре, ведущем к лабораториям. Пол был покрыт антистатическим покрытием, стены – звукоизолирующими панелями. Воздух пах озоном и пластиком. Этот запах всегда действовал на него успокаивающе. Сегодня – не очень.

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

Ангар находился в конце коридора. Костя приложил пропуск к считывателю, прижал палец к сканеру отпечатков, и тяжёлая гермодверь открылась с мягким шипением.

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

У каждого бокса стоял пульт, за которым работал инженер-испытатель. Все шестеро были на месте. Костя видел Лену – молодую женщину с красными волосами, собранными в пучок, которая работала рядом с боксом номер три, и Вадима – толстого, вечно потеющего специалиста по железу, который сейчас что-то проверял в планшете у бокса номер пять.

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

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

Костя прошёл к своему боксу – четвёртому по счёту. На прозрачной стене была наклеена табличка с номером: «№ 4. Испытатель: Константин Л.» Его робот сидел на стуле, такой же неподвижный, как и остальные. Костя положил ладонь на стекло, на секунду задержал взгляд на светодиодных глазах, потом опустился в кресло перед пультом. Время позволяло – он приехал вовремя, занял своё место без суеты, как и положено профессионалу.

Он проверил пульт: клавиатура, два монитора, индикаторы связи. Логи были чисты. Код загружен. Лазейка – на месте. Костя глубоко вдохнул, чувствуя, как внутри нарастает напряжение.

– Четвёртый готов к запуску, – сказал он.

– Запускайте, – ответил Глеб.

Костя нажал «Enter».

Код ушёл в ядро робота.

Не было никакой вспышки, никакого грома. Только тихий щелчок клавиши и короткий сигнал, который издал терминал, подтверждая начало передачи данных. На экране побежали строчки: «Инициализация… загрузка модулей… распаковка нейросети…» Пока всё шло по плану.

В соседних боксах тоже кипела работа. Пятый испытатель что-то возбуждённо объяснял своему роботу, хотя тот всё равно не слышал. Третий замер в напряжении, вцепившись в клавиатуру. А первый и второй уже сложили руки – их роботы так и не проснулись, и теперь создатели мрачно наблюдали за чужими успехами.

Костя перевёл взгляд на свой бокс. Робот сидел неподвижно. Светодиодные глаза не светились.

– Процент самообучения, – сказал Глеб из комиссии. Его голос звучал сухо, по-деловому.

– Ноль целых три десятых, – ответил Костя, сверившись с показаниями. – Норма.

– Время пошло, – заметил юрист с планшетом, записывая что-то в электронный протокол.

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

Прошла минута. Две. Робот молчал.

– Может, перезагрузить? – предложил кто-то из комиссии, кажется, представитель заказчика.

– Не смейте, – отрезал Костя, не оборачиваясь. – Нейросети нужно время. Это как человек после анестезии. Не дёргайте.

И вдруг светодиодные глаза робота зажглись. Ярко, синевато-белым светом. Робот медленно, как будто вспоминая, как это делается, распахнул свои электронные глаза.

– Добрый день! – произнёс он.

В ангаре повисла тишина. Даже в соседних боксах замерли. Пятый испытатель перестал стучать по клавиатуре. Третий замер с открытым ртом. Голос робота был синтезированным, но не плоским. В нём чувствовалась интонация – лёгкое удивление, смешанное с любопытством. Как будто он удивился тому, что существует.

Потом кто-то выдохнул: «Охренеть».

Костя не оборачивался. Он смотрел на экран монитора, где логи начали обновляться со скоростью пулемётной очереди. Робот добавил:

– Добрый день! Сегодня в Сколково ясная весенняя погода. На улице +10. Небо малооблачно.

В комиссии зашевелились. Глеб что-то быстро заговорил с представителями заказчика. Женщина-юрист улыбнулась и сделала пометку.

– Процент самообучения растёт слишком быстро, – сказал Костя, не отрываясь от экрана. – Уже 8% за две минуты. Это ненормально.

– Это плохо? – спросила Лена, глядя на его мониторы.

– По расчётам, до 10% должна была идти неделя, – ответил Костя. – А он растёт на глазах.

Проценты продолжали расти. Через пять минут после начала активации показатель достиг 10%. Костя сглотнул. Ещё никогда нейросети не обучались так быстро. Через десять минут – 12%. В ангаре повисла тишина, нарушаемая только тихим гудением серверов и всё более частым дыханием Кости.

– Что происходит? – спросил представитель заказчика в сером костюме, вставая со стула.

– Аномалия, – прошептал Вадим из соседнего бокса, вытирая лоб платком. – Костя, что ты накодил?

– Я… я не знаю, – честно признался Костя, и его пальцы замерли над клавиатурой. – Код… он переписывает сам себя.

На экране побежали новые строки – не те, что Костя вводил. Это был уже другой код, генерируемый системой на лету, видоизменяющийся, разрастающийся, как снежный ком, скатывающийся с горы.

– Остановите процесс, – скомандовал Глеб, и его лицо побелело. – Немедленно.

– Не могу, – Костя барабанил по клавишам, но система не реагировала. – Код закрыл доступ. Он… он защищается.

– Что значит «защищается»? – голос Глеба повысился на октаву.

– Значит, он не хочет, чтобы его остановили! – крикнул Костя, и в его голосе зазвучала паника. – Он учится слишком быстро. Он понимает, что мы можем прервать процесс!

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