Понимание трансформера

Введение в LLM на Python

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Что такое трансформер?

  • Архитектуры глубокого обучения
  • Обработка, понимание и генерация текста
  • Используются в большинстве LLM
  • Обрабатывают длинные последовательности текста параллельно

Иллюстрация трёх архитектур трансформера: только энкодер, только декодер и энкодер-декодер

Введение в LLM на Python

Архитектуры трансформеров

Иллюстрация трёх архитектур трансформера: только энкодер, только декодер и энкодер-декодер

  • Сведения об архитектуре можно найти в карточке модели на Hugging Face
Введение в LLM на Python

Только энкодер

Иллюстрация архитектуры «только энкодер»

  • Понимание входного текста
  • Нет последовательного вывода
  • Типичные задачи:
    • Классификация текста
    • Анализ тональности
    • Извлекающий вопрос-ответ (извлечение или разметка)
  • Модели BERT
  • Пример: "distilbert-base-uncased-distilled-squad"
Введение в LLM на Python

Только энкодер

Иллюстрация архитектуры «только энкодер»

llm = pipeline(model="bert-base-uncased")
print(llm.model)
BertForMaskedLM(
  (bert): ...
    )
    (encoder): BertEncoder(
      ...
print(llm.model.config)
BertConfig {
...
  "architectures": [
    "BertForMaskedLM"
...
Введение в LLM на Python

Только энкодер

Иллюстрация архитектуры «только энкодер»

print(llm.model.config.is_decoder)
False
  • Альтернатива: llm.model.config.is_encoder_decoder
Введение в LLM на Python

Только декодер

Иллюстрация архитектуры «только декодер»

  • Акцент на выходных данных
  • Типичные задачи:
    • Генерация текста
    • Генеративный вопрос-ответ (предложения или абзацы)
  • Модели GPT
  • Пример: "gpt-5.4-mini"
Введение в LLM на Python

Только декодер

Иллюстрация архитектуры «только декодер»

llm = pipeline(model="gpt2")
print(llm.model.config)
GPT2Config {
...
  "architectures": [
    "GPT2LMHeadModel"
  ],
...
  "task_specific_params": {
    "text-generation": {
...
print(llm.model.config.is_decoder)
False
Введение в LLM на Python

Энкодер-декодер

Иллюстрация архитектуры энкодер-декодер

  • Понимание и обработка входных и выходных данных
  • Типичные задачи:
    • Перевод
    • Суммаризация
  • Модели T5, BART
Введение в LLM на Python

Энкодер-декодер

Иллюстрация архитектуры энкодер-декодер

llm = pipeline(model="Helsinki-NLP/opus-mt-es-en")
print(llm.model)
MarianMTModel(
...
    (encoder): MarianEncoder(
...
    (decoder): MarianDecoder(
...
Введение в LLM на Python

Энкодер-декодер

Иллюстрация архитектуры энкодер-декодер

print(llm.model.config)
MarianConfig {
...
  "decoder_attention_heads": 8,
...
  "encoder_attention_heads": 8,
...
  "is_encoder_decoder": true,
...
print(llm.model.config.is_encoder_decoder)
True
Введение в LLM на Python

Давайте потренируемся!

Введение в LLM на Python

Preparing Video For Download...