Поделиться через


Когда следует использовать тонкую настройку Azure OpenAI

При принятии решения, является ли тонкая настройка правильным решением для изучения конкретного варианта использования, полезно ознакомиться с некоторыми ключевыми терминами:

  • Инженерия запросов — это метод разработки запросов для моделей обработки естественного языка. Этот процесс повышает точность и релевантность в ответах, оптимизируя производительность модели.
  • Получение дополненного поколения (RAG) повышает производительность крупной языковой модели (LLM), извлекая данные из внешних источников и включив его в запрос. RAG позволяет предприятиям достичь настраиваемых решений при сохранении релевантности данных и оптимизации затрат.
  • Тонкое настраивание повторно обучает существующую большую языковую модель, используя примеры данных, что приводит к созданию новой "пользовательской" большой языковой модели, оптимизированной на основе предоставленных примеров.

Что такое точная настройка в Azure OpenAI?

Когда мы говорим о тонкой настройке, мы действительно имеем в виду контролируемую тонкую настройку, а не непрерывную предварительную подготовку или обучение с подкреплением с помощью человеческой обратной связи (RLHF). Контролируемая тонкая настройка означает процесс переобучения предварительно обученных моделей на определенных наборах данных для улучшения производительности модели на конкретные задачи или для введения информации, которая была недостаточно представлена при первоначальной обучении базовой модели.

Тонкая настройка — это продвинутая методика, требующая опыта для правильного использования. Приведенные ниже вопросы помогут вам оценить, готовы ли вы к точной настройке и насколько хорошо вы продумали процесс. Их можно использовать для выполнения следующих действий или определения других подходов, которые могут быть более подходящими.

Почему вы хотите точно настроить модель?

  • Вы должны иметь возможность четко сформулировать конкретный вариант использования для точной настройки и определить модель , которой вы надеетесь точно настроить.
  • Хорошие варианты использования для точной настройки включают управление моделью для вывода содержимого в определенном и настраиваемом стиле, тоне или формате, или сценариях, в которых информация, необходимая для управления моделью, слишком длинна или сложна для размещения в окне запроса.

Распространенные признаки того, что вы еще не готовы к тонкой настройке:

  • Нет четкого варианта использования для тонкой настройки модели или невозможность четко сформулировать что-либо, кроме "Я хочу улучшить модель".
  • Если вы определяете стоимость как основной мотиватор, будьте осторожны. Точная настройка может снизить затраты для определенных вариантов использования, уменьшая запросы или позволяя использовать меньшую модель, но существуют более высокие предварительные затраты на обучение, и придётся оплачивать размещение собственной пользовательской модели. Для получения дополнительной информации о затратах на тонкую настройку Azure OpenAI, см. на странице цен.
  • Если вы хотите добавить в модель знания о домене, следует начать с получения дополненного поколения (RAG) с такими функциями, как Azure OpenAI в данных или внедрениях. Часто это более дешевый, более адаптируемый и потенциально более эффективный вариант в зависимости от варианта использования и данных.

Что ты пытался до сих пор?

Улучшенная настройка — это расширенная возможность, а не отправная точка для процесса создания искусственного интеллекта. Вы уже должны ознакомиться с основами использования больших языковых моделей (LLM). Сначала следует оценить производительность базовой модели с помощью разработки запросов и (или) получения расширенного поколения (RAG), чтобы получить базовые показатели производительности.

Наличие базовых показателей производительности без точной настройки является важным для того, чтобы узнать, улучшилась ли производительность модели. Точная настройка с плохими данными делает базовую модель хуже, но без базовых показателей трудно обнаружить ухудшения.

Если вы готовы к тонкой настройке, выполните следующие действия.

  • Должны быть в состоянии продемонстрировать доказательства и знания о подходах на основе командной техники и RAG.
  • Вы можете делиться конкретным опытом и трудностями, связанными с методами, отличными от тонкой настройки, которые уже были опробованы для вашего сценария использования.
  • По возможности необходимо иметь количественные оценки базовой производительности.

Распространенные признаки того, что вы, возможно, еще не готовы к тонкой настройке:

  • Начиная с тонкой настройки без тестирования других методов.
  • Недостаточно знаний или понимания того, как тонкая настройка применяется именно к крупным языковым моделям (LLM).
  • Нет эталонных измерений для оценки точной настройки.

Что не работает с альтернативными подходами?

Понимание того, в чём инженерия запросов имеет недостатки, должно предоставить рекомендации по тонкой настройке. Происходит ли сбой базовой модели в пограничных случаях или исключениях? Является ли базовая модель несогласованной, предоставляющей выходные данные в неправильном формате, и вы не можете вместить достаточно примеров в окно контекста, чтобы это исправить?

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

Ниже приведен пример: клиент хотел использовать GPT-3.5-Turbo для перевода вопросов естественного языка в запросы в определенном, нестандартном языке запросов. Они предоставили инструкции в запросе (Always return GQL) и использовали RAG для получения схемы базы данных. Однако синтаксис не всегда был правильным и часто давал сбои для крайних случаев. Они собрали тысячи примеров вопросов естественного языка и эквивалентных запросов к базе данных, включая случаи, когда модель не удалась раньше, и использовала эти данные для точной настройки модели. Объединение их новой точно настроенной модели с инженерным запросом и механизмом извлечения позволило достичь точности выходных данных модели, соответствующей приемлемым стандартам использования.

Если вы готовы к тонкой настройке, выполните следующие действия.

  • Получите четкие примеры того, как вы подошли к проблемам в альтернативных подходах и что было проверено как возможные решения для повышения производительности.
  • Выявленные недостатки, выявленные с помощью базовой модели, такие как несогласованная производительность в граничных случаях, неспособность разместить достаточное количество фраз с несколькими примерами в контекстном окне для управления моделью, высокая задержка и т. д.

Распространенные признаки того, что вы, возможно, не готовы к тонкой настройке, включают:

  • Недостаточно знаний из модели или источника данных.
  • Неспособность найти правильные данные для обслуживания модели.

Какие данные вы собираетесь использовать для точной настройки?

Даже при хорошем сценарии использования, тонкая настройка эффективна настолько, насколько качественны имеющиеся данные. Вы должны быть готовы инвестировать время и усилия, чтобы довести работу до совершенства. Для разных моделей требуются разные объемы данных, но часто требуется обеспечить достаточно большое количество высококачественных курируемых данных.

Еще одним важным моментом является то, что даже при высоком качестве данных, если ваши данные не находятся в необходимом формате для тонкой настройки, вам потребуется выделить инженерные ресурсы для правильного форматирования данных.

Данные GPT-3.5-Turbo
GPT-4o & GPT-4o mini
GPT-4
Громкость Тысячи примеров
Формат Беседный чат

Если вы готовы к тонкой настройке, выполните следующие действия.

  • Определен набор данных для точной настройки.
  • Отформатирован набор данных соответствующим образом для обучения.
  • Курировал набор данных, чтобы обеспечить качество.

Распространенные признаки того, что вы еще не готовы к тонкой настройке:

  • Набор данных еще не определен.
  • Формат набора данных не соответствует модели, которую вы хотите точно настроить.

Как вы будете измерять качество вашей точно настроенной модели?

Нет единственно правильного ответа на этот вопрос, но у вас должны быть четко определенные цели, чтобы определить успех от выполнения тонкой настройки. В идеале, это не должно быть только качественным, но также должно включать количественные меры успеха, такие как использование выделенной выборки данных для проверки, а также тестирование на приемлемость пользователями или A/B тестирование точно настроенной модели относительно базовой модели.

Следующие шаги