8.06. LLM и ChatGPT
Большие языковые модели
Что такое LLM
Большая языковая модель (Large Language Model, LLM) — это класс машинных моделей глубокого обучения, предназначенный для обработки естественного языка и генерации связных текстов, соответствующих по стилю, смыслу и структуре входному запросу или контексту. Термин «большая» отражает два ключевых аспекта: масштаб параметров модели (обычно сотни миллионов, миллиарды и более) и объём обучающих данных (десятки и сотни миллиардов токенов). Такие масштабы позволяют фиксировать статистические закономерности языка, в том числе — сложные семантические, прагматические и стилистические зависимости, которые недоступны для моделей меньших размеров.
Важно разделять LLM как абстрактную концепцию и конкретные реализации — GPT, LLaMA, Claude, Gemini и др. Это разные архитектуры, обученные на разных данных, но объединённые общей задачей: прогнозирование вероятностного распределения следующего токена при заданной последовательности предыдущих токенов.
Как работают LLM
Работа любой LLM основана на фундаментальном принципе — авторегрессивной генерации: модель последовательно формирует выходной текст, на каждом шаге принимая решение о наиболее вероятном следующем элементе — токене. Токен может представлять собой слово, его часть (например, подслово, суффикс), знак препинания или специальный символ. Такая стратегия позволяет эффективно обрабатывать редкие слова и производные формы без необходимости хранить в словаре каждую возможную вариацию. Токенизация — ключевой этап подготовки данных, влияющий как на качество обучения, так и на производительность инференса.
На каждом шаге модель вычисляет условное распределение вероятностей для всех возможных токенов из своего словаря:
P(tₙ₊₁ | t₁, t₂, …, tₙ).
Выбор конкретного токена может происходить детерминированно — через аргмакс (выбор одного токена с максимальной вероятностью), либо стохастически — с использованием температуры и методов выборки (например, top-k, nucleus sampling). Температура управляет степенью энтропии при выборке: при низкой температуре модель склонна к консервативным, повторяющимся фразам; при высокой — к разнообразному, иногда неустойчивому или неадекватному тексту. Этот параметр влияет только на стратегию декодирования выходов модели.
Архитектурно процесс инференса у LLM реализован как прямой проход по сети без обратных связей (feed-forward), что принципиально ограничивает её способность к многошаговым внутренним рассуждениям. Модель не «думает» перед выводом ответа и не строит явных логических цепочек в том смысле, как это делает человек. Она последовательно генерирует символы, основываясь на статистическом обобщении из обучающих данных.
Обучение больших языковых моделей
Обучение LLM состоит из нескольких этапов: предобучение, дополнительная донастройка и, в ряде случаев, пост-обработка выходов.
Предобучение осуществляется в режиме self-supervised learning — без явной разметки. Классическая задача — masked language modeling (как в BERT) или causal language modeling (как в GPT), где модель восстанавливает скрытую или следующую часть текста. На этом этапе модель учится понимать синтаксис, морфологию, базовую семантику и стилистику языка. Обучающий корпус формируется из гигабайтов и терабайтов открытых текстов: книг, статей, веб-страниц, документации, чат-логов. Критически важна чистота и сбалансированность корпуса: наличие шумных или предвзятых данных напрямую влияет на поведение модели.
В процессе обучения формируются эмбеддинги — векторные представления токенов в многомерном пространстве фиксированной размерности. Эмбеддинги кодируют идентификатор токена и его контекстуальные свойства: семантическую близость, грамматическую роль, частоту употребления. Векторное пространство организовано так, что линейные отношения между эмбеддингами часто отражают семантические аналогии (например, король − мужчина + женщина ≈ королева). Это не случайность — такие отношения возникают как побочный эффект оптимизации под задачу предсказания: если два слова часто занимают схожие позиции в синтаксических конструкциях, нейросеть учится проецировать их в близкие области пространства.
Донастройка (fine-tuning) — этап, на котором базовая предобученная модель адаптируется под конкретную задачу. Для чат-ориентированных моделей это обычно инструктаж по образцам (instruction tuning): обучение на парах «запрос — желаемый ответ», сформированных экспертами или полученными через reinforcement learning from human feedback (RLHF). Цель — скорректировать поведение модели в диалоге: повысить полезность, согласованность, отказоустойчивость и безопасность.
Донастройка не переписывает всю модель полностью. Она корректирует веса в основном «верхних» слоях — тех, что отвечают за принятие решений, в то время как нижние, отвечающие за базовые языковые признаки, остаются почти неизменными. Возможны и более экономичные подходы — например, LoRA (Low-Rank Adaptation), где изменения вносятся через дополнительные матрицы малого ранга.
Онлайн- и офлайн-инференс
LLM могут использоваться в двух основных режимах:
-
Офлайн-инференс — когда запрос обрабатывается единоразово, без необходимости немедленного ответа. Примеры: генерация документации, анализ логов, пакетная обработка документов. Здесь допустимы длительные задержки, высокая стоимость вычислений и использование очень больших моделей. Возможно применение «цепочек мыслей» (chain-of-thought prompting), когда модель выводит промежуточные рассуждения перед финальным ответом.
-
Онлайн-инференс — интерактивный режим, при котором задержка ответа становится ключевым ограничением. Здесь важны оптимизация движков инференса (например, vLLM, TensorRT-LLM, llama.cpp), квантование весов (переход от float32/float16 к int8 или int4), кэширование ключей и значений внимания (KV cache), а также стриминговая генерация — постепенная отдача токенов по мере их генерации, без ожидания завершения всего текста.
Онлайн-инференс, в особенности в веб-интерфейсах, также требует инженерной поддержки: балансировка нагрузки, управление сессиями, защита от злоупотреблений, логирование и аудит. Реализация устойчивого онлайн-API для LLM — отдельная инфраструктурная задача, сравнимая по сложности с разработкой высоконагруженных микросервисов.
Архитектура Transformer
Технологический прорыв, позволивший создать LLM в их современном виде, связан с появлением архитектуры Transformer, предложенной в 2017 году в статье «Attention Is All You Need». До этого доминировали рекуррентные сети (RNN, LSTM, GRU), обладавшие принципиальными ограничениями: последовательная обработка входной последовательности затрудняла параллелизацию обучения, а градиенты, проходящие через длинные цепочки, быстро затухали, что делало обучение на длинных текстах неэффективным.
Transformer устранил эти проблемы, полностью отказавшись от рекуррентности. Его ключевой элемент — механизм внимания (attention mechanism), который позволяет модели на каждом шаге учитывать все предыдущие позиции в последовательности с разной степенью значимости. Внимание формализовано как взвешенная сумма «значений» (values), где веса определяются скалярным произведением «запросов» (queries) текущей позиции и «ключей» (keys) всех предыдущих позиций. Этот механизм обеспечивает прямую связь между любыми двумя токенами независимо от расстояния между ними, что критически важно для понимания сложных синтаксических зависимостей, анафоры, согласования и дискурсивных связей.
Архитектура состоит из стека идентичных блоков — слоёв. В каждом слое реализованы два основных подблока: многоголовое внимание (multi-head attention) и полносвязная сеть (feed-forward network).
Многоголовое внимание означает, что на каждом слое вычисляется множество независимых «внимательных» представлений текста — голов. Каждая голова обучается выделять собственный тип зависимости: одна — синтаксическую роль, другая — тематическую принадлежность, третья — дискурсивный маркер и так далее. Результаты всех голов конкатенируются и линейно проецируются в единое пространство, обеспечивая гибкость и выразительность представления.
После блока внимания следует полносвязный подслой — двухслойная нейросеть с нелинейной активацией (обычно — GELU или ReLU). Он действует как локальный «уточнитель»: преобразует внимательное представление, добавляя нелинейные корректировки.
Каждый подблок снабжён остаточными соединениями (residual connections) и нормализацией по слоям (layer normalization), что стабилизирует градиентный поток и позволяет строить очень глубокие сети — до 100 и более слоёв.
В архитектуре Transformer различают энкодер и декодер. Энкодер обрабатывает входную последовательность и формирует её контекстуальное представление. Декодер генерирует выходную последовательность, на каждом шаге обращаясь как к уже сгенерированным токенам (через маскированное само-внимание, чтобы избежать «подглядывания» в будущее), так и к выходу энкодера (через внимание к энкодеру).
В GPT-подобных моделях используется только декодер (decoder-only), так как задача — генерация по префиксу, без необходимости явного кодирования полного контекста отдельным блоком. В BERT-подобных моделях используется только энкодер (encoder-only), так как задача — анализ фиксированного фрагмента текста (классификация, извлечение именованных сущностей и т.п.). Модели вроде T5 или BART сохраняют полную архитектуру encoder-decoder, что удобно для задач перевода или суммаризации.
Токенизация
Токенизация — ключевой фактор качества и эффективности LLM. Наиболее распространённые схемы — Byte Pair Encoding (BPE) и SentencePiece.
BPE работает итеративно: начинается со словаря отдельных символов, затем на каждом шаге объединяет наиболее часто встречающуюся пару соседних символов (или подтокенов) в новый токен. Процесс продолжается, пока не будет достигнут желаемый размер словаря (обычно 30 000–100 000 токенов). Это позволяет эффективно кодировать как частые слова целиком, так и редкие — через подслова. Например, слово «unbelievable» может токенизироваться как «un» + «believ» + «able», что экономит место в словаре и сохраняет морфологические корни.
SentencePiece — более общая реализация, не привязанная к границам слов: она обучается непосредственно на сырых байтах (byte-level BPE), что избавляет от необходимости предварительной сегментации текста на слова и делает модель устойчивой к шуму (орфографическим ошибкам, нестандартным написаниям, языкам без пробелов).
Для русского языка, с его богатой флективной морфологией, подсловые токенизаторы особенно эффективны: одно и то же словообразовательное ядро (например, «работ» в «работа», «работник», «работодатель») может быть выделено в отдельный токен, что улучшает обобщение модели. Однако токенизация требует аккуратной адаптации: использование токенизатора, обученного преимущественно на английском, приводит к избыточной фрагментации русских слов и снижению качества.
Mixture of Experts
Постоянное увеличение числа параметров LLM (от GPT-3 с 175 млрд до GPT-4 с предполагаемыми 1.7 трлн) столкнулось с физическими и экономическими ограничениями. Один из наиболее эффективных путей масштабирования — архитектура Mixture of Experts (MoE).
Суть MoE: вместо одного плотного feed-forward блока в каждом слое используется набор («экспертов») — от нескольких десятков до сотен. На каждом шаге обработки токена активируются только небольшая часть экспертов (обычно 1–2 из 8, 16 и более), выбираемых роутером — лёгкой нейросетью, принимающей решение на основе входного представления токена. Таким образом, общее число параметров модели может быть огромным (триллионы), но число фактически задействованных при обработке одного токена остаётся сопоставимым с плотной моделью (десятки миллиардов).
MoE позволяет достигать качества моделей с триллионами параметров при инференсе, близком по стоимости к моделям на порядок меньше. Однако она вносит сложность: обучение становится нестабильным (роутеры могут «застревать», направляя все токены к одним и тем же экспертам), а задержка инференса — менее предсказуемой (зависит от нагрузки на выбранных экспертов). Тем не менее, MoE считается одной из главных архитектурных инноваций в LLM 2023–2025 годов и применяется в таких моделях, как Mixtral (Mistral AI), DeepSeek-MoE и части GPT-4.
Рассуждающие LLM и пределы «мышления»
Термин «рассуждающая LLM» (reasoning LLM) — скорее маркетинговый и методологический, чем архитектурный. Никакая современная LLM не обладает явным механизмом логического вывода в формальном смысле. Она не хранит доказательств, не проверяет несоответствия, не строит деревья решений. Её «рассуждения» — это имитация рассуждений, возникающая как статистический паттерн: если в обучающих данных часто встречались фразы вида «Шаг 1: … Шаг 2: … Следовательно, …», модель научится генерировать подобные конструкции.
Тем не менее, существуют методы, повышающие способность модели к многошаговым выводам:
- Chain-of-Thought (CoT) prompting — явное побуждение модели выводить промежуточные шаги перед финальным ответом. Эффект особенно заметен в арифметике и логических головоломках.
- Tree-of-Thoughts (ToT) — более сложный подход, при котором генерируются и оцениваются несколько альтернативных путей рассуждений.
- Self-Consistency — генерация множества независимых цепочек мыслей и выбор наиболее часто встречающегося ответа.
- ReAct (Reason + Act) — чередование генерации рассуждения и вызова внешнего инструмента (поиск, API, калькулятор).
Эти методы изменяют контекст, в котором модель работает. Рассуждение — это функция промпта, а не внутреннего состояния сети.
Концепция вычислительной несводимости (computational irreducibility), введённая Стивеном Вольфрамом, объясняет фундаментальное ограничение: если процесс требует выполнения последовательности шагов, каждый из которых зависит от результата предыдущего (как в арифметике), то его нельзя «ускорить» статистической моделью. LLM может лишь угадать ответ, основываясь на том, как часто он встречался в обучающих данных. Поэтому для точных вычислений, запросов к базам данных или выполнения кода необходима интеграция с внешними инструментами — через функции (function calling), плагины или агентские фреймворки.
Диффузионные LLM
Термин «диффузионные LLM» требует осторожности. Диффузионные модели (diffusion models) — это класс архитектур, доминирующий в генерации изображений (например, Stable Diffusion), где процесс построения изображения моделируется как постепенное «очищение» шума. В текстовой генерации диффузионные подходы исследовались, но не получили широкого распространения по двум причинам:
- Авторегрессивная генерация (по одному токену) чрезвычайно эффективна для последовательных данных, таких как текст. Диффузия, требующая множества итераций для «декодирования» всего текста одновременно, оказывается медленнее и менее масштабируемой.
- Текст дискретен, в отличие от изображений (непрерывных тензоров). Прямое применение диффузионных уравнений к дискретным токенам требует сложных аппроксимаций.
Исследования вроде «D3PM» (Discrete Denoising Diffusion Probabilistic Models) показывают принципиальную возможность, но на практике все коммерческие LLM остаются авторегрессивными. Таким образом, «диффузионные LLM» — скорее перспективное направление исследований, чем текущая технология.
Вывод LLM
Инференс (inference) — процесс применения обученной модели к новым данным. Для LLM он особенно ресурсоёмок: каждый токен требует прохода через все слои сети, и вычислительные затраты растут линейно с длиной контекста.
Ключевые технологии оптимизации:
- KV-кэширование: при автогрессивной генерации ключи и значения для уже обработанных токенов сохраняются в памяти, а не пересчитываются на каждом шаге. Это снижает вычислительную сложность с O(n²) до O(n) на токен после первого.
- Квантование: преобразование весов из 16-битных (float16/bfloat16) в 8-битные (int8) или даже 4-битные (int4) форматы. Существуют методы (GPTQ, AWQ), позволяющие делать это с минимальной потерей качества.
- Специализированные движки:
- vLLM — обеспечивает высокую пропускную способность за счёт PagedAttention, алгоритма, эффективно использующего фрагментированную память GPU.
- TensorRT-LLM (NVIDIA) — компилирует модель в оптимизированный граф выполнения, используя аппаратные особенности GPU.
- llama.cpp — позволяет запускать LLM на CPU (в том числе мобильных устройствах) через квантование и оптимизацию для x86/ARM.
LLM Streaming — передача токенов клиенту по мере их генерации. Это критически важно для UX: пользователь не ждёт 10 секунд, пока сгенерируется весь абзац, а видит текст, появляющийся постепенно, как при наборе живого собеседника. Реализуется через серверные события (Server-Sent Events, SSE) или WebSocket.
Перплексия (perplexity) — основная метрика качества языковой модели при оценке. Она показывает, насколько «удивлена» модель наблюдаемой последовательностью. Формально — это экспонента от кросс-энтропийной ошибки на валидационном наборе. Низкая перплексия означает, что модель присваивает высокие вероятности реальным токенам в тексте, что коррелирует с лучшей способностью к генерации. Однако перплексия не предсказывает полезность в диалоге — для этого нужны другие метрики: BLEU, ROUGE, а ещё лучше — человеческие оценки по шкалам полезности, правдоподобия, вредоносности.
LLM Agents
LLM-агент — это система, в которой LLM выступает в роли «планировщика» или «контроллера», координирующего работу внешних инструментов. Агент может:
- вызывать API (поиск в Google, запрос к базе данных, вызов REST-сервиса);
- выполнять код (в песочнице);
- читать и записывать в долговременную память (векторное хранилище, база знаний);
- рефлексировать над своими ошибками и корректировать стратегию.
Архитектура агента обычно включает:
- LLM как «мозг» — принимает решение, какой инструмент вызвать и с какими аргументами;
- инструменты — чёрные ящики с чётким интерфейсом;
- менеджер памяти — краткосрочная (контекст) и долгосрочная (векторный индекс);
- цикл исполнения — итеративный процесс: думать → действовать → наблюдать → повторить.
Агенты позволяют преодолеть ключевые ограничения «голой» LLM: незнание информации после даты обрезки, неспособность к точным вычислениям, отсутствие доступа к частным данным. Они становятся основой для enterprise-решений: автоматизации поддержки, анализа отчётов, внутренних помощников.
Однако агенты вносят новые риски: компаундирование ошибок (ошибка в одном шаге ведёт к каскаду сбоев), безопасность вызовов (возможность выполнения вредоносного кода), трудность отладки (непрозрачность цепочки решений). Поэтому в промышленных системах агенты ограничиваются строгими песочницами и политическими контроллерами.
GPT
Семейство GPT (Generative Pre-trained Transformer) — пионер и де-факто стандарт в области decoder-only LLM. Его развитие отражает основные этапы эволюции всей области.
GPT-1 (2018) — первая модель в серии, с 117 млн параметров. Использовала архитектуру Transformer decoder (12 слоёв), предобучалась на BookCorpus, донастраивалась под конкретные задачи (fine-tuning). Демонстрировала принципиальную возможность transfer learning в NLP без изменения архитектуры.
GPT-2 (2019) — масштабный скачок: 1.5 млрд параметров, обучение на веб-корpusе WebText (40 ГБ). OpenAI изначально не публиковала модель из-за опасений misuse — это стало прецедентом в этических дискуссиях вокруг ИИ. GPT-2 показала, что качество генерации растёт с масштабом, даже без явной донастройки под задачи.
GPT-3 (2020) — прорыв в масштабе: 175 млрд параметров, обучение на смеси Common Crawl, WebText2, Books1/2, Wikipedia. Ключевая инновация — in-context learning: модель могла решать новые задачи, получив лишь несколько примеров в prompt, без градиентного обновления весов (zero-shot, one-shot, few-shot learning). Это сделало GPT-3 универсальным инструментом для прототипирования.
GPT-3.5 (2022–2023) — серия улучшений над GPT-3, включая:
- text-davinci-003 — улучшенное качество генерации, поддержка длинных последовательностей;
- gpt-3.5-turbo — оптимизированная версия для диалога, значительно дешевле и быстрее, ставшая основой ChatGPT (бесплатной версии).
GPT-4 (2023) — мультимодальная (текст + изображения ввод), гораздо более устойчивая к инструкциям, с улучшенной логикой и меньшей склонностью к галлюцинациям. Официальные параметры не раскрываются, но оценки указывают на ~1.7 трлн параметров в конфигурации MoE. Важно: GPT-4 не просто «больше GPT-3» — она использует улучшенные методы сбора данных, фильтрации, обучения и постобработки, включая продвинутый RLHF и, предположительно, методы вроде Constitutional AI.
GPT-4o (2024) — «o» от omni: фокус на низкой задержке, высокой скорости и эффективности. Оптимизирована для аудио-, видео- и текстового ввода/вывода в реальном времени. Уменьшена стоимость инференса, улучшена поддержка неанглоязычных языков. Архитектурно — вероятно, плотная модель меньшего размера (не MoE), с акцентом на latency-sensitive сценарии.
GPT-серия формирует методологическую основу: предобучение → донастройка на инструкциях → RLHF → безопасность через промптинг и постфильтрацию. Она задаёт стандарты в API-дизайне, управлении версиями, инструментарии (function calling, JSON mode, response format control).
BERT
BERT (Bidirectional Encoder Representations from Transformers, 2018) — альтернативный путь развития: encoder-only архитектура, обучение через masked language modeling (MLM). В отличие от GPT, BERT обрабатывает весь входной текст за один проход, используя информацию как слева, так и справа от текущего токена. Это делает её исключительно эффективной для задач, требующих глубокого понимания контекста: классификации, извлечения отношений, ответов на вопросы.
Ключевые особенности:
- Двунаправленное внимание — фундаментальное преимущество для анализа.
- Обучение с маскированием: 15% токенов случайно заменяются
[MASK], и модель учится их восстанавливать. - Предназначена для кодирования на выходе — контекстуализированные эмбеддинги, которые подаются в лёгкий классификатор.
Варианты: RoBERTa (оптимизированное обучение), ALBERT (снижение числа параметров через факторизацию), ELECTRA (более эффективное обучение через замену дискриминатора/генератора).
Хотя BERT напрямую не используется в чат-ботах, её идеи живы: многие гибридные системы используют BERT-подобные энкодеры для анализа запроса, а GPT-подобные декодеры — для генерации ответа.
Claude
Claude (Anthropic) — серия моделей, выросших из бывших сотрудников OpenAI и сформировавших собственную этико-техническую философию.
Ключевые отличия:
- Конституционное обучение (Constitutional AI): вместо полного доверия человеческим оценкам (как в RLHF), модель сначала генерирует несколько вариантов ответа, затем сама их оценивает по заданному «конституционному» списку принципов (например, «не вреди», «будь точен», «не лги»), отбирает лучший и обучается на нём. Это снижает субъективность и масштабирует обучение.
- Контекст до 200 000–1 000 000 токенов (в Claude 3.5 Sonnet и Opus) — рекордная на момент 2024 года поддержка длинных документов. Это достигнуто через оптимизацию внимания (например, sliding window attention, grouped-query attention) и эффективное управление памятью.
- Три уровня качества: Haiku (быстрый, дешёвый, для встраивания), Sonnet (баланс скорости и качества), Opus (максимальная сложность, для research и аналитики).
- Повышенная отказоустойчивость: Claude реже «ломается» на провокационных или противоречивых запросах, предпочитая чётко отказать, чем сгенерировать галлюцинацию.
Claude 3.5 Sonnet (2024) демонстрирует сопоставимое или превосходящее GPT-4o качество в coding и reasoning benchmarks при меньшей задержке, что делает её серьёзным конкурентом в enterprise-сегменте.
Qwen
Qwen (Tongyi Qianwen) — семейство моделей, разработанных Alibaba Cloud. Позиционируется как открытая (в части весов и кода), многоязычная и ориентированная на китайский рынок, но с сильной поддержкой английского, русского и других языков.
Особенности:
- Открытая публикация весов (Qwen, Qwen1.5, Qwen2, Qwen2.5, Qwen3), включая версии с 0.5B до 72B параметров.
- Специализированные модели:
- Qwen-Audio и Qwen-VL — мультимодальные;
- Qwen2-Math — дообучена на математических данных;
- Qwen-VL-Chat — для диалога с изображениями.
- Поддержка 100+ языков, включая редкие (например, баскский, маори).
- Эффективная реализация через MLLM (Multimodal Large Language Model) подход: единая архитектура для текста, изображений, аудио.
- Широкая интеграция в экосистему Alibaba: Taobao, DingTalk, Tongyi app.
Qwen — один из немногих крупных open-weight LLM, реально применимых в production. Модель Qwen2-72B часто сравнивается с Llama 3 70B и GPT-3.5 по качеству, при этом оставаясь полностью доступной для локального развёртывания.
YandexGPT и GigaChat
YandexGPT
Разрабатывается компанией Яндекс, позиционируется как «национальная языковая модель». Доступна через Yandex Cloud (API), Yandex Search, Alice, Toloka.
Особенности:
- Обучена преимущественно на русскоязычных данных: Яндекс.Картинки, Яндекс.Маркет, Википедия, новостные агрегаторы, пользовательские запросы (анонимизированные).
- Поддержка русской морфологии, идиом, культурных реалий: модель лучше справляется с задачами вроде «напиши письмо в стиле Чехова» или «объясни значение слова обломовщина».
- Интеграция с внутренними сервисами: генерация описаний товаров, автоматизация поддержки, анализ отзывов.
- Архитектура: decoder-only, масштаб не раскрыт (оценки — сотни миллиардов параметров для YandexGPT 3).
- Важно: модель не является open-weight; доступ — только через API или интерфейсы Яндекса.
GigaChat
Разработка Сбера, часть экосистемы GigaFamily. Акцент — на enterprise и государственный сектор.
Особенности:
- Строгая локализация: обучение на госдокументах (ГОСТ, приказы, регламенты), юридических текстах, бухгалтерской отчётности.
- Поддержка форматов: генерация приказов, протоколов, служебных записок в соответствии с ГОСТ Р 7.0.97-2016.
- Встроенные инструменты:
- проверка на соответствие 152-ФЗ (персональные данные);
- анализ договоров на риски;
- суммаризация судебных решений.
- Модель доступна как в облаке (через SberCloud), так и on-premise — критически важно для госсектора.
- Версии: GigaChat (базовая), GigaChat-Pro (улучшенное качество), GigaChat-mini (лёгкая, для встраивания).
Обе модели решают задачу языкового суверенитета: работа с русским языком без зависимости от зарубежных API, соблюдение законодательства, интеграция в существующие ИТ-ландшафты. Однако они уступают GPT-4 и Claude 3 в общемировых benchmarks по reasoning и coding — их сила в узкой предметной области.
DeepSeek-R1
DeepSeek-R1 — гипотетическая модель* (примечание: на ноябрь 2025 года официальной модели DeepSeek-R1 не существует; DeepSeek — китайская компания, выпустившая DeepSeek-VL, DeepSeek-Coder, DeepSeek-MoE и DeepSeek-V2/V3. Возможно, имеется в виду локальная инициатива или внутренняя разработка. Ниже — обобщённое описание того, чем могла бы быть такая модель.)
Если рассматривать гипотетическую российскую open-weight модель уровня DeepSeek-R1, её ключевые цели были бы:
- Обучение на русскоязычном корпусе с акцентом на техническую, научную и педагогическую литературу (включая ГОСТ, учебники, документацию).
- Поддержка open-weight лицензии (например, Apache 2.0 или MIT), позволяющей свободное использование, модификацию и коммерческое применение.
- Архитектура: вероятно, MoE или dense 70–100B, с эффективной токенизацией под кириллицу.
- Применение:
- локальный запуск в университетах и школах (для обучения);
- встраивание в Docusaurus-проекты (как «Вселенная IT»);
- создание специализированных версий (медицина, право, инженерия).
- Отказ от зависимости от зарубежных GPU через оптимизацию под китайские или российские ускорители (например, «Эльбрус» + ПЛИС), либо через CPU-оптимизацию (llama.cpp).
Реальные аналоги сегодня — Saiga (Сбер), RuGPT3 (DeepPavlov), mGPT (Sber), но они либо закрыты, либо устарели. Потребность в современной, открытой, русскоязычной LLM остаётся неудовлетворённой — что делает такие инициативы перспективными.
ChatGPT
ChatGPT — продукт, построенный на базе LLM-серии GPT (сначала GPT-3.5, затем GPT-4 и GPT-4o), дополненный инженерными и методологическими слоями, превращающими языковую модель в интерактивного ассистента. Его успех обусловлен не столько революционной архитектурой, сколько тщательной проработкой всего стека: от сбора данных до интерфейса пользователя.
Авторегрессивное предсказание токенов
Как уже отмечалось, ChatGPT не генерирует текст целиком. Он последовательно, по одному, добавляет токены к уже существующему префиксу — промпту и ранее сгенерированным частям ответа. На каждом шаге вычисляется распределение вероятностей для следующего токена; выбор осуществляется с учётом параметра температуры.
Температура — коэффициент, управляющий формой распределения:
- При температуре, близкой к нулю, распределение становится «остроконечным»: модель почти всегда выбирает токен с максимальной вероятностью. Это приводит к детерминированным, но часто шаблонным, консервативным и повторяющимся ответам.
- При повышении температуры распределение «сглаживается», повышается энтропия: менее вероятные, но возможные токены получают шанс быть выбранными. Это вносит разнообразие, креативность, иногда — неустойчивость или неадекватность.
Температура применяется только на этапе генерации, после того как модель выдала логиты. Она не влияет на обучение и не меняет внутренние веса. В ChatGPT пользователь не видит этого параметра напрямую (он зашит в настройки системы), но его эффект ощущается: ответы редко повторяются дословно, сохраняя при этом стилистическую и смысловую целостность.
Токенизация и работа с морфологией
ChatGPT использует токенизатор cl100k_base, разработанный специально для GPT-4. Он основан на алгоритме BPE, но с улучшенной обработкой специальных символов, имён собственных, технических терминов и неанглийских языков.
Для русского языка это означает:
- Эффективное кодирование корней и аффиксов: «программирова» + «ть», «интернет» + «-ресурс».
- Устойчивость к опечаткам и разным нормам написания («е-mail», «email», «электронная почта» могут кодироваться похоже в эмбеддинговом пространстве).
- Возможность «изобретать» термины: если слово не встречалось в обучающем корпусе, оно разбивается на подтокены, каждый из которых имеет свой вектор. Композиция позволяет сформировать адекватное представление — например, для «нейроэксплойт» или «квантовый биткоин».
Токенизация также определяет стоимость использования: в API OpenAI тарификация идёт за токены, а не за символы. Короткое, но технически насыщенное слово может стоить дороже длинной фразы из простых токенов.
Эмбеддинги
Эмбеддинги в ChatGPT — это динамические представления, вычисляемые на каждом слое сети. Однако для внешних задач (поиск по схожести, кластеризация, классификация) OpenAI предоставляет отдельные embedding-модели (например, text-embedding-3-small, text-embedding-3-large), которые выдают фиксированный вектор на входной текст.
Эти векторы формируют многомерное пространство, где:
- Близость векторов ≈ семантическая близость;
- Направление вектора ≈ смысловая ориентация (тема, тональность, домен);
- Линейные операции ≈ семантические операции (аналогии, обобщение).
Практически это позволяет реализовать:
- Семантический поиск: находить документы, релевантные запросу, даже при отсутствии общих ключевых слов.
- Кластеризацию знаний: группировать статьи энциклопедии по темам без ручной разметки.
- Детекцию дубликатов: выявлять переформулированные вопросы в базе знаний.
Важно: качество эмбеддингов зависит от domain shift. Эмбеддинги, обученные на веб-текстах, хуже справляются с узкоспециализированной лексикой (например, медицинской или юридической), если не проведена адаптация.
Механизм внимания
ChatGPT (на базе GPT-4) использует усовершенствованные формы внимания:
- Grouped-Query Attention (GQA) — компромисс между Multi-Query Attention (MQA) и полным Multi-Head Attention. Уменьшает потребление памяти и задержку при сохранении качества.
- Sliding Window Attention — для очень длинных контекстов (128K+ токенов) внимание ограничивается окном фиксированного размера, смещаемым по мере генерации. Это позволяет масштабироваться без квадратичного роста памяти.
- RoPE (Rotary Position Embedding) — кодирование позиции токена через вращение векторов в подпространствах, что улучшает экстраполяцию на последовательности длиннее обучающих.
Благодаря этим улучшениям ChatGPT может:
- Связывать местоимения с сущностями на расстоянии в десятки тысяч токенов;
- Поддерживать нити нескольких параллельных тем в одном диалоге;
- Анализировать прикреплённые документы (PDF, DOCX) целиком и отвечать на вопросы по содержимому.
Обучение ChatGPT
Процесс создания ChatGPT включает три ключевых этапа:
-
Предобучение на огромном корпусе интернет-текстов, книг, кода. Занимает недели на кластерах из тысяч GPU. Результат — базовая языковая компетентность: грамматика, стиль, общий кругозор.
-
Instruction Tuning — дообучение на ~10⁵–10⁶ пар «инструкция → желаемый ответ», написанных людьми. Цель — научить модель следовать указаниям: «перепиши кратко», «напиши на Python», «объясни для ребёнка». На этом этапе формируется способность к zero-shot и few-shot prompting.
-
Reinforcement Learning from Human Feedback (RLHF) — тонкая настройка поведения. Люди оценивают пары ответов по шкалам: полезность, правдоподобие, вредоносность. На основе этих оценок обучается reward model, который затем управляет fine-tuning через алгоритм PPO (Proximal Policy Optimization). Это снижает агрессивность, лживость, галлюцинации.
В 2024 году OpenAI стала добавлять постобработку: фильтрация выходов через отдельные классификаторы (например, на токсичность, политическую ангажированность), автоматическое переформулирование опасных запросов, принудительный отказ при просьбах о вреде.
Почему ChatGPT генерирует связный текст, несмотря на простоту архитектуры?
Вопрос, поставленный Стивеном Вольфрамом, имеет глубокий ответ: человеческий язык обладает высокой степенью предсказуемости на локальном уровне. Хотя общий смысл высказывания может быть сложным, конкретный следующий токен часто определяется сильными локальными ограничениями: грамматика, коллокации, дискурсивные маркеры.
Например:
- После «В заключение, можно сказать, что…» вероятность «основной вывод» или «ключевой результат» сильно выше, чем «морковь».
- После «for (int i = 0; i
<» в C# почти наверняка следует «n; i++)».
LLM улавливает правила как статистические закономерности. При достаточном масштабе данных и параметров, эти локальные предсказания складываются в глобально связный текст. Это не «мышление», а эмерджентное поведение, возникающее из простых правил при большом масштабе.
Вычислительная несводимость и пределы ChatGPT
Фундаментальное ограничение ChatGPT — отсутствие внутреннего цикла. Архитектура feed-forward не позволяет модели «думать дольше» или «перепроверять» вывод. Если задача требует выполнения последовательности шагов, каждый из которых зависит от предыдущего (например, умножение 1234 × 5678), то:
- ChatGPT не вычисляет — она вспоминает, как в обучающих данных записывались подобные расчёты, и имитирует процесс.
- При увеличении чисел вероятность ошибки резко растёт — модель выходит за пределы интерполяции и начинает галлюцинировать.
Отсюда следует критически важный принцип для IT-практик:
ChatGPT нельзя использовать как вычислительное ядро.
Но её можно использовать как интерфейс к вычислительному ядру.
ChatGPT в связке с внешними системами
Это — основной паттерн промышленного применения LLM сегодня:
-
Пользователь формулирует запрос на естественном языке:
«Когда последний раз обновлялась статья про Docker в „Вселенной IT“?» -
ChatGPT:
- Понимает намерение (запрос даты последнего обновления);
- Формулирует структурированный запрос:
GET /api/articles?title=Docker&project=UniverseIT; - Вызывает API (через function calling).
-
Внешняя система (база знаний, CMS) возвращает точный результат:
{"last_modified": "2025-11-25T14:30:00Z"}. -
ChatGPT преобразует его в человекочитаемый ответ:
«Статья „Docker“ в проекте „Вселенная IT“ была обновлена 25 ноября 2025 года в 14:30 по Московскому времени.»
Такой подход:
- Исключает галлюцинации в фактических данных;
- Обеспечивает актуальность (данные берутся из живых систем);
- Позволяет интегрировать LLM в существующую ИТ-инфраструктуру без переписывания логики.
Аналогично для:
- Кода: генерация → выполнение в песочнице → возврат результата → коррекция.
- Анализа логов: запрос → трансляция в SQL/KQL → выполнение → интерпретация.
- Технической поддержки: описание проблемы → поиск в базе знаний → предложение решения.
Безопасность, отказоустойчивость и этика
ChatGPT включает многоуровневую систему защиты:
- Промпт-инъекции блокируются через анализ структуры запроса и специальные классификаторы.
- Системные промпты (system prompt) задают неизменяемый контекст: «Ты — помощник, который не даёт вредных советов, не выдаёт себя за человека, цитирует источники при возможности».
- Модерация выходов — отдельная модель проверяет каждый токен на соответствие политике до отправки пользователю.
Тем не менее, отказы неизбежны. ChatGPT старается формулировать их тактично:
«Я не могу выполнить этот запрос, так как он противоречит моим принципам безопасности. Могу ли я помочь с чем-то другим?»
— вместо технического «Access denied».
Это часть UX-дизайна: отказ должен сохранять доверие и мотивировать к продолжению диалога в допустимых рамках.
ChatGPT как инструмент для IT-специалиста
В повседневной работе разработчика, архитектора или технического писателя ChatGPT полезен как усилитель:
- Документация: черновик описания API, примеры использования, пояснения для неочевидных параметров.
- Код: генерация шаблонов, перевод с одного языка на другой, объяснение чужого кода, поиск уязвимостей (с последующей проверкой).
- Обучение: адаптация сложных концепций под уровень аудитории (студенты, школьники, менеджеры).
- Анализ: суммаризация долгих обсуждений в Jira/Confluence, выделение action items.
Ключевой навык — точный промптинг: формулирование запроса так, чтобы минимизировать неоднозначность и максимизировать полезность ответа. Это инженерная дисциплина, основанная на понимании ограничений и возможностей модели.