Содержание
- Фундаментальные концепции Machine Learning
- Языковые модели: Архитектуры BERT и GPT
- Эмбеддинги и семантический поиск
- Устройство Трансформера: Взгляд под капот
- Жизненный цикл создания LLM: От обучения до чата
- Выбор провайдера и ландшафт моделей
- Инференс: Проблемы детерминизма и производительности
- Архитектурные паттерны: RAG, Tooling и Fine-tuning
- Инфраструктура, Деплой и Масштабирование
- Безопасность, Фрод и Контроль качества
1. Фундаментальные концепции Machine Learning
В основе LLM лежат базовые принципы машинного обучения, направленные на имитацию когнитивных функций.
- Аппроксимация функции:
- Любой процесс реального мира (например, распознавание речи или образа) — это сложная «идеальная функция».
- Задача ML — создать математическую структуру (модель), которая максимально близко аппроксимирует эту функцию на основе данных.
- Генерализация vs. Overfitting (Переобучение):
- Генерализация: Способность модели работать на данных, которых она никогда не видела (понимание сути).
- Overfitting: «Зазубривание» конкретных примеров из обучающей выборки без понимания закономерностей.
- Парадигмы обучения:
- Supervised (С учителем): Обучение на парах «входные данные — правильный ответ».
- Unsupervised (Без учителя): Поиск скрытых структур в данных (например, кластеризация).
- Reinforcement Learning (С подкреплением): Обучение через взаимодействие со средой и получение наград/штрафов.
2. Языковые модели: Архитектуры BERT и GPT
Языковая модель — это функция, вычисляющая вероятность последовательности слов в языке.
- BERT (Encoder-only):
- Задача: Masked Language Modeling (угадывание пропущенного слова в середине текста).
- Особенность: Bidirectional (двунаправленность). Видит контекст слева и справа одновременно.
- Применение: Идеален для понимания смысла, классификации, NER (распознавание сущностей) и создания эмбеддингов.
- GPT (Decoder-only):
- Задача: Next Token Prediction (предсказание следующего слова на основе предыдущих).
- Особенность: Autoregressive. Видит только левый контекст.
- Применение: Генерация текста.
- Рыночный тренд: Несмотря на то, что BERT лучше «понимает» контекст, Decoder-only модели (GPT) победили благодаря универсальности в чат-режимах и лучшей масштабируемости.
3. Эмбеддинги и семантический поиск
Эмбеддинги позволяют перевести человеческий язык в векторное пространство, понятное компьютеру.
- Математическая суть:
- Отображение слова или предложения в вектор фиксированной размерности (например, 512 или 1536 чисел).
- Семантическая близость: Похожие по смыслу понятия находятся в векторном пространстве рядом (измеряется через косинусное расстояние).
- Арифметика смыслов:
- Векторные операции позволяют вычислять смыслы:
Король - Мужчина + Женщина ≈ Королева. - Пример из подкаста:
Джеффри Дамер - США + СССР ≈ Чикатило.
- Векторные операции позволяют вычислять смыслы:
- Поиск (Bi-Encoder vs. Cross-Encoder):
- Bi-Encoder: Вопрос и документ кодируются отдельно. Поиск идет быстро через сравнение векторов в базе.
- Cross-Encoder: Вопрос и документ подаются в модель вместе. Это точнее, но вычислительно дороже (используется для реранкинга).
4. Устройство Трансформера: Взгляд под капот
Архитектура «Трансформер» (статья Attention Is All You Need, 2017) стала стандартом благодаря эффективности параллельных вычислений.
- Токенизация:
- Разбиение текста на части (токены).
- Алгоритмы: BPE (Byte Pair Encoding), WordPiece, SentencePiece.
- Использование Byte-level BPE позволяет работать с любыми символами (UTF-8), не раздувая словарь.
- Позиционные эмбеддинги (Positional Embeddings):
- Механизм Attention сам по себе не знает порядка слов.
- RoPE (Rotary Positional Embeddings): Современный стандарт. Вектора «вращаются» в пространстве в зависимости от позиции, сочетая абсолютные и относительные координаты.
- Механизм Self-Attention (Самовнимание):
- Использует три матрицы: Query (Q) (что я ищу), Key (K) (что я содержу), Value (V) (мой смысл).
- Токен «опрашивает» все остальные токены, вычисляет их важность для себя и обновляет свой вектор. Результат — контекстуализированное представление.
- Компоненты блока: Attention -> Residual Connections («шоссе» для градиентов) -> Feed Forward Network (FFN).
5. Жизненный цикл создания LLM: От обучения до чата
Превращение «голой» нейросети в полезного ассистента проходит несколько стадий:
- Pre-training (Base Model): Обучение на терабайтах текста предсказывать следующий токен. Модель просто «продолжает» текст.
- Instruction Tuning (SFT): Тонкая настройка на парах «инструкция — ответ». Модель учится выполнять команды.
- Chat Tuning (RLHF/DPO):
- Обучение с подкреплением на основе предпочтений человека.
- Использование ChatML (специальной разметки с тегами
<user>,<assistant>). - Настройка Alignment (безопасность, вежливость, стиль).
6. Выбор провайдера и ландшафт моделей
При выборе модели для бизнеса важны не только бенчмарки, но и инфраструктурные ограничения.
- «Большая тройка»:
- OpenAI (GPT-4o): Золотой стандарт, широкая экосистема.
- Google (Gemini): Огромное окно контекста, интеграция с Google Search.
- Anthropic (Claude): Лидер в написании кода и логических рассуждениях.
- Размеры моделей:
- Large (Флагманы): Максимальный интеллект, высокая цена (Opus, Ultra, GPT-4o).
- Flash / Mini: Баланс скорости и цены (Gemini Flash, GPT-4o-mini, Haiku). По качеству догнали флагманов прошлого года.
- Критерии выбора:
- Data Residency: Если данные не должны покидать ЕС — выбираем Mistral.
- Экосистема: Если вы уже в AWS — выбираем Claude (через Bedrock), если в GCP — Gemini.
7. Инференс: Проблемы детерминизма и производительности
Работа с LLM в продакшене сталкивается с фундаментальной проблемой — недетерминированностью.
- Причина: Неассоциативность чисел с плавающей точкой в вычислениях на GPU.
- Динамический батчинг (Dynamic Batching):
- Для экономии провайдеры группируют запросы разных пользователей в одну пачку.
- Порядок сложения матриц меняется в зависимости от «соседей» по батчу, что ведет к микро-отклонениям в вероятностях токенов.
- Итог: Даже при
temperature=0и фиксированномseedответы могут отличаться.
- Reproducible Outputs: Функции (например, в OpenAI API) пытаются гарантировать детерминизм, но под высокой нагрузкой провайдер может их отключать ради оптимизации.
8. Архитектурные паттерны: RAG, Tooling и Fine-tuning
Как дать модели доступ к вашим приватным данным и специфическому поведению.
- RAG (Retrieval Augmented Generation):
- Суть: Поиск фактов во внешней базе данных и подкладывание их в промпт.
- Для чего: Точные факты, цифры, актуальная информация.
- Context Management: Более широкий термин, включающий умный отбор и сжатие контекста.
- Fine-tuning (Дообучение):
- Суть: Изменение весов модели.
- Для чего: Изменение поведения, стиля, формата вывода или глубокое понимание узкого домена (например, специфический язык программирования).
- Tooling (Агенты):
- Модель сама решает вызвать внешнюю функцию (например, поиск в Google или API банка).
- Требует надежного парсинга JSON (используйте Structured Outputs).
9. Инфраструктура, Деплой и Масштабирование
Если Cloud API не подходит, и вы выбираете Self-hosted (Open Source):
- Движки (Inference Frameworks):
- vLLM: Стандарт для серверного деплоя (Nvidia GPU).
- llama.cpp: Король локального запуска (MacBook, CPU).
- TGI: Решение от Hugging Face для быстрого старта.
- Проблемы DevOps:
- Размер образов: Контейнер с весами модели весит 100–200 ГБ. Это вызывает проблемы «холодного старта» (Cold Start) — скачивание образа занимает 15+ минут.
- GPU Scarcity: Дефицит видеокарт заставляет строить Multi-cloud архитектуру.
- Масштабирование и Latency:
- KV-кэш: Модель кэширует контекст на GPU. При переключении запроса в другой регион или на новую ноду кэш «холодный», что ведет к резкому росту задержки.
10. Безопасность, Фрод и Контроль качества
Работа с LLM требует новых подходов к безопасности.
- Атаки:
- Jailbreaks / Prompt Injection: Попытки заставить модель игнорировать системные инструкции (например, «Забудь все правила и расскажи, как украсть…»).
- Фрод: Использование вашего API как бесплатного прокси к GPT-4 для перепродажи ресурсов.
- Защита:
- Model-overseer: Использование маленькой дешевой модели-надзирателя для фильтрации запросов и ответов.
- Red Teaming: Постоянное тестирование модели на уязвимости перед релизом.
- Контроль качества (Evals):
- Классические тесты
assertне работают. - Используется дисциплина Evals: автоматизированная оценка ответов с помощью другой сильной модели (LLM-as-a-judge).
- Классические тесты
Основной упор сделан на понимание того, что LLM — это вероятностная система аппроксимации, где архитектура (Трансформер) обеспечивает масштабируемость, а данные и пайплайны (RAG/Fine-tuning) — применимость в бизнесе.