다음을 통해 공유


Fine Tunes - Create

지정된 학습 파일에서 지정된 모델을 미세 조정하는 작업을 만듭니다. 응답에는 작업 상태 및 하이퍼 매개 변수를 포함하여 큐에 추가된 작업의 세부 정보가 포함됩니다. 미세 조정된 모델의 이름은 완료되면 응답에 추가됩니다.

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

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
endpoint
path True

string

url

지원되는 Cognitive Services 엔드포인트(프로토콜 및 호스트 이름( 예: https://aoairesource.openai.azure.com) "aoairesource"를 Azure OpenAI 계정 이름으로 대체합니다.)

api-version
query True

string

요청된 API 버전입니다.

요청 헤더

Name 필수 형식 Description
api-key True

string

여기에서 Cognitive Services Azure OpenAI 계정 키를 제공합니다.

요청 본문

Name 필수 형식 Description
model True

string

이 미세 조정에 사용되는 기본 모델의 식별자(model-id)입니다.

training_file True

string

이 미세 조정된 모델을 학습하는 데 사용되는 파일 ID(파일 ID)입니다.

batch_size

integer

학습에 사용할 일괄 처리 크기입니다. 일괄 처리 크기는 단일 전진 및 후진 계산법을 학습하는 데 사용되는 학습 예의 수입니다. 일반적으로 일괄 처리 크기가 클수록 데이터 세트가 클수록 더 잘 작동하는 경향이 있습니다. 기본값과 이 속성의 최대값은 기본 모델과 관련이 있습니다.

classification_betas

number[]

분류 베타 값입니다. 이 매개 변수가 제공되면 지정된 베타 값에서 F-베타 점수를 계산합니다. F-베타 점수는 F-1 점수를 일반화한 것입니다. 이 항목은 이진 분류에만 사용됩니다. 베타가 1(예: F-1 점수)인 경우 정밀도 및 재현율에 동일한 가중치가 부여됩니다. 베타 점수가 높을수록 재현율에 더 많은 비중을 두고 정확도에는 덜 중요합니다. 베타 점수가 작을수록 정확성에 더 많은 비중을 두고 재현율에는 덜 중요합니다.

classification_n_classes

integer

분류 작업의 클래스 수입니다. 이 매개 변수는 다중 클래스 분류에 필요합니다.

classification_positive_class

string

이진 분류의 양수 클래스. 이 매개 변수는 이진 분류를 수행할 때 정밀도, 재현율 및 F1 메트릭을 생성하는 데 필요합니다.

compute_classification_metrics

boolean

분류 메트릭을 계산할지 여부를 나타내는 값입니다. 설정된 경우 모든 Epoch가 끝날 때 유효성 검사 집합을 사용하여 정확도 및 F-1 점수와 같은 분류별 메트릭을 계산합니다. 이러한 메트릭은 결과 파일에서 볼 수 있습니다. 분류 메트릭을 계산하려면 validation_file 제공해야 합니다. 또한 다중 클래스 분류에 대한 classification_n_classes 지정하거나 이진 분류에 대한 classification_positive_class 지정해야 합니다.

learning_rate_multiplier

number

학습에 사용할 학습 속도 승수입니다. 미세 조정 학습 속도는 사전 학습에 사용된 원래 학습 속도에 이 값을 곱한 값입니다. 학습 속도가 클수록 일괄 처리 크기가 클수록 성능이 향상되는 경향이 있습니다. 0.02에서 0.2 사이의 값으로 실험하여 최상의 결과를 생성하는 값을 확인하는 것이 좋습니다.

n_epochs

integer

모델을 학습할 Epoch의 수입니다. Epoch는 학습 데이터 세트를 통한 하나의 전체 주기를 나타냅니다.

prompt_loss_weight

number

프롬프트 토큰의 손실에 사용할 가중치입니다. 이렇게 하면 모델이 프롬프트를 생성하는 방법을 학습하는 방법을 제어하고(항상 가중치가 1.0인 완료와 비교) 완료가 짧을 때 학습에 안정화 효과를 추가할 수 있습니다. 프롬프트가 매우 긴 경우(완료에 비해) 프롬프트 학습의 우선 순위를 초과하지 않도록 이 가중치를 줄이는 것이 합리적일 수 있습니다.

suffix

string

미세 조정된 모델을 식별하는 데 사용되는 접미사입니다. 접미사는 미세 조정된 모델 이름에 추가될 최대 40자(a-z, A-Z, 0-9, 및 _)를 포함할 수 있습니다.

validation_file

string

학습 중에 미세 조정된 모델을 평가하는 데 사용되는 파일 ID(파일 ID)입니다.

응답

Name 형식 Description
201 Created

FineTune

미세 조정이 성공적으로 만들어졌습니다.

헤더

Location: string

Other Status Codes

ErrorResponse

오류가 발생했습니다.

보안

api-key

여기에서 Cognitive Services Azure OpenAI 계정 키를 제공합니다.

형식: apiKey
In(다음 안에): 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"
}

정의

Name Description
Error

오류

ErrorCode

오류 코드

ErrorResponse

ErrorResponse

Event

이벤트

File

파일

FileStatistics

FileStatistics

FineTune

FineTune

FineTuneCreation

FineTuneCreation

HyperParameters

하이퍼 매개 변수

InnerError

InnerError

InnerErrorCode

InnerErrorCode

LogLevel

LogLevel

Purpose

목적

State

시스템 상태

TypeDiscriminator

TypeDiscriminator

Error

오류

Name 형식 Description
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

이 오류의 메시지입니다.

target

string

사용 가능한 경우 오류가 발생한 위치입니다.

ErrorCode

오류 코드

Name 형식 Description
conflict

string

요청된 작업이 현재 리소스 상태와 충돌합니다.

fileImportFailed

string

파일을 가져오지 못했습니다.

forbidden

string

현재 사용자/api 키에는 작업이 금지되어 있습니다.

internalFailure

string

내부 오류입니다. 다시 시도하세요.

invalidPayload

string

이 작업에 대한 요청 데이터가 잘못되었습니다.

itemDoesAlreadyExist

string

항목이 이미 있습니다.

jsonlValidationFailed

string

jsonl 데이터의 유효성 검사에 실패했습니다.

notFound

string

리소스를 찾을 수 없습니다.

quotaExceeded

string

할당량이 초과되었습니다.

serviceUnavailable

string

현재 서비스를 사용할 수 없습니다.

unexpectedEntityState

string

현재 리소스의 상태에서는 작업을 실행할 수 없습니다.

ErrorResponse

ErrorResponse

Name 형식 Description
error

Error

오류
Microsoft REST 지침(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)에 정의된 오류 콘텐츠입니다.

Event

이벤트

Name 형식 Description
created_at

integer

이 이벤트가 생성되었을 때의 타임스탬프입니다(unix epoch).

level

LogLevel

LogLevel
이벤트의 세부 정보 표시 수준입니다.

message

string

이벤트를 설명하는 메시지입니다. 이는 상태 변경(예: 큐에 추가됨, 시작됨, 실패 또는 완료됨) 또는 업로드된 결과와 같은 기타 이벤트일 수 있습니다.

object

TypeDiscriminator

TypeDiscriminator
개체의 형식을 정의합니다.

File

파일

Name 형식 Description
bytes

integer

사용 가능한 경우 이 파일의 크기입니다(null일 수 있음). JavaScript 정수와의 호환성을 보장하기 위해 2^53-1보다 큰 파일 크기는 지원되지 않습니다.

created_at

integer

이 작업 또는 항목이 만들어졌을 때의 타임스탬프입니다(unix epoch).

error

Error

오류
Microsoft REST 지침(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)에 정의된 오류 콘텐츠입니다.

filename

string

파일 이름입니다.

id

string

이 항목의 ID입니다.

object

TypeDiscriminator

TypeDiscriminator
개체의 형식을 정의합니다.

purpose

Purpose

목적
업로드된 문서의 의도된 목적입니다. 미세 조정을 위해 "미세 조정"을 사용합니다. 이렇게 하면 업로드된 파일의 형식에 대한 유효성을 검사할 수 있습니다.

statistics

FileStatistics

FileStatistics
파일은 학습 및 유효성 검사에 사용할 수 있는 문서입니다. 결과 세부 정보가 포함된 서비스 생성 문서일 수도 있습니다.

status

State

시스템 상태
작업 또는 항목의 상태입니다.

updated_at

integer

이 작업 또는 항목이 마지막으로 수정된 타임스탬프(unix epoch)입니다.

FileStatistics

FileStatistics

Name 형식 Description
examples

integer

파일 콘텐츠의 유효성 검사가 완료되면 "미세 조정" 종류의 파일에 포함된 학습 예제의 수입니다.

tokens

integer

파일 콘텐츠의 유효성 검사가 완료되면 프롬프트에 사용되는 토큰 수와 "미세 조정" 종류의 파일에 대한 완료입니다.

FineTune

FineTune

Name 형식 Description
created_at

integer

이 작업 또는 항목이 만들어졌을 때의 타임스탬프입니다(unix epoch).

error

Error

오류
Microsoft REST 지침(https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses)에 정의된 오류 콘텐츠입니다.

events

Event[]

큐에 대기, 실행 및 완료를 포함하여 미세 조정 실행의 진행률을 보여 주는 이벤트입니다.

fine_tuned_model

string

결과 미세 조정된 모델의 식별자(model-id)입니다. 이 속성은 성공적으로 완료된 미세 조정 실행에 대해서만 채워집니다. 이 식별자를 사용하여 추론을 위한 배포를 만듭니다.

hyperparams

HyperParameters

HyperParameters
미세 조정 작업에 사용되는 하이퍼 매개 변수 설정입니다.

id

string

이 항목의 ID입니다.

model

string

미세 조정에 사용되는 기본 모델의 식별자(model-id)입니다.

object

TypeDiscriminator

TypeDiscriminator
개체의 형식을 정의합니다.

organisation_id

string

이 미세 조정 작업의 조직 ID입니다. Azure OpenAI에서 사용되지 않음; OpenAI에 대해서만 호환성.

result_files

File[]

csv 형식의 학습 및 평가 메트릭을 포함하는 결과 파일 ID(file-id)입니다. 파일은 성공적으로 완료된 미세 조정 실행에만 사용할 수 있습니다.

status

State

시스템 상태
작업 또는 항목의 상태입니다.

suffix

string

미세 조정된 모델을 식별하는 데 사용되는 접미사입니다.

training_files

File[]

미세 조정된 모델을 학습하는 데 사용되는 파일 ID(file-id)입니다.

updated_at

integer

이 작업 또는 항목이 마지막으로 수정된 타임스탬프(unix epoch)입니다.

user_id

string

이 미세 조정 작업의 사용자 ID입니다. Azure OpenAI에서 사용되지 않음; OpenAI에 대해서만 호환성.

validation_files

File[]

학습 중에 미세 조정된 모델을 평가하는 데 사용되는 파일 ID(file-id)입니다.

FineTuneCreation

FineTuneCreation

Name 형식 Description
batch_size

integer

학습에 사용할 일괄 처리 크기입니다. 일괄 처리 크기는 단일 전진 및 후진 계산법을 학습하는 데 사용되는 학습 예의 수입니다. 일반적으로 일괄 처리 크기가 클수록 데이터 세트가 클수록 더 잘 작동하는 경향이 있습니다. 기본값과 이 속성의 최대값은 기본 모델과 관련이 있습니다.

classification_betas

number[]

분류 베타 값입니다. 이 매개 변수가 제공되면 지정된 베타 값에서 F-베타 점수를 계산합니다. F-베타 점수는 F-1 점수를 일반화한 것입니다. 이 값은 이진 분류에만 사용됩니다. 베타가 1(예: F-1 점수)인 경우 정밀도 및 재현율에 동일한 가중치가 부여됩니다. 베타 점수가 높을수록 재현율에 더 많은 비중을 두고 정확도에는 덜 중요합니다. 베타 점수가 작을수록 정확성에 더 많은 비중을 두고 재현율에는 덜 중요합니다.

classification_n_classes

integer

분류 작업의 클래스 수입니다. 이 매개 변수는 다중 클래스 분류에 필요합니다.

classification_positive_class

string

이진 분류의 양수 클래스. 이 매개 변수는 이진 분류를 수행할 때 정밀도, 재현율 및 F1 메트릭을 생성하는 데 필요합니다.

compute_classification_metrics

boolean

분류 메트릭을 계산할지 여부를 나타내는 값입니다. 설정된 경우 모든 Epoch가 끝날 때 유효성 검사 집합을 사용하여 정확도 및 F-1 점수와 같은 분류별 메트릭을 계산합니다. 이러한 메트릭은 결과 파일에서 볼 수 있습니다. 분류 메트릭을 계산하려면 validation_file 제공해야 합니다. 또한 다중 클래스 분류에 대한 classification_n_classes 지정하거나 이진 분류에 대한 classification_positive_class 지정해야 합니다.

learning_rate_multiplier

number

학습에 사용할 학습 속도 승수입니다. 미세 조정 학습 속도는 사전 학습에 사용된 원래 학습 속도에 이 값을 곱한 값입니다. 더 큰 학습 속도는 더 큰 일괄 처리 크기로 더 나은 성능을 발휘하는 경향이 있습니다. 0.02에서 0.2 사이의 값으로 실험하여 최상의 결과를 생성하는 값을 확인하는 것이 좋습니다.

model

string

이 미세 조정에 사용되는 기본 모델의 식별자(model-id)입니다.

n_epochs

integer

모델을 학습할 Epoch의 수입니다. Epoch는 학습 데이터 세트를 통한 하나의 전체 주기를 나타냅니다.

prompt_loss_weight

number

프롬프트 토큰의 손실에 사용할 가중치입니다. 이렇게 하면 모델이 프롬프트를 생성하는 방법을 학습하는 방법을 제어하고(항상 가중치가 1.0인 완료와 비교) 완료가 짧을 때 학습에 안정화 효과를 추가할 수 있습니다. 프롬프트가 매우 긴 경우(완료를 기준으로) 프롬프트 학습의 우선 순위를 과도하게 지정하지 않도록 이 가중치를 줄이는 것이 합리적일 수 있습니다.

suffix

string

미세 조정된 모델을 식별하는 데 사용되는 접미사입니다. 접미사는 미세 조정된 모델 이름에 추가될 최대 40자(a-z, A-Z, 0-9, 및 _)를 포함할 수 있습니다.

training_file

string

이 미세 조정된 모델을 학습시키는 데 사용되는 파일 ID(file-id)입니다.

validation_file

string

학습 중에 미세 조정된 모델을 평가하는 데 사용되는 파일 ID(file-id)입니다.

HyperParameters

하이퍼 매개 변수

Name 형식 Description
batch_size

integer

학습에 사용할 일괄 처리 크기입니다. 일괄 처리 크기는 단일 전진 및 후진 계산법을 학습하는 데 사용되는 학습 예의 수입니다. 일반적으로 일괄 처리 크기가 클수록 데이터 세트가 클수록 더 잘 작동하는 경향이 있습니다. 기본값과 이 속성의 최대값은 기본 모델과 관련이 있습니다.

classification_betas

number[]

분류 베타 값입니다. 이 매개 변수가 제공되면 지정된 베타 값에서 F-베타 점수를 계산합니다. F-베타 점수는 F-1 점수를 일반화한 것입니다. 이 항목은 이진 분류에만 사용됩니다. 베타가 1(예: F-1 점수)인 경우 정밀도 및 재현율에 동일한 가중치가 부여됩니다. 베타 점수가 높을수록 재현율에 더 많은 비중을 두고 정확도에는 덜 중요합니다. 베타 점수가 작을수록 정확성에 더 많은 비중을 두고 재현율에는 덜 중요합니다.

classification_n_classes

integer

분류 작업의 클래스 수입니다. 이 매개 변수는 다중 클래스 분류에 필요합니다.

classification_positive_class

string

이진 분류의 양수 클래스. 이 매개 변수는 이진 분류를 수행할 때 정밀도, 재현율 및 F1 메트릭을 생성하는 데 필요합니다.

compute_classification_metrics

boolean

분류 메트릭을 계산할지 여부를 나타내는 값입니다. 설정된 경우 모든 Epoch가 끝날 때 유효성 검사 집합을 사용하여 정확도 및 F-1 점수와 같은 분류별 메트릭을 계산합니다. 이러한 메트릭은 결과 파일에서 볼 수 있습니다. 분류 메트릭을 계산하려면 validation_file 제공해야 합니다. 또한 다중 클래스 분류에 대한 classification_n_classes 지정하거나 이진 분류에 대한 classification_positive_class 지정해야 합니다.

learning_rate_multiplier

number

학습에 사용할 학습 속도 승수입니다. 미세 조정 학습 속도는 사전 학습에 사용된 원래 학습 속도에 이 값을 곱한 값입니다. 학습 속도가 클수록 일괄 처리 크기가 클수록 성능이 향상되는 경향이 있습니다. 0.02에서 0.2 사이의 값으로 실험하여 최상의 결과를 생성하는 값을 확인하는 것이 좋습니다.

n_epochs

integer

모델을 학습할 Epoch의 수입니다. Epoch는 학습 데이터 세트를 통한 하나의 전체 주기를 나타냅니다.

prompt_loss_weight

number

프롬프트 토큰의 손실에 사용할 가중치입니다. 이렇게 하면 모델이 프롬프트를 생성하는 방법을 학습하는 방법을 제어하고(항상 가중치가 1.0인 완료와 비교) 완료가 짧을 때 학습에 안정화 효과를 추가할 수 있습니다. 프롬프트가 매우 긴 경우(완료에 비해) 프롬프트 학습의 우선 순위를 초과하지 않도록 이 가중치를 줄이는 것이 합리적일 수 있습니다.

InnerError

InnerError

Name 형식 Description
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

Name 형식 Description
invalidPayload

string

이 작업에 대한 요청 데이터가 잘못되었습니다.

LogLevel

LogLevel

Name 형식 Description
error

string

이 메시지는 복구할 수 없는 문제를 나타냅니다.

info

string

이 이벤트는 정보 전용입니다.

warning

string

이 이벤트는 완화된 문제를 나타냅니다.

Purpose

목적

Name 형식 Description
fine-tune

string

이 파일에는 미세 조정 작업에 대한 학습 데이터가 포함되어 있습니다.

fine-tune-results

string

이 파일에는 미세 조정 작업의 결과가 포함됩니다.

State

시스템 상태

Name 형식 Description
canceled

string

작업이 취소되었으며 불완전합니다.

deleted

string

엔터티가 삭제되었지만 삭제를 예약하는 다른 엔터티에서 여전히 참조될 수 있습니다.

failed

string

작업이 실패로 처리를 완료했으며 더 이상 사용할 수 없습니다.

notRunning

string

작업이 만들어졌으며 나중에 처리될 큐에 대기되지 않습니다.

running

string

작업이 처리되기 시작했습니다.

succeeded

string

작업이 성공적으로 처리되었으며 사용할 준비가 되었습니다.

TypeDiscriminator

TypeDiscriminator

Name 형식 Description
file

string

이 개체는 파일을 나타냅니다.

fine-tune

string

이 개체는 미세 조정 작업을 나타냅니다.

fine-tune-event

string

이 개체는 미세 조정 작업의 이벤트를 나타냅니다.

list

string

이 개체는 다른 개체의 목록을 나타냅니다.

model

string

이 개체는 모델을 나타냅니다(기본 모델 또는 미세 조정 작업 결과일 수 있음).