Large Language Models: введение, предыстория, подходы к доработке

О чем статья и почему LLM сейчас в тренде?

Large Language Models (LLM) — это крупные языковые модели, способные выполнять разнообразные задачи: генерировать связный текст, переводить, обрабатывать и понимать человеческую речь, отвечать на вопросы и многое другое. Они стали одним из самых горячих направлений в ИИ, потому что автоматизируют и облегчают множество бытовых и профессиональных задач.

Large Language Models: введение, предыстория, подходы к доработке

По данным отчёта The State of Generative AI in the Enterprise (Menlo Ventures, 2024), инструменты генеративного ИИ активно входят в повседневную жизнь программистов, копирайтеров, врачей и других специалистов. . Наиболее популярные сценарии применения LLM и моделей генеративного ИИ сегодня:

  • Кодовые копилоты (автоматическая генерация и автодополнение кода);
  • Чатботы поддержки (обслуживание клиентов, ответы на часто задаваемые вопросы);
  • Поиск + извлечение данных (умный поиск по документам, анализ больших объёмов информации);
  • Суммаризация встреч (автоматическое создание конспектов и отчётов).

Такой широкий спектр применения побуждает студентов и специалистов углублённо изучать LLM: как они работают и как адаптировать их под конкретные задачи.

2. Предыстория: архитектура трансформеров

Чтобы понять, откуда берутся все эти возможности, нужно познакомиться с архитектурой трансформеров. Эта архитектура (описанная в статье Attention is All You Need) лежит в основе практически всех современных LLM, включая GPT, Llama, Mistral и т.д.

Ключевые блоки трансформера

Трансформер в общем виде состоит из двух основных частей:

  • Энкодер (Encoder)
  • Принимает входные данные (например, текст или код) и анализирует их, чтобы "понять" связи между словами или токенами.Состоит из многократных слоёв внимания (multi-head attention), нормализации и фидфорвард-слоёв.
  • Декодер (Decoder)
  • Отвечает за генерацию выходных данных (например, перевода или продолжения текста). Он использует информацию, полученную от энкодера, а также собственный механизм внимания.В моделях типа GPT используется только декодерная часть (decoder-only architecture).

«LLM умеют только генерировать следующий токен»

В основе любой LLM лежит задача предсказания следующего токена (слова или его части). На каждом шаге модель анализирует уже сгенерированный текст (или начальный контекст запроса) и вычисляет распределение вероятностей для следующего токена. Происходит выбор наиболее вероятного варианта— так пошагово формируется итоговый ответ.

Хотя это может показаться простым — «просто выбираем следующее слово» — на самом деле этот процесс, обучаясь на огромном количестве данных, позволяет моделям отвечать на разнообразные вопросы, создавать тексты в разных стилях и решать сложные интеллектуальные задачи.

3. Переход к LLM: что это и как работает?

Когда мы говорим о «больших языковых моделях» (LLM), мы имеем в виду мощные трансформеры, обученные на огромных объемах данных. Чтобы адаптировать LLM под конкретные бизнес-сценарии или научные задачи, обычно используют два ключевых подхода:

  • Fine-tuning (дообучение модели);
  • Prompt engineering (искусство составления запросов).

В следующих разделах мы подробнее рассмотрим каждый из этих методов.

Кстати, также существует подход – Retrieval-Augmented Generation (RAG), при котором модель «подтягивает» данные из внешней базы, но сейчас мы сосредоточимся на fine-tuning и prompt engineering.

4. Fine-tuning

Fine-tuning даёт возможность «донастроить» большую модель под специфическую задачу. Существуют разные методы:

1. Supervised Fine-tuning (SFT)

- Дообучение модели на размеченных данных (пример: пара «вопрос-ответ»);

- Позволяет обучить LLM более точно отвечать на типовые вопросы или генерировать текст в определённом стиле.

2. RLHF (Reinforcement Learning from Human Feedback)

- Использует оценки качества ответов от реальных людей;

- Модель дообучается методами обучения с подкреплением, чтобы выдавать ответы, максимально удовлетворяя человеческим предпочтениям.

3. DPO (Direct Preference Optimization)

- Упрощённая версия подхода, похожего на RLHF, где модель оптимизируется непосредственно под «предпочитаемые ответы» без сложных схем RL;

- Экономит вычислительные ресурсы и может быть проще в реализации.

4. Prompt Tuning

- Модель «не дообучают» целиком. Вместо этого обучаем специальные «промпт-эмбеддинги» (набор токенов), которые добавляются к запросу;

- Подходит, когда нужно быстро поднастроить модель под определённый формат выхода или стиль.

5. Prefix Tuning

- Похож на Prompt Tuning, но изменяются лишь некоторые префиксы внутри слоёв внимания;

