Dela via


Fine Tunes - Create

Skapar ett jobb som finjusterar en angiven modell från en viss träningsfil. Svaret innehåller information om det köade jobbet, inklusive jobbstatus och hyperparametrar. Namnet på den finjusterade modellen läggs till i svaret när det är klart.

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

URI-parametrar

Name I Obligatorisk Typ Description
endpoint
path True

string

url

Cognitive Services-slutpunkter som stöds (protokoll och värdnamn, till exempel: https://aoairesource.openai.azure.com. Ersätt "aoairesource" med ditt Azure OpenAI-kontonamn).

api-version
query True

string

Den begärda API-versionen.

Begärandehuvud

Name Obligatorisk Typ Description
api-key True

string

Ange din Azure OpenAI-kontonyckel för Cognitive Services här.

Begärandetext

Name Obligatorisk Typ Description
model True

string

Identifieraren (modell-ID) för basmodellen som används för den här finjustera.

training_file True

string

Filidentiteten (fil-ID) som används för att träna den här finjusterade modellen.

batch_size

integer

Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna en enda framåt- och bakåtpassning. I allmänhet har vi upptäckt att större batchstorlekar tenderar att fungera bättre för större datamängder. Standardvärdet samt det maximala värdet för den här egenskapen är specifika för en basmodell.

classification_betas

number[]

Klassificeringens betavärden. Om detta anges beräknar vi F-betaresultat vid de angivna betavärdena. F-betapoängen är en generalisering av F-1-poängen. Detta används endast för binär klassificering. Med betavärdet 1 (dvs. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger större vikt vid träffsäkerhet och mindre på precision. En mindre betapoäng lägger större vikt vid precision och mindre på träffsäkerhet.

classification_n_classes

integer

Antalet klasser i en klassificeringsaktivitet. Den här parametern krävs för multiklassklassificering.

classification_positive_class

string

Den positiva klassen i binär klassificering. Den här parametern behövs för att generera precisions-, träffsäkerhets- och F1-mått när du gör binär klassificering.

compute_classification_metrics

boolean

Ett värde som anger om klassificeringsmått ska beräknas. Om det anges beräknar vi klassificeringsspecifika mått som noggrannhet och F-1-poäng med hjälp av valideringsuppsättningen i slutet av varje epok. Dessa mått kan visas i resultatfilen. För att kunna beräkna klassificeringsmått måste du ange en validation_file. Dessutom måste du ange classification_n_classes för multiklassklassificering eller classification_positive_class för binär klassificering.

learning_rate_multiplier

number

Den inlärningstaktsmultiplikator som ska användas för träning. Den finjusterande inlärningsfrekvensen är den ursprungliga inlärningsfrekvensen som används för förträning multiplicerat med det här värdet. Större inlärningsfrekvenser brukar fungera bättre med större batchstorlekar. Vi rekommenderar att du experimenterar med värden i intervallet 0,02 till 0,2 för att se vad som ger bäst resultat.

n_epochs

integer

Antalet epoker som modellen ska tränas för. En epok refererar till en fullständig cykel genom träningsdatauppsättningen.

prompt_loss_weight

number

Vikten att använda för förlust på prompttoken. Detta styr hur mycket modellen försöker lära sig att generera prompten (jämfört med slutförandet som alltid har en vikt på 1,0) och kan lägga till en stabiliserande effekt på träningen när slutförandet är kort. Om frågor är extremt långa (i förhållande till slutföranden) kan det vara klokt att minska den här vikten för att undvika att överprioritera att lära sig prompten.

suffix

string

Suffixet som används för att identifiera den finjusterade modellen. Suffixet kan innehålla upp till 40 tecken (a-z, A-Z, 0-9 och _) som läggs till i det finjusterade modellnamnet.

validation_file

string

Den filidentitet (fil-id) som används för att utvärdera den finjusterade modellen under träningen.

Svar

Name Typ Description
201 Created

FineTune

Finjusteringen har skapats.

Sidhuvuden

Location: string

Other Status Codes

ErrorResponse

Ett fel inträffade.

Säkerhet

api-key

Ange din Azure OpenAI-kontonyckel för Cognitive Services här.

Typ: apiKey
I: header

Exempel

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

Creating a fine tune job for classification.

Exempelbegäran

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"
}

Exempelsvar

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.

Exempelbegäran

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


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

Exempelsvar

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"
}

