Академия OpenAI на русском

Fine-Tuning Open AI на Практике - Учимся за Час

Для разработчиков
Чему вы научитесь
~56 минут просмотра
⚙️
Что такое Fine-Tuning: Поймете суть тонкой настройки LLM (GPT-4, 3.5 Turbo) для адаптации под специфические задачи, изменения стиля, формата или поведения (но не для добавления новых знаний).
Когда использовать: Узнаете, в каких случаях fine-tuning эффективен (сложные инструкции, кастомный стиль, экономия токенов, дистилляция) и чем он отличается от RAG.
🛠️
Процесс настройки: Освоите шаги: подготовка качественных данных (JSONL, 50-100+ примеров), запуск задачи через API, настройка гиперпараметров и важность этапа оценки модели.
🚀
Практические примеры: Увидите реальные кейсы: улучшение Function Calling для дрона-ассистента и опыт компании Kursor в применении fine-tuning для AI-помощника в кодировании.

Словарь терминов

Fine-tuning (Тонкая настройка)
Процесс адаптации предварительно обученной базовой модели (например, GPT-3.5 Turbo, GPT-4) к конкретной задаче или стилю путем обновления её весовых коэффициентов (параметров) на новом наборе обучающих данных (примеры "промпт-ответ").

Base Model (Базовая модель)
Исходная, предварительно обученная LLM (например, GPT-4), которая используется как отправная точка для fine-tuning.

RAG (Retrieval-Augmented Generation)
Техника ИИ, при которой LLM дополняет свои знания информацией, извлеченной из внешних источников во время генерации ответа. Сравнивается с fine-tuning: RAG лучше для добавления новых фактов, fine-tuning — для формы/поведения.

Prompting (Промптинг / Подсказки)
Метод управления поведением LLM путем предоставления инструкций и/или примеров во входном запросе. Обычно первый шаг перед fine-tuning.

In-context learning (Обучение в контексте)
Способность LLM учиться на примерах, предоставленных прямо в промпте (без изменения весов модели).

Parameter / Weight (Параметр / Вес)
Внутренние значения модели, которые изменяются во время fine-tuning и определяют её поведение.

Dataset (Набор данных)
Коллекция примеров (пары "промпт-ожидаемый ответ"), используемых для обучения (fine-tuning) или оценки модели. Важно высокое качество и репрезентативность. Рекомендуется начинать с 50-100 примеров.

Evaluation (Оценка)
Процесс проверки производительности дообученной модели. Важно использовать не только метрики обучения (loss, accuracy), но и оценивать качество на реальных задачах или с помощью продвинутых методов (например, GPT-4 как оценщик).

Style / Tone / Format / Behavior (Стиль / Тон / Формат / Поведение)
Аспекты вывода модели, которые хорошо поддаются изменению с помощью fine-tuning.

Form vs. Facts (Форма, а не факты)
Ключевой принцип: fine-tuning отлично подходит для обучения модели как отвечать (стиль, формат), но плохо подходит для обучения новым фактам (для этого лучше RAG). Попытка обучить фактам может привести к галлюцинациям.

Distillation (Дистилляция)
Использование fine-tuning для обучения меньшей модели (например, 3.5 Turbo) поведению большей модели (например, GPT-4) на конкретной задаче, чтобы снизить стоимость и задержку.

JSONL:
Формат файла (JSON Lines), требуемый OpenAI для данных fine-tuning, где каждая строка — JSON-объект с диалогом в формате Chat Completions.

Hyperparameters (Гиперпараметры)
Настройки процесса fine-tuning, управляющие обучением:
Epochs (Эпохи): Количество полных проходов по обучающему датасету.
Batch Size (Размер пакета): Количество примеров, обрабатываемых за одну итерацию.
Learning Rate Multiplier (Множитель скорости обучения): Коэффициент скорости адаптации модели.

Function Calling (Вызов функции)
Возможность LLM вызывать внешние инструменты/API. В демо fine-tuning использовался для улучшения точности выбора и вызова нужной функции, включая функцию отказа (reject_request).

Synthetic Data (Синтетические данные)
Обучающие данные, сгенерированные искусственно (например, с помощью GPT-4), а не собранные из реальных источников. Использовались в демо.

Overfitting (Переобучение)
Ситуация, когда модель слишком сильно подстраивается под обучающие данные и плохо обобщает на новые примеры.

Metrics (Метрики)
Количественные показатели для оценки модели (например, loss, accuracy во время обучения; BLEU, ROUGE, оценка GPT-4 для качества генерации).

Re-ranking (Повторное ранжирование)
Техника (использовалась Kursor), где результаты первоначального поиска (например, векторного) дополнительно сортируются по релевантности с помощью другой модели (возможно, fine-tuned) перед подачей в LLM.

Calibration (Калибровка)
Процесс настройки выходных данных модели (например, оценок релевантности), чтобы они были согласованными и использовали всю доступную шкалу. Fine-tuning помог Kursor с калибровкой в задаче re-ranking.

Continual fine-tuning (Постоянная тонкая настройка / Непрерывное дообучение)
Возможность итеративно дообучать уже настроенную модель на новых данных для её улучшения или исправления ошибок.

Полезные ссылки

Документация OpenAI по Fine-Tuning
https://platform.openai.com/docs/guides/fine-tuning
Основной официальный ресурс по тонкой настройке моделей OpenAI. Содержит руководство по подготовке данных, запуску задач, оценке, API и лучшим практикам.

OpenAI Cookbook - Рецепты Fine-Tuning
https://cookbook.openai.com/examples/how_to_finetune_chat_models
Коллекция практических примеров кода (Jupyter Notebooks), демонстрирующих различные техники работы с API OpenAI, включая, вероятно, упомянутые в видео примеры тонкой настройки Function Calling и методы оценки.

Документация OpenAI API
https://platform.openai.com/docs/
Описание: Общая документация по API OpenAI, необходимая для понимания форматов запросов/ответов и взаимодействия с моделями.

Cursor
https://www.cursor.com/
Сайт компании Cursor, представившей в видео свой опыт использования fine-tuning для создания AI-помощника в программировании.
🚀
Доступ к API ведущих AI-моделей из России
Интегрируйте GPT-4o, Claude 3, Midjourney, Gemini и другие нейросети в ваши проекты. Стабильный доступ без VPN, оплата в рублях, договор и закрывающие документы для юрлиц.
Подробнее о API и тарифах