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


Fine Tunes - Create

Создает задание, которое настраивает указанную модель из заданного обучающего файла. Ответ включает сведения о задании, включаемом в том числе состояние задания и гиперпараметров. Имя настраиваемой модели добавляется в ответ после завершения.

POST {endpoint}/openai/fine-tunes?api-version=2023-05-15

Параметры URI

Имя В Обязательно Тип Описание
endpoint
path True

string (url)

Поддерживаемые конечные точки Cognitive Services (протокол и имя узла, например https://aoairesource.openai.azure.com. Замените aoairesource именем учетной записи Azure OpenAI.

api-version
query True

string

Запрошенная версия API.

Заголовок запроса

Имя Обязательно Тип Описание
api-key True

string

Укажите здесь ключ учетной записи Azure OpenAI Для Cognitive Services.

Текст запроса

Имя Обязательно Тип Описание
model True

string

minLength: 1

Идентификатор (model-id) базовой модели, используемой для этой точной настройки.

training_file True

string

minLength: 1

Идентификатор файла (file-id), используемый для обучения этой точно настроенной модели.

batch_size

integer (int32)

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

classification_betas

number[] (double)

Значения бета-версии классификации. Если это указано, мы вычисляем оценки F-beta по указанным бета-значениям. Оценка F-beta — это обобщение оценки F-1. Это используется только для двоичной классификации. С бета-версией 1 (т. е. оценка F-1), точность и отзыв дают тот же вес. Более большая бета-оценка ставит больше веса на отзыв и меньше на точность. Меньшая бета-оценка ставит больше веса на точность и меньше на отзыв.

classification_n_classes

integer (int32)

Количество классов в задаче классификации. Этот параметр необходим для многоклассовой классификации.

classification_positive_class

string

Положительный класс в двоичной классификации. Этот параметр необходим для создания метрик точности, отзыва и F1 при выполнении двоичной классификации.

compute_classification_metrics

boolean

Значение, указывающее, следует ли вычислять метрики классификации. Если задано, мы вычисляем метрики, относящиеся к классификации, такие как точность и оценка F-1, используя набор проверки в конце каждой эпохи. Эти метрики можно просмотреть в файле результатов. Чтобы вычислить метрики классификации, необходимо предоставить validation_file. Кроме того, необходимо указать classification_n_classes для многоклассовой классификации или classification_positive_class для двоичной классификации.

learning_rate_multiplier

number (double)

Умножение скорости обучения, используемое для обучения. Скорость обучения точной настройки — это исходная скорость обучения, используемая для предварительного обучения, умноженная на это значение. Более крупные показатели обучения, как правило, лучше работают с большими размерами пакетов. Мы рекомендуем поэкспериментировать со значениями в диапазоне от 0,02 до 0,2, чтобы увидеть, что дает лучшие результаты.

n_epochs

integer (int32)

Количество эпох для обучения модели. Эпоха относится к одному полному циклу через обучающий набор данных.

prompt_loss_weight

number (double)

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

suffix

string

Суффикс, используемый для идентификации точно настроенной модели. Суффикс может содержать до 40 символов (a-z, A-Z, 0-9 и _), которые будут добавлены в имя вашей точной модели.

validation_file

string

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

Ответы

Имя Тип Описание
201 Created

FineTune

Была успешно создана тонкая настройка.

Заголовки

Location: string

Other Status Codes

ErrorResponse

Произошла ошибка.

Безопасность

api-key

Укажите здесь ключ учетной записи Azure OpenAI Для Cognitive Services.

Тип: apiKey
В: header

Примеры

Creating a fine tune job for classification.
Creating a fine tune job.

Creating a fine tune job for classification.

Образец запроса

POST https://aoairesource.openai.azure.com/openai/fine-tunes?api-version=2023-05-15


{
  "compute_classification_metrics": true,
  "classification_n_classes": 4,
  "model": "curie",
  "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
}

Пример ответа

location: https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f
{
  "hyperparams": {
    "compute_classification_metrics": true,
    "classification_n_classes": 4,
    "batch_size": 32,
    "learning_rate_multiplier": 1,
    "n_epochs": 2,
    "prompt_loss_weight": 0.1
  },
  "model": "curie",
  "training_files": [
    {
      "statistics": {
        "tokens": 42,
        "examples": 23
      },
      "bytes": 140,
      "purpose": "fine-tune",
      "filename": "puppy.jsonl",
      "id": "file-181a1cbdcdcf4677ada87f63a0928099",
      "status": "succeeded",
      "created_at": 1646126127,
      "updated_at": 1646127311,
      "object": "file"
    }
  ],
  "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
  "status": "notRunning",
  "created_at": 1646126127,
  "updated_at": 1646127311,
  "object": "fine-tune"
}

Creating a fine tune job.

Образец запроса

POST https://aoairesource.openai.azure.com/openai/fine-tunes?api-version=2023-05-15


{
  "model": "curie",
  "training_file": "file-181a1cbdcdcf4677ada87f63a0928099"
}

Пример ответа

location: https://aoairesource.openai.azure.com/openai/fine-tunes/ft-72a2792ef7d24ba7b82c7fe4a37e379f
{
  "hyperparams": {
    "batch_size": 32,
    "learning_rate_multiplier": 1,
    "n_epochs": 2,
    "prompt_loss_weight": 0.1
  },
  "model": "curie",
  "training_files": [
    {
      "statistics": {
        "tokens": 42,
        "examples": 23
      },
      "bytes": 140,
      "purpose": "fine-tune",
      "filename": "puppy.jsonl",
      "id": "file-181a1cbdcdcf4677ada87f63a0928099",
      "status": "succeeded",
      "created_at": 1646126127,
      "updated_at": 1646127311,
      "object": "file"
    }
  ],
  "id": "ft-72a2792ef7d24ba7b82c7fe4a37e379f",
  "status": "notRunning",
  "created_at": 1646126127,
  "updated_at": 1646127311,
  "object": "fine-tune"
}

Определения

Имя Описание
Error

Ошибка

ErrorCode

Код ошибки

ErrorResponse

ErrorResponse

Event

Событие

File

Файл

FileStatistics

FileStatistics

FineTune

FineTune

FineTuneCreation

FineTuneCreation

HyperParameters

Гиперпараметры

InnerError

InnerError

InnerErrorCode

InnerErrorCode

LogLevel

LogLevel

Purpose

Цель

State

Государство

TypeDiscriminator

TypeDiscriminator

Error

Ошибка

Имя Тип Описание
code

ErrorCode

Код ошибки
Коды ошибок, определенные в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

details

Error[]

Сведения об ошибке, если они доступны.

innererror

InnerError

InnerError
Внутренняя ошибка, определенная в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

message

string

minLength: 1

Сообщение об этой ошибке.

target

string

Расположение, в котором произошла ошибка, если она доступна.

ErrorCode

Код ошибки

Значение Описание
conflict

Запрошенная операция конфликтует с текущим состоянием ресурса.

invalidPayload

Данные запроса недопустимы для этой операции.

forbidden

Операция запрещена для текущего ключа пользователя или API.

notFound

Ресурс не найден.

unexpectedEntityState

Невозможно выполнить операцию в состоянии текущего ресурса.

itemDoesAlreadyExist

Элемент уже существует.

serviceUnavailable

В настоящее время служба недоступна.

internalFailure

Внутренняя ошибка. Повторите попытку.

quotaExceeded

Превышена квота.

jsonlValidationFailed

Сбой проверки данных jsonl.

fileImportFailed

Сбой импорта файла.

ErrorResponse

ErrorResponse

Имя Тип Описание
error

Error

Ошибка
Содержимое ошибки, определенное в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

Event

Событие

Имя Тип Описание
created_at

integer (unixtime)

Метка времени при создании этого события (в эпохах UNIX).

level

LogLevel

LogLevel
Уровень детализации события.

message

string

minLength: 1

Сообщение, описывающее событие. Это может быть изменение состояния, например, enqueued, started, failed или completed, или других событий, таких как отправленные результаты.

object

TypeDiscriminator

TypeDiscriminator
Определяет тип объекта.

File

Файл

Имя Тип Описание
bytes

integer (int64)

Размер этого файла, если он доступен (может иметь значение NULL). Размеры файлов размером более 2^53-1 не поддерживаются для обеспечения совместимости с целыми числами JavaScript.

created_at

integer (unixtime)

Метка времени при создании этого задания или элемента (в эпохах UNIX).

error

Error

Ошибка
Содержимое ошибки, определенное в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

filename

string

minLength: 1

Имя файла.

id

string

Удостоверение этого элемента.

object

TypeDiscriminator

TypeDiscriminator
Определяет тип объекта.

purpose

Purpose

Цель
Предназначение отправленных документов. Используйте "точной настройки" для точной настройки. Это позволяет проверить формат отправленного файла.

statistics

FileStatistics

FileStatistics
Файл — это документ, доступный для обучения и проверки. Это также может быть созданный службой документ с подробными сведениями о результатах.

status

State

Государство
Состояние задания или элемента.

updated_at

integer (unixtime)

Метка времени, когда это задание или элемент были изменены последний (в эпохах UNIX).

FileStatistics

FileStatistics

Имя Тип Описание
examples

integer (int32)

Количество содержащихся примеров обучения в файлах типа "точной настройки" после завершения проверки содержимого файла.

tokens

integer (int32)

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

FineTune

FineTune

Имя Тип Описание
created_at

integer (unixtime)

Метка времени при создании этого задания или элемента (в эпохах UNIX).

error

Error

Ошибка
Содержимое ошибки, определенное в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

events

Event[]

События, показывающие ход выполнения точной настройки, включая очередь, выполнение и завершение.

fine_tuned_model

string

Идентификатор (идентификатор модели) результирующей точно настроенной модели. Это свойство заполняется только для успешно завершенных точно настроенных запусков. Используйте этот идентификатор для создания развертывания для вывода.

hyperparams

HyperParameters

Гиперпараметры
Параметры гиперпараметров, используемые в задании точной настройки.

id

string

Удостоверение этого элемента.

model

string

minLength: 1

Идентификатор (model-id) базовой модели, используемой для точной настройки.

object

TypeDiscriminator

TypeDiscriminator
Определяет тип объекта.

organisation_id

string

Идентификатор организации этой точной настройки задания. Не используется в Azure OpenAI; совместимость только для OpenAI.

result_files

File[]

Идентификаторы результирующих файлов (file-id), содержащие метрики обучения и оценки в формате CSV. Файл доступен только для успешно завершенных запусков точной настройки.

status

State

Государство
Состояние задания или элемента.

suffix

string

Суффикс, используемый для идентификации точно настроенной модели.

training_files

File[]

Идентификаторы файлов (file-id), используемые для обучения точно настроенной модели.

updated_at

integer (unixtime)

Метка времени, когда это задание или элемент были изменены последний (в эпохах UNIX).

user_id

string

Идентификатор пользователя этого точного задания настройки. Не используется в Azure OpenAI; совместимость только для OpenAI.

validation_files

File[]

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

FineTuneCreation

FineTuneCreation

Имя Тип Описание
batch_size

integer (int32)

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

classification_betas

number[] (double)

Значения бета-версии классификации. Если это указано, мы вычисляем оценки F-beta по указанным бета-значениям. Оценка F-beta — это обобщение оценки F-1. Это используется только для двоичной классификации. С бета-версией 1 (т. е. оценка F-1), точность и отзыв дают тот же вес. Более большая бета-оценка ставит больше веса на отзыв и меньше на точность. Меньшая бета-оценка ставит больше веса на точность и меньше на отзыв.

classification_n_classes

integer (int32)

Количество классов в задаче классификации. Этот параметр необходим для многоклассовой классификации.

classification_positive_class

string

Положительный класс в двоичной классификации. Этот параметр необходим для создания метрик точности, отзыва и F1 при выполнении двоичной классификации.

compute_classification_metrics

boolean

Значение, указывающее, следует ли вычислять метрики классификации. Если задано, мы вычисляем метрики, относящиеся к классификации, такие как точность и оценка F-1, используя набор проверки в конце каждой эпохи. Эти метрики можно просмотреть в файле результатов. Чтобы вычислить метрики классификации, необходимо предоставить validation_file. Кроме того, необходимо указать classification_n_classes для многоклассовой классификации или classification_positive_class для двоичной классификации.

learning_rate_multiplier

number (double)

Умножение скорости обучения, используемое для обучения. Скорость обучения точной настройки — это исходная скорость обучения, используемая для предварительного обучения, умноженная на это значение. Более крупные показатели обучения, как правило, лучше работают с большими размерами пакетов. Мы рекомендуем поэкспериментировать со значениями в диапазоне от 0,02 до 0,2, чтобы увидеть, что дает лучшие результаты.

model

string

minLength: 1

Идентификатор (model-id) базовой модели, используемой для этой точной настройки.

n_epochs

integer (int32)

Количество эпох для обучения модели. Эпоха относится к одному полному циклу через обучающий набор данных.

prompt_loss_weight

number (double)

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

suffix

string

Суффикс, используемый для идентификации точно настроенной модели. Суффикс может содержать до 40 символов (a-z, A-Z, 0-9 и _), которые будут добавлены в имя вашей точной модели.

training_file

string

minLength: 1

Идентификатор файла (file-id), используемый для обучения этой точно настроенной модели.

validation_file

string

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

HyperParameters

Гиперпараметры

Имя Тип Описание
batch_size

integer (int32)

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

classification_betas

number[] (double)

Значения бета-версии классификации. Если это указано, мы вычисляем оценки F-beta по указанным бета-значениям. Оценка F-beta — это обобщение оценки F-1. Это используется только для двоичной классификации. С бета-версией 1 (т. е. оценка F-1), точность и отзыв дают тот же вес. Более большая бета-оценка ставит больше веса на отзыв и меньше на точность. Меньшая бета-оценка ставит больше веса на точность и меньше на отзыв.

classification_n_classes

integer (int32)

Количество классов в задаче классификации. Этот параметр необходим для многоклассовой классификации.

classification_positive_class

string

Положительный класс в двоичной классификации. Этот параметр необходим для создания метрик точности, отзыва и F1 при выполнении двоичной классификации.

compute_classification_metrics

boolean

Значение, указывающее, следует ли вычислять метрики классификации. Если задано, мы вычисляем метрики, относящиеся к классификации, такие как точность и оценка F-1, используя набор проверки в конце каждой эпохи. Эти метрики можно просмотреть в файле результатов. Чтобы вычислить метрики классификации, необходимо предоставить validation_file. Кроме того, необходимо указать classification_n_classes для многоклассовой классификации или classification_positive_class для двоичной классификации.

learning_rate_multiplier

number (double)

Умножение скорости обучения, используемое для обучения. Скорость обучения точной настройки — это исходная скорость обучения, используемая для предварительного обучения, умноженная на это значение. Более крупные показатели обучения, как правило, лучше работают с большими размерами пакетов. Мы рекомендуем поэкспериментировать со значениями в диапазоне от 0,02 до 0,2, чтобы увидеть, что дает лучшие результаты.

n_epochs

integer (int32)

Количество эпох для обучения модели. Эпоха относится к одному полному циклу через обучающий набор данных.

prompt_loss_weight

number (double)

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

InnerError

InnerError

Имя Тип Описание
code

InnerErrorCode

InnerErrorCode
Внутренние коды ошибок, определенные в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

innererror

InnerError

InnerError
Внутренняя ошибка, определенная в рекомендациях Microsoft REST (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

InnerErrorCode

InnerErrorCode

Значение Описание
invalidPayload

Данные запроса недопустимы для этой операции.

LogLevel

LogLevel

Значение Описание
info

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

warning

Это событие представляет устраненную проблему.

error

Это сообщение представляет невосстановляемую проблему.

Purpose

Цель

Значение Описание
fine-tune

Этот файл содержит данные обучения для точного задания настройки.

fine-tune-results

Этот файл содержит результаты точного задания настройки.

State

Государство

Значение Описание
notRunning

Операция была создана и не помещается в очередь для обработки в будущем.

running

Операция начала обрабатываться.

succeeded

Операция успешно обработана и готова к использованию.

canceled

Операция отменена и не завершена.

failed

Операция завершила обработку с ошибкой и не может быть дополнительно занята.

deleted

Сущность была удалена, но может по-прежнему ссылаться на другие сущности, предшествующие удалению.

TypeDiscriminator

TypeDiscriminator

Значение Описание
list

Этот объект представляет список других объектов.

fine-tune

Этот объект представляет точное задание настройки.

file

Этот объект представляет файл.

fine-tune-event

Этот объект представляет событие точного задания настройки.

model

Этот объект представляет модель (может быть базовыми моделями или результатом точной настройки задания).