Definitioner

Name Description
Error

Fel

ErrorCode

Felkod

ErrorResponse

ErrorResponse

Event

Händelse

File

Fil

FileStatistics

FileStatistics

FineTune

FineTune

FineTuneCreation

FineTuneSkapa

HyperParameters

HyperParametrar

InnerError

InnerError

InnerErrorCode

InnerErrorCode

LogLevel

Loggnivå

Purpose

Syfte

State

Tillstånd

TypeDiscriminator

TypeDiscriminator

Error

Fel

Name Typ Description
code

ErrorCode

Felkod
Felkoder som definieras i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

details

Error[]

Felinformationen om den är tillgänglig.

innererror

InnerError

InnerError
Inre fel enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

message

string

Meddelandet om det här felet.

target

string

Platsen där felet inträffade om det var tillgängligt.

ErrorCode

Felkod

Name Typ Description
conflict

string

Den begärda åtgärden står i konflikt med det aktuella resurstillståndet.

fileImportFailed

string

Det gick inte att importera filen.

forbidden

string

Åtgärden är förbjuden för den aktuella användaren/API-nyckeln.

internalFailure

string

Internt fel. Försök igen.

invalidPayload

string

Begärandedata är ogiltiga för den här åtgärden.

itemDoesAlreadyExist

string

Objektet finns redan.

jsonlValidationFailed

string

Verifieringen av jsonl-data misslyckades.

notFound

string

Det går inte att hitta resursen.

quotaExceeded

string

Kvoten har överskridits.

serviceUnavailable

string

Tjänsten är inte tillgänglig för närvarande.

unexpectedEntityState

string

Det går inte att utföra åtgärden i den aktuella resursens tillstånd.

ErrorResponse

ErrorResponse

Name Typ Description
error

Error

Fel
Felinnehåll enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

Event

Händelse

Name Typ Description
created_at

integer

En tidsstämpel när den här händelsen skapades (i unix-epoker).

level

LogLevel

Loggnivå
Utförlighetsnivån för en händelse.

message

string

Meddelandet som beskriver händelsen. Detta kan vara en ändring av tillstånd, t.ex. enqueued, started, failed eller completed eller andra händelser som uppladdade resultat.

object

TypeDiscriminator

TypeDiscriminator
Definierar typen av ett objekt.

File

Fil

Name Typ Description
bytes

integer

Storleken på den här filen när den är tillgänglig (kan vara null). Filstorlekar som är större än 2^53-1 stöds inte för att säkerställa kompatibilitet med JavaScript-heltal.

created_at

integer

En tidsstämpel när det här jobbet eller objektet skapades (i unix-epoker).

error

Error

Fel
Felinnehåll enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

filename

string

Namnet på filen.

id

string

Identiteten för det här objektet.

object

TypeDiscriminator

TypeDiscriminator
Definierar typen av ett objekt.

purpose

Purpose

Syfte
Det avsedda syftet med de uppladdade dokumenten. Använd "finjustera" för finjustering. På så sätt kan vi verifiera formatet för den uppladdade filen.

statistics

FileStatistics

FileStatistics
En fil är ett dokument som kan användas för träning och validering. Det kan också vara ett tjänstgenererat dokument med resultatinformation.

status

State

Tillstånd
Tillståndet för ett jobb eller objekt.

updated_at

integer

En tidsstämpel när det här jobbet eller objektet ändrades senast (i unix-epoker).

FileStatistics

FileStatistics

Name Typ Description
examples

integer

Antalet inneslutna träningsexempel i filer av typen "finjustera" när valideringen av filinnehåll har slutförts.

tokens

integer

Antalet token som används i prompter och slutföranden för filer av typen "finjustera" när valideringen av filinnehåll har slutförts.

FineTune

FineTune

Name Typ Description
created_at

integer

En tidsstämpel när det här jobbet eller objektet skapades (i unix-epoker).

error

Error

Fel
Felinnehåll enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

events

Event[]

De händelser som visar förloppet för den finjusterade körningen, inklusive köad, körning och slutförd.

fine_tuned_model

string

Identifieraren (modell-id) för den resulterande finjusterade modellen. Den här egenskapen fylls bara i för slutförda finjusteringskörningar. Använd den här identifieraren för att skapa en distribution för slutsatsdragning.

hyperparams

HyperParameters

