/
Вопросы и ответы
/
Вайбкодинг
/

Как устроен трансформер

Как устроен трансформер

10 часов назад

Никита Вихров

Ответы

0

Как устроен трансформер

Трансформер — это архитектура нейросети, на которой построены все современные языковые модели: GPT, Claude, Gemini, LLaMA. Понимание того, как он работает, помогает лучше писать промпты и понимать ограничения моделей.

Входные данные: токены и эмбеддинги

Текст сначала разбивается на токены, каждый токен превращается в вектор (эмбеддинг) — список из тысяч чисел. К этому вектору добавляется позиционное кодирование, чтобы модель знала, где в предложении стоит каждый токен. Без позиционного кодирования «кот съел мышь» и «мышь съела кот» были бы неразличимы.

Механизм внимания (attention)

Это ключевая часть трансформера. Для каждого токена модель вычисляет, насколько он «связан» с каждым другим токеном в контексте.

Пример: в предложении «банк выдал кредит, и он пришёл вовремя» — слово «он» связано с «кредит», а не с «банк». Механизм внимания учится находить такие связи.

Технически: каждый токен превращается в три вектора — Query (запрос), Key (ключ), Value (значение). Внимание вычисляется как скалярное произведение Query одного токена на Key всех остальных, нормализуется через softmax и взвешивает Value. Результат — новое представление токена с учётом контекста.

Multi-head attention: этот процесс запускается параллельно несколько раз (голов бывает 8, 16, 32...). Каждая голова учится замечать разные типы связей: одна — синтаксические, другая — семантические, третья — кореференцию.

Слои и глубина

Трансформер состоит из N одинаковых блоков (layers), уложенных друг на друга. GPT-3 — 96 слоёв, Claude 3 — предположительно 100+. Каждый слой уточняет представление токенов: нижние слои ловят синтаксис, верхние — абстрактный смысл.

После attention в каждом блоке стоит Feed-Forward Network (FFN) — обычная двухслойная нейросеть, которая обрабатывает каждый токен независимо. Именно в FFN хранится большая часть «знаний» модели.

Почему трансформер лучше предшественников

До трансформеров использовали рекуррентные сети (RNN, LSTM). Они обрабатывали текст последовательно — токен за токеном, и «забывали» начало длинного текста к концу. Трансформер обрабатывает все токены параллельно и видит весь контекст сразу — отсюда и большие контекстные окна.

Почему это важно на практике

  • Модель одинаково хорошо видит начало и конец контекста — но середина длинного контекста обрабатывается хуже (эффект «lost in the middle»)
  • Внимание квадратично по длине контекста — удвоили контекст, вычислений стало в 4 раза больше. Поэтому большие контекстные окна дороги
  • Модель не «читает» текст слева направо при генерации — она видит весь промпт сразу, а потом генерирует по одному токену

Если коротко: трансформер — это механизм, который учит каждый токен «смотреть» на все остальные и понимать свой смысл через их контекст. Именно это делает модели такими мощными.

10 часов назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845