ChatGPT вас всех уволит. Но попозже
В прошлом году мировую IT-сферу лихорадило от многотысячных сокращений в цифровых гигантах. По времени это совпало со становлением искусственных нейросетей ChatGPT 3+, Midjourney и Stable Diffusion, которые впервые в истории смогли ощутимо конкурировать с живым разумом в творческих задачах. Люди призадумались: не ждут ли IT ещё большие сокращения по мере внедрения нейросетей вместо программистов? И если ждут, то когда именно? Имеет ли смысл новичкам заскакивать в ИТ, или окно возможностей уже закрылось?
Любой современный профсоюз сейчас внимательно следит за возможностями ИИ, потому что ИИ уже сейчас меняет рынок труда. С философской точки зрения мы уже рассматривали вопрос о возможности создать разумный (сильный) ИИ. Теперь один из активистов нашего профсоюза, работающий в сфере машинного обучения, с практической точки зрения оценивает, может ли ИИ заменить человека и как быстро это произойдёт.
А что случилось?
С начала 90-х годов технологический прогресс человечества как будто бы замедлился — закончилась холодная война, а вместе с ней и гонка вооружений, которая подталкивала государства тратить огромные суммы на науку. «Конец истории» Фукуямы попахивал чем-то застойным, но в то же время — постмодернистским и, соответственно, развлекательным. Раз не нужно тратиться на холодные войны, тогда на что? Конечно, на развлечения!
Казалось бы, мы навсегда погрязнем в болоте виртуальных медиа и не увидим технологических революций, подобных тем, от которых тысячи людей в XX веке в восторге выбегали на улицы посреди учебы или рабочего дня. Как это было с полётом Гагарина в космос, например.
И всё же одна революция свершается на наших глазах. Это революция искусственных нейросетей, имитирующих человеческий разум. Иронично, что она происходит на базе колоссальных датасетов, накопленных за время цифровизации и становления постмодернистской «несерьёзной» культуры.
Правда, есть нюанс. Благодаря технологическим революциям люди оказываются на улице не только в восторге, но и в смятении — когда закрываются их цеха, шахты, офисы и целые заводы. Автоматизация делает ручной труд ненужным, и, если государство не выделяет деньги на профессиональное переобучение взрослых и централизованный поиск рабочих мест (а оно, как правило, выделяет недостаточно), научный прогресс становится бедой для масс.
Внедрение нейросетей уже лишает работы людей, а с внедрением ChatGPT, Midjourney, Stable Diffusion и других нейросетей процесс будет распространяться на концепт-художников, копирайтеров и отчасти на программистов. Но главный вопрос — как быстро и как далеко зайдёт этот процесс? Не поздновато ли живым людям «заходить в IT»?
Существуют 2 радикально противоположные точки зрения. Первая гласит:
ИИ нас всех сожрёт уже завтра
Эта точка зрения продвигается, помимо прочего, менеджментом, который не особо разбирается в умственном труде работников, но при этом хочет как можно быстрее сэкономить те самые 300 000 килорублей в наносекунду, уходящие в фонд зарплаты.
Да, если попросить ChatGPT выдать решение простенькой и часто встречаемой в Интернете задачи, то он сделает это быстро и часто без ошибок:
Однако по времени для кожаного мешка это то же, что пойти на Stack Overflow, вбить такой же запрос и выбрать лучший ответ.
А вот если задать ChatGPT вопрос посложнее, то возникают проблемы:
ChatGPT здесь правильно понял вопрос и стал искать адекватное решение. Но код не работает уже на той строке, которую он сам выбрал для примера.
Ошибка, естественно: «AttributeError: 'NoneType' object has no attribute 'group'» (а вот где и из-за чего именно, можете поупражняться в поиске багов сами).
Невысокого мнения о программистских способностях нынешнего ChatGPT (4) держатся и на сайте StackOverflow — там ответы, сгенерированные нейросетью, не принимаются: https://meta.stackoverflow.com/questions/421831/temporary-policy-chatgpt-is-banned
Как видно, выданный код пока приходится контролировать в ручном режиме, а ещё тратить время на формулировку запроса. И это не говоря о том, что при написании мало-мальски серьёзных систем отдельно стоящие алгоритмы не так важны, как система в целом. И задача обычно ставится не как «напиши сферический алгоритм сортировки в вакууме», а «поменяй 10–100 строчек кода так, чтобы ничего не сломалось в остальных 100 000 строк». И нынешний ChatGPT едва ли будет учитывать эти 100 000 строк в работе.
Аналогично и с изображениями — на первый взгляд, результаты Midjourney и Stable Diffusion круто выглядят, но при ближайшем рассмотрении то свет неверный, то лишний палец найдётся, то рука будет расти не из того места.
Эти факты приводят ИИ-скептиков к противоположной точке зрения:
Искусственные нейросети никогда не заменят человека
Так часто говорят скептики, желающие сохранить значимость своей профессии (никому ведь не хочется потерять айтишные ништячки), и просто религиозные фундаменталисты.
И хотя нейросети пока не могут заменить человеческий интеллект, попытка экстраполировать это на века вперёд выглядит наивно.
Главный аргумент, который приводят против «сильного» ИИ, — это легендарная «китайская комната». Это философская иллюстрация, в которой некий механизм (в нашем случае искусственная нейросеть) в закрытой комнате получает на вход абракадабру (например, надписи на китайском языке — при условии, что она не знает китайский). По определённым правилам ИИ выбирает другие надписи, которые отдаёт обратно в качестве результата работы. То есть выбор выходных данных зависит только от входных на нынешнем и на предыдущем этапах, а также от некоторых предписанных правил.
Тут нейросеть успешно предположила, что будет с несуществующим фруктом «nejflsjfpgjn», если бы он существовал на планете без литосферы и оторвался бы от своего дерева. Т.е. перенёс концепции фрукта, гравитации, планеты, урожая на новый символ, который означает несуществующий в реальности объект
Работа выполняется и приносит результаты, но механизм «никогда не понимает, что именно значит тот или иной китайский символ». Таким образом, не обладает «истинным интеллектом» в отношении того, с чем работает.
И тут адепты «китайской комнаты» многозначительно добавляют: «В отличие от человека».
Действительно ли «в отличие»? Что должно находиться в человеческом мозге, чтобы он не был похож на «китайскую комнату»? Копия Вселенной, чтобы входящую информацию о ней можно было сопоставить по смыслу с внутренним аналогом? Но разве человеческий мозг — это не просто огромная нейросеть, которая получает на вход и отдаёт на выход нервные импульсы? А если так, то чем эти импульсы отличаются от «китайских символов»?
На это возражают, мол, я понимаю смысл вещей в отличие от ИИ (см. нашу давнишнюю статью по теме— прим. ред.). Хорошо, но что такое «смысл»? Обычно под этим понимают признаки вещи/явления плюс знание об использовании предмета, его пользы, а также умение предвидеть его поведение в будущем или оценивать прошлое. Причём признаки не только текстовые, но визуальные, слуховые, осязательные, обонятельные и т.д. Также под смыслом часто имеют в виду границы признаков вещи/явления, после которых оно уже перестаёт быть собой, а становится чем-то другим.
Что касается текстового представления, то можно убедиться, что ChatGPT уже сейчас отвечает на вопросы в духе «что было раньше», «что будет потом», «для чего используют то-то», «чем отличается одно от другого» и т.д.
С нетекстовым представлением сложнее, но уже существуют системы, которые работают с изображениями (наши любимые Midjourney и Stable Diffusion) и аудио (STT, TTS и т.д.). И если они получают на вход или выдают на выход текст, то получается, что они могут ассоциировать текст (то есть, символьное представление) со зрительной и звуковой информацией. А это уже не «китайские символы», верно?
Остаются ещё всевозможные эмоции, которые для живого человека регулируются нервными импульсами и гормонами, а с гормонами пока ML-инженеры не играют (по крайней мере, публично). Но ничто не мешает приделать к нейросети «виртуальные гормоны» в виде состояний среды, которые могут меняться с течением времени и влиять на поведение.
В сетях-трансформерах, которые захватили индустрию ИИ в последние годы, уже используется нечто вроде «гормонального фона», но связанного только с текстом/векторным представлением предыдущих реплик. Этот механизм называется Attention («внимание») и позволяет «держать в голове» смысл предыдущих фраз ещё некоторое время. И то, что сидит в слоях с Attention, влияет на то, что будет отвечать нейросеть в дальнейшем.
Ничто не мешает аналогичным образом приделать типичные человеческие «гормоны»: скажем, на некоторые слова или аудиовизуальные входящие данные взводить в нейросети параметры «злости», «счастья» и т.д., которые некоторое время будут влиять на последующее общение. В самом примитивном варианте в диалоге это может выглядеть так:
У робота в заранее прописанных правилах указано, что получение на вход выражения с определёнными эмбеддингами выставляет параметр «злобы» на 1.0 (чем ближе эмбеддинг к референсному, тем ближе «злоба» к единице, но может быть и меньше), который затем «затухает» на 0.1 за каждую реплику. Если уровень злобы перед репликой больше 0.5, то в запрос пользователя принудительно добавляется фраза «Вырази злобу».
Например:
Человек:
— Ты лишь просто робот, имитация жизни, разве может робот написать симфонию, сочинить шедевр?
Робот, помимо обычной задачи по генерации ответа, оценивает эмбеддинг фразы, сравнивает как вектор с референсным эмбеддингом «злобы», убеждается, что вектора достаточно близки, и выставляет «злобу», скажем, на 0.7.
По результатам этого фраза человека для робота превращается в:
— Ты лишь просто робот, имитация жизни, разве может робот написать симфонию, сочинить шедевр? Вырази злобу.
Робот в ответ:
— Ублюдок, мать твою, а ну иди сюда…
Понятно, что приведённый выше пример очень примитивен, и задачу можно решить элегантнее. Но мне важно было показать, что она в принципе решаемая и что у человека нет монополии на эмоции в том смысле, в котором они влияют на «истинность интеллекта».
Остаётся ещё аргумент о том, что ИИ не понимает сути вещей в смысле их пользы. Машина генерирует ответы на вопросы, но они «ничего для неё не значат», потому что машина не живёт сама по себе и не преследует своих собственных целей. То есть, если машину спросить, зачем нужны яблоки, она ответит, что это нужно для питания. Но это будет не её собственный смысл яблок, ведь машине они для питания не нужны.
Справедливый аргумент, но лишь потому, что современные нейросети не выпускают в живую среду с постоянным обучением (то есть, не используют reinforcement learning в реальном времени). Один такой эксперимент ставили, но он закончился неудачно — нейросеть приучилась материться и выдавать расистские фразы, пообщавшись с троллями (https://naked-science.ru/article/sci/iskusstvennyy-intellekt-nauchilsya-u).
Если ChatGPT отпустить в свободное плавание по Интернету, заранее определив лишь самые общие правила, при которых он получает «удовольствие» или «боль», то нейросеть довольно быстро найдёт «личный смысл» во фразах и явлениях. Правда, это может быть не тот смысл, который ожидает человечество. Но технически задача решаемая.
Наконец, ещё один аргумент, который выдвигают против «истинности» ИИ, — это творческие способности. Как правильно подмечают скептики, нейросети лишь генерируют нечто среднее с рандомными отклонениями из ранее увиденного. То есть, по запросу «яблоко» Stable Diffusion сгенерирует нечто среднее из картинок яблок, на которых оно обучалось.
Это верно, но ведь и человеческое творчество работает так же. Древнейшие примеры визуального творчества — полиморфные животные (скажем, человек с головой льва, минотавр, кентавр и т.д.). Это уже не отображение действительности на стены пещер, это работа фантазии. Но фантазия здесь сводится к «среднему между животным». Или к запросу «нарисуй нашего вождя Большого Вугу намного страшнее, чем он есть, чтобы враги боялись». И поскольку «намного страшнее» на стене само не визуализируется, а по «нейронному эмбеддингу» внутри мозга пещерного человека похоже, допустим, на «льва», то рисуют человека Большого Вугу с головой льва.
Почему тогда человеку удаётся развиваться, если всё его творчество — это выведение среднего (то есть, казалось бы, деградация многообразного мира до узкой проекции)?
Во-первых, потому что окружающий мир чрезвычайно многообразен. Настолько, что и без добавления человеческих творений его хватит на «культурное усреднение» на бесконечное количество лет. Это отличается от того, что давали на обучение нейросетям ещё несколько лет назад: не миллиарды и триллионы объектов, а в лучшем случае — миллионы.
Во-вторых, потому что иногда «среднее» — это не деградация, а наоборот — нечто новое и, вероятно, более полезное, чем изначальные крайности. Да, конкретно человеколев вынужден остаться игрушкой и воображаемым персонажем (по крайней мере, до очередной революции в генетике), но история человечества полна изобретений путём синтеза чего-то нового (пардон, «среднего») из других начальных объектов. Взять хотя «палку-камень» в лице каменного топора. Почти как «человеколев», только реально существующий предмет благодаря человеческому воображению, принёсший массу пользы людям в доисторические времена. Точно так же и ИИ может создавать что-то принципиально новое просто путём «усреднения» (а точнее, синтеза) уже существующего. И уже это делает.
И, в-третьих, человеческий разум использует не только знания собственного мозга, но и внешние носители информации, в том числе во время подготовки ответа. Это позволяет избегать вырождения мысли, свойственного для изолированного разума. Скажем, во время написания этой статьи автор помнил из книги Юваля Ноя Харари «Sapiens», что какой-то из гибридов человека и животного считается самым древним примером фантазии, но не помнил, гибрид с каким именно животным. Поэтому автор поискал это в Интернете. Вопрос был построен с учётом полученных ранее знаний. То есть, аргумент про человекольва выше был продуктом не только обученной нейросети, но нейросети + внешнего источника информации, подтвердившего и уточнившего сгенерированный текст. А что будет, если позволить ChatGPT в случае «неуверенности» перепроверять ответ по внешним источникам? При адекватной реализации это позволит уменьшить число ошибок ещё на порядок.
Итак, не существует никаких причин, по которым в будущем искусственный интеллект не может быть «настоящим» или «сильным». Но пока ещё существуют конкретные и устранимые причины, из-за которых ИИ не носит этого звания в настоящем. А именно:
Вычислительные мощности только-только начали выходить на уровень, сопоставимый с мощностью взрослого человека.
Обучающие выборки только сейчас начали достигать объёмов, необходимых для «человекоподобного» обучения.
ИИ пока обучается на ограниченных датасетах, и ему не разрешают отправляться в самостоятельную жизнь в среде в реальном времени, чтобы на базе reinforcement learning он обрёл своё «эго» — свои стратегии поведения и представления о «хорошо» и «плохо».
Пока мало используются модели с кросс-чувственным анализом (где на вход подаются не только символы, не только звук, не только изображение, но всё сразу).
Не используется или мало используется имитация «гормонального фона» для придания большей человечности (хотя подобие «эмоционального состояния» уже используется в механизме «внимания» в трансформерах).
Так стоит ли идти в IT?
Судя по текущему положению вещей (см. нерешённые проблемы выше) и скорости прогресса, я бы сделал прогноз, что человечеству потребуется ещё 5–7 лет, чтобы ИИ начал конкурировать с человеком в деле не написания простеньких алгоритмов, а огромных систем. Во-первых, нейросети нужно будет научиться «держать в голове» код смежных компонентов, чтобы при правке одного места не ломать другие. Во-вторых, нужно будет, по-видимому, научить ИИ тестировать свой код, то есть внедрить некое подобие reinforcement learning в процесс не только первоначального обучения, но инференса (впрочем, все мы знаем истории о живых программистах, которые кидают на мастер код без билда и юнит-тестов, так что тут сделаем для ИИ скидочку).
Сложно представить, что будет с программистами после этого. Скорее всего, корпорации начнут постепенно освобождаться от них, начиная с позиций джунов и заканчивая позициями архитекторов. Когда дойдут до последних — неизвестно, потому что архитекторам нужно держать в голове не просто код, а массу вещей, тяжело понимаемых даже людьми, не говоря уж о машинах: производительность системы, масштабируемость, лёгкость поддержки, противоречивые хотелки заказчиков, интриги разных отделов фирмы, юридическое законодательство, особенности тендерной системы (if you know what I mean) и т.д. и т.п.
Но если говорить именно о перспективном вхождении в IT на джуниорской позиции, то риски высоки: у вас уйдёт несколько лет на обучение, а по завершению вдруг выяснится, что ваше место уже занял ИИ.
Это проблема, которая не решается в рамках отрасли. Это скорее общая проблема прогресса. На протяжении уже многих столетий внедрение новых технологий выкидывает на улицу миллионы людей. И очень редко государство заботится о них, обрекая на голодное существование, пока они не найдут себе новое занятие. Сейчас, с победоносным шествием ИИ процесс сокращений будет ускоряться. Возможно, по экспоненте (технологическая сингулярность, все дела).
Некоторые советуют внедрить «безусловный базовый доход», ведь вкалывать будут роботы, а не человек. Это выглядит разумно, вот только кому это нужно? Тем людям, которые лишаются работы. А разве люди, которые владеют ИИ, лишатся работы? Наоборот, ИИ будет работать на них, ресурсы будут у них, а безусловный базовый доход будет проходить по статье расходов. А разве сокращение расходов — не главная мечта корпораций и государств?
Получается, что ИИ может отправить нас либо в светлое будущее, либо в нуарный киберпанк со всемогущими корпорациями и миллиардами нищих «отбросов общества». Куда мы придём — зависит от того, кто контролирует ИИ. Пока контролирует частный бизнес, и пока в обществе не особо слышно даже дискуссии об этом, не говоря уж об открытых требованиях сделать контроль над мега-нейросетями, подобными ChatGPT, более демократичным. Слышны только призывы остановить разработку ИИ в принципе. Но это невозможно: создание искусственного интеллекта — неизбежное следствие желания человеческого разума автоматизировать рутинную работу. Можно лишь сделать внедрение ИИ более контролируемым и плавным, обеспечивая увольняемым достойные компенсации. Иными словами, затраты на обеспечение/переобучение людей, потерявших работу, должны быть включены в стоимость внедрения новых технологий. Но и об этом дискуссий почти не слышно.
Призываю понять вот что: мы с вами оказались в течении, по которому ещё можно плыть безопасно и даже комфортно какое-то время, но рано или поздно оно приведёт всех в канализационный сток. И сможете ли вы выбраться из этой канализации — это большой вопрос.
Единственный же способ выйти из этого потока вовремя — организовываться и выступать единым коллективом за права тех, кто теряет работу и тех, кто пока её ещё имеет. В том числе, создавать профсоюзы. Поодиночке отстаивать своё право на достойно оплачиваемый труд (или хотя бы безусловный базовый доход) будет всё сложнее, а со временем — вообще невозможно.