Книга: Инжиниринг искусственного интеллекта
Назад: Б.7 Инференс и сервинг
Дальше: Б.11 No - code / low - code платформы для оркестрации ИИ

Б.9 Безопасность и выравнивание (Alignment)

Что это

Методы, которые заставляют модель вести себя безопасно, этично и в рамках заданных границ.



Зачем

Модель может генерировать опасный контент, давать вредные советы, уязвима для инъекций. Без выравнивания её нельзя выпускать в люди.



Ключевые методы

RLHF (Reinforcement Learning from Human Feedback) - обучение на предпочтениях людей; DPO (Direct Preference Optimization) - более простой аналог RLHF; Constitutional AI - модель следует конституции (набору правил); гардрейлы (guardrails) - фильтры входа и выхода; red-teaming - команда тестировщиков, которые пытаются взломать модель.



Для кого

Для всех, кто выпускает модель в публичный доступ или использует в чувствительных сферах (медицина, финансы, образование). Юридические риски реальны.



RLHF - как это работает на практике

Люди сравнивают пары ответов от модели (какой лучше). На этих данных обучается reward model - маленькая модель, которая предсказывает, насколько ответ понравится человеку. Затем основная модель дообучается методом PPO (или DPO) так, чтобы получать от reward model максимальные оценки. Это дорого (тысячи часов разметки), но именно RLHF делает ChatGPT вежливым и безопасным.



Constitutional AI - альтернатива без людей

Anthropic придумал метод, где модель сама проверяет свои ответы против набора правил (конституции). Например: «не должен содержать оскорблений», «должен быть полезным». Модель генерирует ответ, затем критикует его сама, затем исправляет. Это дешевле RLHF и хорошо работает для базовых норм.



Guardrails - фильтры входа и выхода

Даже самая выровненная модель может быть взломана (jailbreak). Поэтому в продакшене добавляют отдельные фильтры: на входе - детектор промпт-инъекций, на выходе - детектор опасного контента (PII, нецензурная лексика, вредные инструкции). Инструменты: NeMo Guardrails, Guardrails AI, собственные классификаторы.



Red teaming

Прежде чем выпускать модель, попытайтесь её взломать. Наймите команду (или используйте автоматические инструменты вроде garak или PyRIT), которая будет пытаться заставить модель сделать что-то плохое. Каждую найденную уязвимость фиксируйте и добавляйте в датасет для дообучения. Это итеративный процесс: чем больше вы тестируете, тем безопаснее модель.



Все методы безопасности и выравнивания упираются в одно: данные.

Качество обучения, эффективность RLHF, точность гардрейлов - всё зависит от того, на каких данных это сделано. А данные, особенно для обучения больших моделей, - это грязный, дублированный, несбалансированный океан.

Без инжиниринга данных даже самая лучшая архитектура выдаст мусор. Garbage in, garbage out. 80% времени в обучении LLM уходит не на вычисления, а на чистку, дедупликацию, фильтрацию. Покажем, как это делается на трёх уровнях и почему синтетические данные - не панацея.



Б.10 Инжиниринг данных для LLM

Что это

Подготовка данных для обучения LLM - очистка, фильтрация, дедупликация.



Зачем

Garbage in, garbage out. Если обучить модель на мусоре, она будет генерировать мусор. Качество данных важнее количества.



Ключевые техники

Дедупликация (удаление повторов), PII removal (удаление персональных данных), quality filtering (отсев низкокачественного контента), curriculum learning (обучение от простого к сложному), data mixing (балансировка разных типов данных).



Для кого

Для тех, кто собирает собственные датасеты для pre-training или fine-tuning. 80% времени в обучении LLM уходит не на вычисления, а на подготовку данных.



Почему качество данных важнее архитектуры

Можно взять самую современную архитектуру, но если обучить её на мусоре (спам, машинный перевод, бесконечные повторы), модель будет генерировать мусор. Две одинаковые модели, обученные на разных корпусах, могут отличаться по качеству в разы. 80 процентов времени в обучении LLM уходит не на вычисления, а на чистку данных.



Дедупликация

Один и тот же текст может встречаться в корпусе тысячи раз (например, пользовательские соглашения, типовые письма). Модель переобучается на этих дубликатах, считая их важнее уникального контента. Дедупликация делается на трёх уровнях: целые документы (через хэши), абзацы (через локально-чувствительные хэши), предложения (через n-граммы).



Фильтрация по качеству

Не все тексты из интернета полезны. Удаляются: страницы с рекламным спамом, автоматически сгенерированный контент (включая текст от других LLM), машинный перевод с ошибками, бессмысленные форумные сообщения. Используются классификаторы (fastText, маленькие BERT) для оценки качества, а также эвристики (отношение длины текста к числу знаков препинания, процент повторяющихся слов).

Если у вас нет доступа к триллионам токенов, не отчаивайтесь:

современный инжиниринг смещается от «собрать всё из интернета» к «сгенерировать и отфильтровать лучшее».

Используйте сильные LLM для генерации синтетических датасетов: промптите модель создать пары «вопрос–идеальный ответ», варианты с типичными ошибками, краевые случаи и диалоги с разными стилями общения.



Но помните правило:

синтетические данные усиливают biases исходной модели. Поэтому обязательно прогоняйте их через автоматический фильтр качества (проверка на факты, дубликаты, токсичность) и добавляйте 10–20% реальных, вручную проверенных примеров.

Версионируйте данные с помощью DVC или LakeFS, а не папок в Git.

Датасет - это такой же артефакт, как код: его репроизводимость, аудит и отслеживание изменений критичны для воспроизводимого обучения и безопасного fine-tuning.



Языковой баланс и безопасность

Английского в интернете в 5–10 раз больше, чем всех остальных языков вместе. Если не балансировать, модель будет говорить по-английски отлично, а на других языках - со странным акцентом. Искусственно ограничивают долю английского (например, не более 50 процентов). Также удаляют явно токсичный контент и персональные данные (PII) - через регулярные выражения и библиотеки вроде presidio.



Мы обсудили десятки сложных тем: квантизация, распределённый тренинг, RAG, промпты, finetuning, инференс, безопасность, данные. Это мощный арсенал.

Но что, если ваша задача - не разрабатывать новую архитектуру, а быстро собрать работающего агента или чатбота по документам? И в команде нет глубоких MLинженеров?

Тогда ответ - no-code/low-code платформы.

Dify, n8n, Yandex Cloud AI Studio - они позволяют перетаскивать блоки, настраивать промпты и получать API без единой строчки кода. Это не замена инженерного мышления, а его упаковка в готовые блоки. Для прототипов, типовых сценариев и быстрых изменений - идеальный выбор. А для всего остального - у нас есть предыдущие десять разделов.



Назад: Б.7 Инференс и сервинг
Дальше: Б.11 No - code / low - code платформы для оркестрации ИИ