Дистилляция моделей в API
Тонкая настройка рентабельной модели с использованием результатов работы передовой крупной модели — и всё это на платформе OpenAI

Мы представляем новое решение для дистилляции моделей (Model Distillation), которое предоставляет разработчикам интегрированный рабочий процесс для управления всем пайплайном дистилляции непосредственно на платформе OpenAI. Это позволяет разработчикам с легкостью использовать результаты работы передовых моделей, таких как o1‑preview и GPT‑4o, для тонкой настройки и повышения производительности более экономичных моделей, таких как GPT‑4o mini.
Дистилляция моделей заключается в тонкой настройке меньших, экономичных моделей с использованием результатов работы более мощных моделей. Это позволяет им достигать производительности продвинутых моделей в конкретных задачах при гораздо меньших затратах. До сих пор дистилляция представляла собой многоэтапный и чреватый ошибками процесс, который требовал от разработчиков ручной координации множества операций с использованием разрозненных инструментов — от генерации наборов данных до тонкой настройки моделей и измерения прироста производительности. Поскольку дистилляция по своей природе является итеративной, разработчикам приходилось многократно повторять каждый шаг, что требовало значительных усилий и увеличивало сложность.
Наш новый набор инструментов для дистилляции моделей включает в себя:
- Сохраненные генерации (Stored Completions): теперь разработчики могут с легкостью создавать наборы данных для дистилляции, автоматически собирая и сохраняя пары «входные-выходные данные», созданные одной из наших моделей (например, GPT‑4o или o1‑preview) через наш API. Функция «Сохраненные генерации» позволяет без труда формировать наборы данных на основе ваших производственных данных для оценки и тонкой настройки моделей. Разработчики могут ознакомиться с этим руководством по интеграции, чтобы узнать, как подключить сохранение генераций.
- Оценки (Evals)(бета-версия): разработчики теперь могут создавать и запускать пользовательские оценки на нашей платформе для измерения производительности моделей в конкретных задачах. Вместо того чтобы вручную писать скрипты для оценки и интегрировать разнородные инструменты логирования, Evals предлагает единое средство для измерения производительности моделей. Вы можете использовать данные из «Сохраненных генераций» или загрузить существующие наборы данных для настройки оценок. Evals также можно применять независимо от тонкой настройки для количественной оценки производительности моделей в ваших сценариях использования.
- Тонкая настройка (Fine-tuning): функции «Сохраненные генерации» и «Оценки» полностью интегрированы с нашим существующим предложением по тонкой настройке. Это означает, что разработчики могут использовать наборы данных, созданные с помощью «Сохраненных генераций», в задачах тонкой настройки и запускать оценку доработанных моделей с помощью Evals — и все это на нашей платформе.
Как использовать дистилляцию моделей
Сначала создайте оценку, чтобы измерить производительность модели, в которую вы хотите выполнить дистилляцию (в данном примере это будет GPT‑4o mini). Эта оценка будет использоваться для непрерывного тестирования производительности дистиллированной модели, помогая вам принять решение о ее развертывании.

Затем используйте функцию «Сохраненные генерации», чтобы создать набор данных для дистилляции на основе реальных примеров, используя результаты GPT‑4o для задач, под которые вы хотите настроить GPT‑4o mini. Для этого задайте флаг `store: true` в API генерации чата (Chat Completions API) — это позволит автоматически сохранять пары входных и выходных данных без какого-либо влияния на задержку (latency). Эти сохраненные генерации можно просматривать, фильтровать и размечать для создания высококачественных наборов данных, предназначенных для тонкой настройки или оценки.
Python
1response = client.chat.completions.create(2 model="gpt-4o",3 messages=[4 {5 "role": "user",6 "content": [7 {8 "type": "text",9 "text": "what's the capital of the USA?"10 }11 ]12 }13 ],14 store=True,15 metadata={"username": "user123", "user_id": "123", "session_id": "123"}Наконец, используйте этот набор данных для тонкой настройки GPT‑4o mini. Сохраненные генерации можно применять в качестве тренировочного файла при создании доработанной модели. После завершения тонкой настройки вы можете вернуться к разделу Evals, чтобы проверить, соответствует ли доработанная модель GPT‑4o mini вашим критериям производительности при сравнении с GPT‑4o.
00:00
Тонкая настройка — это итеративный процесс. Если первые результаты вас не устраивают, возможно, потребуется доработать набор данных, скорректировать параметры обучения или собрать более специфические примеры, на которых модель показывает себя хуже всего. Цель состоит в том, чтобы постепенно улучшать дистиллированную модель до тех пор, пока ее производительность не станет достаточной для использования в рабочей среде.
Доступность и цены
Дистилляция моделей доступна уже сегодня всем разработчикам и может применяться для дистилляции любых наших моделей, включая GPT‑4o и o1‑preview. Напоминаем, что мы также предоставляем 2 млн бесплатных токенов для обучения в день для GPT‑4o mini и 1 млн бесплатных токенов для обучения в день для GPT‑4o до 31 октября, чтобы помочь разработчикам начать работу с дистилляцией. После исчерпания этого лимита стоимость обучения и работы дистиллированной модели будет соответствовать нашим стандартным ценам на тонкую настройку, с которыми можно ознакомиться на нашей странице цен на API.
Функция «Сохраненные генерации» доступна бесплатно. Оценки (Evals), находящиеся в стадии бета-тестирования, тарифицируются по стандартным ценам моделей в зависимости от использованных токенов. До конца года разработчики могут запускать оценки бесплатно (до 7 штук в неделю), если они согласятся делиться своими результатами Evals с OpenAI. Переданные нам оценки будут использоваться для улучшения и тестирования наших будущих моделей.
Дополнительную информацию можно найти в нашей документации по дистилляции моделей.
Автор
Полный текст статьи читайте на OpenAI
