Перейти к содержимому
ПереводыOpenAI и DeepLearning.AI

DeepLearning.AI × Google Cloud: курс «Reinforcement Learning from Human Feedback»

Путеводитель по короткому курсу о RLHF: два датасета (предпочтений и промптов), дообучение Llama 2 через Google Cloud Pipeline Components, оценка по кривым потерь и сравнением «бок о бок» — что из этого повторить у себя без Vertex AI и к каким урокам относится.

Курс сделан DeepLearning.AI вместе с Google Cloud; ведёт его Никита Намджоши (Nikita Namjoshi), Developer Advocate по генеративному ИИ в Google Cloud. По описанию курса, вы получите концептуальное понимание процесса RLHF и датасетов, которые для него нужны, дообучите модель Llama 2 методом RLHF с помощью открытой библиотеки Google Cloud Pipeline Components и сравните дообученную модель с базовой — по кривым потерь и методом «бок о бок» (Side-by-Side, SxS).

Для нашего ученика это наглядная иллюстрация к уроку 6.3.2 «RLHF — reward model и PPO»: как выглядят настоящие данные предпочтений, из каких шагов состоит конвейер и как сравнивают модели после обучения. Формул и устройства PPO в курсе почти нет — их даёт наш урок. Практика курса завязана на платный Vertex AI в Google Cloud; повторять её буквально не нужно.

Названия уроков — по расшифровкам и ноутбукам курса в открытых конспектах.

№УрокЧто в нём (по описанию и ноутбукам)Урок нашего курсаВажность
0Course IntroЗачем модели, обученной на текстах из интернета, нужна дополнительная настройка под ценности и предпочтения людей6.1.1★
1How Does RLHF WorkСхема RLHF: данные предпочтений → модель награды → обучение с подкреплением; отличие от SFT6.3.1, 6.3.2★★★
2Datasets for RL TrainingДва датасета: предпочтений (промпт, ответ 0, ответ 1, выбор человека) и промптов (только промпты); промпты в обоих должны быть из одного распределения. Все промпты — из датасета постов Reddit для суммаризации из работы OpenAI summarize-from-feedback6.3.2, раздел «Сбор предпочтений»★★★
3Tune an LLM with RLHFЗапуск конвейера RLHF для Llama 2 из библиотеки Google Cloud Pipeline Components на Vertex AI: параметры обучения модели награды и RL-шага6.3.2, 6.2.1★★
4Evaluate the Tuned ModelКривые обучения в TensorBoard; сравнение ответов дообученной и исходной модели на одних и тех же промптах «бок о бок»6.3.2, 7.3.2★★
5Google Cloud SetupНоутбук с настройкой проекта, сервисного аккаунта и хранилища в Google Cloud — нужен, только если повторять практику—★
6ConclusionИтоги—★
flowchart LR
P["Датасет предпочтений:<br/>промпт, ответ 0, ответ 1,<br/>выбор человека"] --> RM["Обучение<br/>модели награды"]
RM --> RL["RL-дообучение политики<br/>(PPO, с KL к исходной модели)"]
Q["Датасет промптов:<br/>только промпты"] --> RL
RL --> E["Оценка: кривые потерь,<br/>сравнение бок о бок с базовой"]
Конвейер, который строит курс (по описанию курса; детали RL-шага — в уроке 6.3.2)
  1. Прочитайте урок 6.3.1 и разделы 1–3 урока 6.3.2 — тогда видео уроков 1–2 станут повторением с картинками.

  2. Посмотрите уроки 1–4. На уроке 3 следите не за интерфейсом Vertex AI, а за параметрами конвейера: какие шаги обучаются, сколько их, где задаётся сила KL-штрафа.

  3. Вместо платного Vertex AI повторите идею локально: маленькая модель, датасет предпочтений в том же формате (промпт, chosen, rejected), библиотека TRL — как в практике урока 6.3.2 или сразу DPO из урока 6.3.3, который обходится без отдельной модели награды.

  4. Оценку из урока 4 повторите по уроку 7.3.2: попарное сравнение «бок о бок» людьми или LLM-судьёй с поправкой на смещение позиции.

  1. Откройте датасет из работы OpenAI summarize-from-feedback (на него опирается курс) и разберите 10 пар сравнений: почему человек выбрал этот пересказ? Запишите 3–4 критерия.
  2. Составьте 20 своих пар предпочтений по-русски для одной задачи (например, ответы бота поддержки) в формате «промпт — лучший ответ — худший ответ». Это готовые данные для DPO из урока 6.3.3.
  3. Сравните ответы базовой и дообученной модели на 20 промптах «бок о бок» (вслепую, порядок ответов случайный) и посчитайте долю побед.