Егор Восточный – Знакомство, флирт и принятие ИИ (страница 1)
Егор Восточный
Знакомство, флирт и принятие ИИ
Глава 1. Что такое ИИ на самом деле?
Большое погружение в устройство языковых моделей
Прежде чем мы научимся использовать искусственный интеллект для повышения продуктивности, нам нужно понять, с чем именно мы имеем дело. Это как сесть за руль автомобиля: вы можете быть отличным водителем, не зная, как устроен двигатель внутреннего сгорания. Но если вы понимаете принципы его работы – почему он греется, почему расходует топливо, почему при резком нажатии на газ происходит именно это, – вы становитесь не просто водителем, а мастером управления. Вы предвидите поведение машины до того, как оно проявится. Вы можете продлить срок её службы, избежать поломок и использовать её возможности на 100 %.
То же самое с большими языковыми моделями (Large Language Models, LLM) – теми самыми ChatGPT, Claude, Gemini, DeepSeek. Чтобы не гадать, почему модель дала именно такой ответ, а не иной, нужно понять три вещи: как она училась, как она «думает» (в кавычках – потому что это не мышление в человеческом смысле) и что она делает в момент, когда вы нажимаете Enter. В этой главе мы разберём всё это максимально подробно, с примерами, метафорами и даже заглянем в «кишки» нейросетей – настолько, насколько это нужно практику.
1.1. Откуда взялись большие языковые модели
1.1.1 Короткая история: от перестановки слов до трансформера
Люди пытались заставить компьютеры «понимать» язык с 1950‑х годов. Первые программы работали по жёстким правилам: если видишь слово «кот», то оно относится к одушевлённым существительным, после него можно поставить глагол в единственном числе и так далее. Такой подход назывался символьным ИИ. Он провалился, потому что в реальном языке слишком много исключений, а люди постоянно нарушают правила.
В 1980‑х появились статистические методы: компьютер не учил правила, а считал вероятности. Например, по огромному корпусу текстов вычислялось, что после «доброе» чаще всего идёт «утро». Это работало для простых задач вроде автодополнения, но не позволяло вести диалог.
В 2010‑х случился прорыв благодаря глубокому обучению и архитектуре рекуррентных нейросетей (RNN) и её усовершенствованной версии LSTM. Эти сети могли обрабатывать текст последовательно, слово за словом, и «запоминать» предыдущие слова через скрытое состояние. Но у них была фундаментальная проблема: по мере удлинения предложения они забывали начало. Представьте, что вы читаете длинный текст и вынуждены держать в памяти только последние два абзаца – всё, что было раньше, постепенно стирается. RNN страдали именно этим.
В 2017 году группа исследователей Google (один из ключевых авторов – Ашиш Васвани) опубликовала статью «Attention Is All You Need». В ней была предложена архитектура трансформер (Transformer), которая полностью отказалась от последовательной обработки. Вместо этого трансформер вводил механизм внимания (attention), позволяющий модели «смотреть» на все слова предложения одновременно и решать, какие из них важны для понимания текущего слова.
Трансформер стал фундаментом всех современных LLM. На его основе были построены:
●
BERT (2018) от Google – для понимания текста, но не для генерации;
●
GPT (2018–2023) от OpenAI – первая успешная серия моделей для генерации;
●
T5, BART, XLNet и другие;
●
современные GPT‑4, Claude 3, Gemini, LLaMA, DeepSeek.
Все они используют вариации трансформера, но обучаются на разных данных и с разными целями.
1.1.2 Как устроен трансформер: три ключевые идеи
Чтобы понять, как модель «думает», нужно познакомиться с тремя основными концепциями трансформера.
1. Токенизация и эмбеддинги
Модель не видит буквы. Входной текст разбивается на токены – небольшие кусочки, которые могут быть целыми словами, частями слов или даже отдельными символами. Например, слово «недоразумение» может быть разбито на токены: «недо», «раз», «уме», «ние». Слово «ChatGPT» может превратиться в «Chat», «G», «PT». В русскоязычных моделях токенизация часто происходит на уровне морфем, чтобы эффективно работать с длинными словами.
Каждый токен преобразуется в вектор эмбеддинга – список чисел (обычно от 768 до 12288 чисел в зависимости от модели). Эти векторы устроены так, что семантически близкие токены оказываются близкими в многомерном пространстве. Например, вектор «король» минус вектор «мужчина» плюс вектор «женщина» даст вектор, близкий к «королева». Модель «выучивает» эти взаимосвязи во время предобучения.
2. Механизм внимания (Self‑Attention)
В традиционных RNN слово обрабатывалось с учётом только предыдущих слов. В трансформере каждое слово может «посмотреть» на все остальные слова в предложении (или даже во всём тексте, если позволяет контекстное окно) и определить, насколько они важны.
Механизм внимания вычисляет три вектора для каждого токена: Query (запрос), Key (ключ) и Value (значение). Представьте себе библиотеку: Query – это ваш поисковый запрос, Key – это названия книг, Value – содержание книг. Вы сопоставляете Query с каждым Key, получаете «вес внимания» (насколько книга соответствует запросу), а затем собираете Value, взвешенные этими весами.
В языке это означает: для слова «банк» в предложении «Я пошёл в банк, чтобы снять деньги» модель обратит внимание на слова «снять», «деньги», «пошёл», и это поможет ей понять, что речь о финансовом учреждении. А в предложении «Я сидел на берегу реки, вода подмывала банк» внимание сместится на «реки», «вода», «берег», и модель поймёт, что банк – это береговая линия.
Трансформер использует многоголовое внимание (multi‑head attention): вместо одной такой операции он выполняет несколько параллельно, каждая «голова» фокусируется на разных типах связей (синтаксических, семантических, позиционных). Затем результаты всех голов объединяются.
3. Позиционное кодирование
Поскольку трансформер обрабатывает все токены одновременно, он не знает, в каком порядке они идут. Чтобы внести информацию о порядке, к эмбеддингам каждого токена прибавляется специальный вектор – позиционное кодирование. Оно может быть синусоидальным (как в оригинальной статье) или обучаемым. Благодаря этому модель различает «кот съел мышь» и «мышь съела кота».
Из этих трёх блоков – эмбеддинги + позиционное кодирование, многоголовое внимание, а также полносвязные слои (FFN) и нормализация – и состоит трансформер. Сотни таких блоков, наложенных друг на друга, образуют глубокую нейросеть с миллиардами параметров.
1.2. Как модель учится: от хаоса к «пониманию»
1.2.1 Предобучение (Pre‑training) – «школа без учителя»
Представьте, что вы учите язык, имея доступ к миллиардам книг, но без словаря, без учителя, без упражнений. Вы просто смотрите на текст и пытаетесь угадать, какое слово должно идти следующим. Сначала вы ошибаетесь почти всегда, но после миллиардов попыток начинаете угадывать всё точнее.
Именно так работает предобучение LLM. Модель получает огромный массив текстов – весь открытый интернет, книги, научные статьи, форумы, код на GitHub, законодательные документы, субтитры к видео, даже базы знаний вроде Википедии. Общий объём составляет триллионы токенов. Для GPT‑4 объём данных оценивается в 13 триллионов токенов.
Задача предобучения: предсказать следующий токен (или, в некоторых архитектурах, замаскированный токен). Модель смотрит на контекст – предыдущие токены – и выдаёт вероятности для всех возможных следующих токенов. Потери (loss) вычисляются как разница между предсказанием и реальным следующим токеном. Ошибка распространяется обратно через всю сеть, и миллиарды весов (параметров) чуть-чуть корректируются.
Этот процесс требует:
●
Вычислительных ресурсов: тысячи графических процессоров (GPU) или специализированных TPU работают непрерывно несколько месяцев. Для GPT‑4 использовалось около 25 000 GPU A100 в течение 90–100 дней.
●
Энергии: одно такое обучение потребляет около 1000 МВт·ч – как небольшой город за несколько месяцев.
●
Финансов: стоимость обучения GPT‑4 оценивается в 100–200 миллионов долларов.
После предобучения модель умеет только одно: предсказывать следующее слово. Она не знает, что такое «доброта» или «инструкция», она просто знает, какие токены чаще всего следуют за другими. Но уже на этом этапе, если дать ей начало фразы, она может продолжить связным текстом, потому что натренирована на связных текстах.
1.2.2 Финальная настройка (Fine‑tuning) – превращение в ассистента
Модель‑предсказатель часто генерирует не то, что нужно. Она может начать перечислять случайные факты, выдавать опасные инструкции, использовать ненормативную лексику или просто отвечать не в формате диалога. Чтобы превратить её в полезного ассистента, требуется финальная настройка.
Этап 1: Обучение с учителем (Supervised Fine‑Tuning, SFT)
Создаётся набор данных из тысяч (часто сотен тысяч) идеальных диалогов. Люди‑аннотаторы пишут правильные ответы на разные запросы. Например:
●
Запрос: «Что такое инфляция простыми словами?»
Ответ: «Инфляция – это процесс, при котором деньги со временем теряют свою покупательную способность, то есть на ту же сумму можно купить меньше товаров, чем раньше. Представь, что булка хлеба стоила 30 рублей, а через год уже 33 – это и есть инфляция.»