HyperParametrar
Hyperparameterinställningarna som används i ett finjusterat jobb.

id

string

Identiteten för det här objektet.

model

string

Identifieraren (modell-ID) för basmodellen som används för finjusteringen.

object

TypeDiscriminator

TypeDiscriminator
Definierar typen av ett objekt.

organisation_id

string

Organisations-ID:t för det här finjusteringsjobbet. Oanvänd i Azure OpenAI; kompatibilitet endast för OpenAI.

result_files

File[]

Resultatfilens identiteter (fil-id) som innehåller tränings- och utvärderingsmått i csv-format. Filen är endast tillgänglig för slutförda finjusteringskörningar.

status

State

Tillstånd
Tillståndet för ett jobb eller objekt.

suffix

string

Suffixet som används för att identifiera den finjusterade modellen.

training_files

File[]

De filidentiteter (fil-id) som används för att träna den finjusterade modellen.

updated_at

integer

En tidsstämpel när det här jobbet eller objektet ändrades senast (i unix-epoker).

user_id

string

Användar-ID för det här finjusteringsjobbet. Oanvänd i Azure OpenAI; kompatibilitet endast för OpenAI.

validation_files

File[]

De filidentiteter (fil-ID) som används för att utvärdera den finjusterade modellen under träningen.

FineTuneCreation

FineTuneSkapa

Name Typ Description
batch_size

integer

Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna en enda framåt- och bakåtpassning. I allmänhet har vi upptäckt att större batchstorlekar tenderar att fungera bättre för större datamängder. Standardvärdet samt det maximala värdet för den här egenskapen är specifika för en basmodell.

classification_betas

number[]