- Экономит ресурсы, т.к. вся модель не перетренировывается.

6. LoRA (Low-Rank Adaptation)

- Добавляет «низкоранговые» матрицы к весам модели для адаптации под задачу;

- Уменьшает объём доучиваемых параметров, что упрощает и ускоряет fine-tuning.

Существуют и другие подходы (Adapter, BitFit и т.д.). Если захотите узнать о них подробнее — ставьте лайк этой статье! Мы можем посвятить этим методам более глубокий разбор.

5. Prompt Engineering

Prompt Engineering — это грамотное составление запроса к модели. Иногда гораздо проще (и дешевле) подобрать правильную формулировку вопроса или инструкцию, чем дообучать большую модель.

Виды промптов

  • Системный промпт (System Prompt) — определяет базовые правила и стиль ответа.
  • User Prompt — вопрос или задача от пользователя.
  • Developer Prompt — инструкции для настройки поведения модели, «логика» взаимодействия.

Основные подходы Prompt Engineering

1. Zero-shot prompting

- Формулируем задачу без примеров;

- «Опиши влияние социальных сетей на молодежь одним абзацем.»

2. Few-shot prompting

- Предоставляем модели несколько примеров «вход → выход», чтобы задать формат;

- После примеров даём новую задачу без ответа, но модель уже «поняла», как отвечать.

3. Chain-of-Thought

- Модель генерирует промежуточные рассуждения перед финальным ответом;

- Повышает точность в сложных логических задачах.

4. Self-Consistency

- Модель генерирует несколько параллельных цепочек размышлений;

- Итоговый ответ «согласуется» (выбирается наиболее частый или наиболее обоснованный).

5. Tree-of-Thought

- Расширение идеи Chain-of-Thought, где строится «дерево» возможных решений;

- Полезно при решении задач с разветвлённой логикой.

6. ReACT Prompting

- Сочетает рассуждения (Reason) и действия (Act), полезно для LLM-агентов, которые «взаимодействуют» с окружением;

- Например, модель не только рассуждает, но и совершает запросы к API.

7. Recursive Prompting

- Итеративный подход: результат предыдущего вывода подаётся обратно в модель, уточняется или развивается;

- Удобно для итеративного улучшения ответа или проведения многоэтапных вычислений.

Существует и много других техник, но в рамках вводной статьи мы рассмотрели самые популярные. Если интересно узнать о них подробнее, оставляйте реакции — выпустим расширенную статью!

6. Итог и будущее: тренд на RAG и LLM-Agent системы

Сейчас одиночная LLM (Single LLM) уже может выполнять множество практических задач — от генерации кода до анализа информации. Однако всё яснее становится тренд на более гибкие решения, где модель не просто генерирует текст, но и активно работает с внешними источниками и другими моделями.

Популярность RAG и агентных систем растёт

Согласно недавнему исследованию The State of Generative AI in the Enterprise (Menlo Ventures, 2024), использование традиционных методов fine-tuning и prompt engineering постепенно снижается. Вот в какие направления всё больше стремятся компании и исследователи:

  • Retrieval-Augmented Generation (RAG)
  • Подход, при котором LLM динамически подтягивает актуальные данные из внешних баз (документы, поисковые индексы).Дает «свежее» знание при генерации ответов без дополнительного обучения модели.
  • LLM-Agent и Multi-Agent системы
  • Модели не только отвечают на вопросы, но и взаимодействуют с внешними API, решая задачи пошагово и общаясь между собой.Это приводит к созданию более автономных и комплексных решений, где несколько агентов (или несколько экземпляров модели) работают вместе, обмениваясь информацией для достижения общей цели.

Почему растёт интерес к этим подходам?

  • Актуальность данных: классический fine-tuning не даёт возможности «учитывать свежие сведения» в реальном времени. RAG решает эту проблему, подключаясь к постоянно обновляемым базам знаний (но имеет кучу своих нюансов).
  • Гибкость и автономность: агентные системы могут решать более сложные задачи, выходящие за рамки одной модели. Они комбинируют навыки разных агентов (чтение, генерация кода, анализ, принятие решений и т.д.).
  • Сокращение расходов на дообучение: вместо многократного fine-tuning компании могут использовать агентный подход, ориентированный на интеракцию и взаимодействие, где каждая модель выполняет свою роль.

Что дальше?

Мы лишь кратко рассмотрели, почему эти направления становятся популярными и какие проблемы они решают. Если хотите узнать больше о RAG и LLM-Agent подходах, их устройстве, лучших практиках и почему не везде это нужно делать, ставьте реакции и делитесь статьёй! В будущем мы детально разберём эти методики, представим архитектуры и конкретные примеры использования.

1
Начать дискуссию