💡 Адаптация нейросетей: Техники настройки LLM 0:00
Большие языковые модели (LLM), такие как GPT-3, проходят путь от простых автодополнителей текста до интеллектуальных чат-ботов вроде ChatGPT благодаря последовательной настройке. В этой статье мы разберем, как именно происходит этот процесс: от обучения на огромных массивах данных до узкоспециализированной донастройки под бизнес-задачи.
🏗️ Путь от базовой модели к InstructGPT 2:02
Изначально такие модели, как GPT-3, обучались исключительно на предсказание следующего слова. Несмотря на способность генерировать связный текст, они часто выдавали нерелевантные или «галлюцинирующие» ответы.
- Instruction Tuning (обучение с инструкциями): Метод, позволивший моделям понимать, что от них требуется выполнение конкретной задачи.
- Supervised Fine-Tuning (SFT): Первый шаг, при котором модель дообучается на 12 500 отобранных человеком пар «вопрос-ответ». Это значительно улучшает способность модели следовать инструкциям.
- Reinforcement Learning from Human Feedback (RLHF): Второй шаг, направленный на автоматизацию оценки ответов. OpenAI собрала 33 000 инструкций, для каждой из которых модель генерировала несколько вариантов ответов. Люди-оценщики ранжировали их, что позволило обучить модель вознаграждения (reward model).
- Оптимизация: Модель вознаграждения присваивает числовой рейтинг ответу, а затем с помощью алгоритмов обучения с подкреплением (reinforcement learning) веса базовой модели «подталкиваются» в сторону более высоких оценок.
ChatGPT стал результатом того же процесса, но с обучением на последовательных диалоговых цепочках, что позволяет ему поддерживать контекст беседы.
🛠️ Инструментарий: от Zero-shot до RAG 30:04
Для адаптации модели под узкие бизнес-задачи без изменения её внутренних весов используются следующие техники:
- Zero-shot prompting: Модель выполняет задачу без предварительных примеров, основываясь на инструкциях в промпте.
- Few-shot prompting: В промпт добавляются 2–3 примера, задающих нужный формат и стиль.
- Retrieval-Augmented Generation (RAG): Самый востребованный в бизнесе метод. Поскольку контекстное окно LLM ограничено, невозможно «скормить» ей всю базу знаний. RAG решает эту проблему так:
- Все документы компании разбиваются на фрагменты (chunks).
- Для каждого фрагмента вычисляется контекстный эмбеддинг (векторное представление).
- При запросе пользователя система находит 3–5 наиболее релевантных фрагментов через косинусное сходство.
- Только эти фрагменты добавляются в промпт к LLM как «контекст».
⚙️ Тонкая настройка: LoRA и эффективность
Fine-tuning — это процесс изменения внутренних весов модели для глубокой специализации. Настройка огромных моделей вроде Llama-2 (70 млрд параметров) требует колоссальных ресурсов: от 6–7 GPU типа A100/H100.
Для демократизации процесса используется Low-Rank Adaptation (LoRA):
- Вместо обновления всей матрицы весов (например, 8000x8000), обновляются лишь две маленькие матрицы, произведение которых аппроксимирует изменения (дельта-матрицу).
- Это позволяет сократить количество параметров для тренировки на 99,98%.
- Результат: модель (даже на 7–13 млрд параметров) можно дообучить на одной видеокарте потребительского уровня.