Klassificeringens betavärden. Om detta anges beräknar vi F-betapoäng till de angivna betavärdena. F-betapoängen är en generalisering av F-1-poängen. Detta används endast för binär klassificering. Med en beta på 1 (dvs. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger större vikt vid återkallelse och mindre precision. En mindre betapoäng lägger större vikt vid precision och mindre på träffsäkerhet.

classification_n_classes

integer

Antalet klasser i en klassificeringsaktivitet. Den här parametern krävs för multiklassklassificering.

classification_positive_class

string

Den positiva klassen i binär klassificering. Den här parametern behövs för att generera precisions-, träffsäkerhets- och F1-mått när du gör binär klassificering.

compute_classification_metrics

boolean

Ett värde som anger om klassificeringsmått ska beräknas. Om det anges beräknar vi klassificeringsspecifika mått som noggrannhet och F-1-poäng med hjälp av valideringsuppsättningen i slutet av varje epok. Dessa mått kan visas i resultatfilen. För att kunna beräkna klassificeringsmått måste du ange en validation_file. Dessutom måste du ange classification_n_classes för multiklassklassificering eller classification_positive_class för binär klassificering.

learning_rate_multiplier

number

Den inlärningstaktsmultiplikator som ska användas för träning. Den finjusterande inlärningsfrekvensen är den ursprungliga inlärningsfrekvensen som används för förträning multiplicerat med det här värdet. Större inlärningsfrekvenser brukar fungera bättre med större batchstorlekar. Vi rekommenderar att du experimenterar med värden i intervallet 0,02 till 0,2 för att se vad som ger bäst resultat.

model

string

Identifieraren (modell-ID) för basmodellen som används för den här finjustera.

n_epochs

integer

Antalet epoker som modellen ska tränas för. En epok refererar till en fullständig cykel genom träningsdatauppsättningen.

prompt_loss_weight

number

Vikten att använda för förlust på prompttoken. Detta styr hur mycket modellen försöker lära sig att generera prompten (jämfört med slutförandet som alltid har en vikt på 1,0) och kan lägga till en stabiliserande effekt på träningen när slutförandet är kort. Om frågor är extremt långa (i förhållande till slutföranden) kan det vara klokt att minska den här vikten för att undvika att överprioritera att lära sig prompten.

suffix

string

Suffixet som används för att identifiera den finjusterade modellen. Suffixet kan innehålla upp till 40 tecken (a-z, A-Z, 0-9 och _) som läggs till i det finjusterade modellnamnet.

training_file

string

Filidentiteten (fil-ID) som används för att träna den här finjusterade modellen.

validation_file

string

Den filidentitet (fil-id) som används för att utvärdera den finjusterade modellen under träningen.

HyperParameters

HyperParametrar

Name Typ Description
batch_size

integer

Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna en enda framåt- och bakåtpassning. I allmänhet har vi upptäckt att större batchstorlekar tenderar att fungera bättre för större datamängder. Standardvärdet samt det maximala värdet för den här egenskapen är specifika för en basmodell.

classification_betas

number[]

Klassificeringens betavärden. Om detta anges beräknar vi F-betapoäng till de angivna betavärdena. F-betapoängen är en generalisering av F-1-poängen. Detta används endast för binär klassificering. Med en beta på 1 (dvs. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger större vikt vid återkallelse och mindre precision. En mindre betapoäng lägger större vikt vid precision och mindre på träffsäkerhet.

classification_n_classes

integer

Antalet klasser i en klassificeringsaktivitet. Den här parametern krävs för multiklassklassificering.

classification_positive_class

string

Den positiva klassen i binär klassificering. Den här parametern behövs för att generera precisions-, träffsäkerhets- och F1-mått när du gör binär klassificering.

compute_classification_metrics

boolean

Ett värde som anger om klassificeringsmått ska beräknas. Om det anges beräknar vi klassificeringsspecifika mått som noggrannhet och F-1-poäng med hjälp av valideringsuppsättningen i slutet av varje epok. Dessa mått kan visas i resultatfilen. För att kunna beräkna klassificeringsmått måste du ange en validation_file. Dessutom måste du ange classification_n_classes för multiklassklassificering eller classification_positive_class för binär klassificering.

learning_rate_multiplier

number

Den inlärningstaktsmultiplikator som ska användas för träning. Den finjusterande inlärningsfrekvensen är den ursprungliga inlärningsfrekvensen som används för förträning multiplicerat med det här värdet. Större inlärningsfrekvenser brukar fungera bättre med större batchstorlekar. Vi rekommenderar att du experimenterar med värden i intervallet 0,02 till 0,2 för att se vad som ger bäst resultat.

n_epochs

integer

Antalet epoker som modellen ska tränas för. En epok refererar till en fullständig cykel genom träningsdatauppsättningen.

prompt_loss_weight

number

Vikten att använda för förlust på prompttoken. Detta styr hur mycket modellen försöker lära sig att generera prompten (jämfört med slutförandet som alltid har en vikt på 1,0) och kan lägga till en stabiliserande effekt på träningen när slutförandet är kort. Om frågor är extremt långa (i förhållande till slutföranden) kan det vara klokt att minska den här vikten för att undvika att överprioritera att lära sig prompten.

InnerError

InnerError

Name Typ Description
code

InnerErrorCode

InnerErrorCode
Inre felkoder enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

innererror

InnerError

InnerError
Inre fel enligt definitionen i Microsoft REST-riktlinjerna (https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses).

InnerErrorCode

InnerErrorCode

Name Typ Description
invalidPayload

string

Begärandedata är ogiltiga för den här åtgärden.

LogLevel

Loggnivå

Name Typ Description
error

string

Det här meddelandet representerar ett problem som inte kan återställas.

info

string

Den här händelsen är endast avsedd för information.

warning

string

Den här händelsen representerar ett åtgärdat problem.

Purpose

Syfte

Name Typ Description
fine-tune

string

Den här filen innehåller träningsdata för ett finjusterat jobb.

fine-tune-results

string

Den här filen innehåller resultatet av ett finjusterat jobb.

State

Tillstånd

Name Typ Description
canceled

string

Åtgärden har avbrutits och är ofullständig.

deleted

string

Entiteten har tagits bort men kan fortfarande refereras av andra entiteter som föregått borttagningen.

failed

string

Åtgärden har slutfört bearbetningen med ett fel och kan inte användas ytterligare.

notRunning

string

Åtgärden skapades och köas inte för att bearbetas i framtiden.

running

string

Åtgärden har börjat bearbetas.

succeeded

string

Åtgärden har bearbetats och är klar för förbrukning.

TypeDiscriminator

TypeDiscriminator

Name Typ Description
file

string

Det här objektet representerar en fil.

fine-tune

string

Det här objektet representerar ett finjusterat jobb.

fine-tune-event

string

Det här objektet representerar en händelse av ett finjusterat jobb.

list

string

Det här objektet representerar en lista över andra objekt.

model

string

Det här objektet representerar en modell (kan vara en basmodell eller finjustera jobbresultatet).