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
| Namn | I | Krävs | Typ | Beskrivning |
|---|---|---|---|---|
|
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äran-huvud
| Namn | Krävs | Typ | Beskrivning |
|---|---|---|---|
| api-key | True |
string |
Ange din Azure OpenAI-kontonyckel för Cognitive Services här. |
Begäranarorgan
| Namn | Krävs | Typ | Beskrivning |
|---|---|---|---|
| model | True |
string minLength: 1 |
Identifieraren (modell-ID) för basmodellen som används för den här finjusteraren. |
| training_file | True |
string minLength: 1 |
Den filidentitet (fil-ID) som används för att träna den här finjusterade modellen. |
| batch_size |
integer (int32) |
Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna ett enda framåt- och bakåtpass. 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[] (double) |
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 en beta på 1 (d.v.s. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger mer vikt på återkallelse och mindre på precision. En mindre betapoäng lägger mer vikt på precision och mindre på återkallelse. |
|
| classification_n_classes |
integer (int32) |
Antalet klasser i en klassificeringsuppgift. Den här parametern krävs för klassificering med flera klasser. |
|
| 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 vid 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 klassificering av flera klasser eller classification_positive_class för binär klassificering. |
|
| learning_rate_multiplier |
number (double) |
Den inlärningsfrekvensmultiplikator 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 tenderar att 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 (int32) |
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 (double) |
Den vikt som ska användas 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 i träningen när slutförandet är kort. Om uppmaningarna ä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 ditt finjusterade modellnamn. |
|
| validation_file |
string |
Den filidentitet (fil-ID) som används för att utvärdera den finjusterade modellen under träningen. |
Svaren
| Namn | Typ | Beskrivning |
|---|---|---|
| 201 Created |
Finjusteringen har skapats. Headers Location: string |
|
| Other Status Codes |
Ett fel uppstod. |
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.
Exempelförfrågan
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.
Exempelförfrågan
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
| Namn | Beskrivning |
|---|---|
| Error |
Fel |
|
Error |
ErrorCode |
|
Error |
ErrorResponse |
| Event |
Händelse |
| File |
Fil |
|
File |
FileStatistics |
|
Fine |
FineTune |
|
Fine |
FineTuneSkapa |
|
Hyper |
HyperParametrar |
|
Inner |
InnerError |
|
Inner |
InnerErrorCode |
|
Log |
LogLevel |
| Purpose |
Avsikt |
| State |
Stat |
|
Type |
TypeDiscriminator |
Error
Fel
| Namn | Typ | Beskrivning |
|---|---|---|
| code |
ErrorCode |
|
| details |
Error[] |
Felinformationen om den är tillgänglig. |
| innererror |
InnerError |
|
| message |
string minLength: 1 |
Meddelandet om det här felet. |
| target |
string |
Platsen där felet inträffade om det var tillgängligt. |
ErrorCode
ErrorCode
| Värde | Beskrivning |
|---|---|
| conflict |
Den begärda åtgärden står i konflikt med det aktuella resurstillståndet. |
| invalidPayload |
Begärandedata är ogiltiga för den här åtgärden. |
| forbidden |
Åtgärden är förbjuden för den aktuella användaren/API-nyckeln. |
| notFound |
Det går inte att hitta resursen. |
| unexpectedEntityState |
Åtgärden kan inte köras i den aktuella resursens tillstånd. |
| itemDoesAlreadyExist |
Objektet finns redan. |
| serviceUnavailable |
Tjänsten är inte tillgänglig för närvarande. |
| internalFailure |
Internt fel. Försök igen. |
| quotaExceeded |
Kvoten har överskridits. |
| jsonlValidationFailed |
Verifieringen av jsonl-data misslyckades. |
| fileImportFailed |
Det gick inte att importera filen. |
ErrorResponse
ErrorResponse
| Namn | Typ | Beskrivning |
|---|---|---|
| error |
Fel |
Event
Händelse
| Namn | Typ | Beskrivning |
|---|---|---|
| created_at |
integer (unixtime) |
En tidsstämpel när den här händelsen skapades (i unix-epoker). |
| level |
LogLevel |
|
| message |
string minLength: 1 |
Meddelandet som beskriver händelsen. Det kan vara en tillståndsändring, t.ex. enqueued, started, failed eller completed eller andra händelser som uppladdade resultat. |
| object |
TypeDiscriminator |
File
Fil
| Namn | Typ | Beskrivning |
|---|---|---|
| bytes |
integer (int64) |
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 (unixtime) |
En tidsstämpel när det här jobbet eller objektet skapades (i unix-epoker). |
| error |
Fel |
|
| filename |
string minLength: 1 |
Namnet på filen. |
| id |
string |
Identiteten för det här objektet. |
| object |
TypeDiscriminator |
|
| purpose |
Avsikt |
|
| statistics |
FileStatistics |
|
| status |
Stat |
|
| updated_at |
integer (unixtime) |
En tidsstämpel när det här jobbet eller objektet ändrades senast (i unix-epoker). |
FileStatistics
FileStatistics
| Namn | Typ | Beskrivning |
|---|---|---|
| examples |
integer (int32) |
Antalet inneslutna träningsexempel i filer av typen "finjustera" när valideringen av filinnehåll har slutförts. |
| tokens |
integer (int32) |
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
| Namn | Typ | Beskrivning |
|---|---|---|
| created_at |
integer (unixtime) |
En tidsstämpel när det här jobbet eller objektet skapades (i unix-epoker). |
| error |
Fel |
|
| events |
Event[] |
De händelser som visar förloppet för den finjusterade körningen, inklusive i kö, körning och slutfört. |
| fine_tuned_model |
string |
Identifieraren (modell-ID) för den resulterande finjusterade modellen. Den här egenskapen fylls bara i för lyckade finjusterade körningar. Använd den här identifieraren för att skapa en distribution för slutsatsdragning. |
| hyperparams |
HyperParametrar |
|
| id |
string |
Identiteten för det här objektet. |
| model |
string minLength: 1 |
Identifieraren (modell-ID) för basmodellen som används för finjusteringen. |
| object |
TypeDiscriminator |
|
| organisation_id |
string |
Organisations-ID:t för detta finjusterande jobb. Används inte i Azure OpenAI. endast för OpenAI. |
| result_files |
File[] |
Resultatfilidentiteterna (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 |
Stat |
|
| 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 (unixtime) |
En tidsstämpel när det här jobbet eller objektet ändrades senast (i unix-epoker). |
| user_id |
string |
Användar-ID:t för det här finjusteringsjobbet. Används inte i Azure OpenAI. 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
| Namn | Typ | Beskrivning |
|---|---|---|
| batch_size |
integer (int32) |
Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna ett enda framåt- och bakåtpass. 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[] (double) |
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 en beta på 1 (d.v.s. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger mer vikt på återkallelse och mindre på precision. En mindre betapoäng lägger mer vikt på precision och mindre på återkallelse. |
| classification_n_classes |
integer (int32) |
Antalet klasser i en klassificeringsuppgift. Den här parametern krävs för klassificering med flera klasser. |
| 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 vid 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 klassificering av flera klasser eller classification_positive_class för binär klassificering. |
| learning_rate_multiplier |
number (double) |
Den inlärningsfrekvensmultiplikator 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 tenderar att 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 minLength: 1 |
Identifieraren (modell-ID) för basmodellen som används för den här finjusteraren. |
| n_epochs |
integer (int32) |
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 (double) |
Den vikt som ska användas 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 i träningen när slutförandet är kort. Om uppmaningarna ä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 ditt finjusterade modellnamn. |
| training_file |
string minLength: 1 |
Den filidentitet (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
| Namn | Typ | Beskrivning |
|---|---|---|
| batch_size |
integer (int32) |
Batchstorleken som ska användas för träning. Batchstorleken är antalet träningsexempel som används för att träna ett enda framåt- och bakåtpass. 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[] (double) |
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 en beta på 1 (d.v.s. F-1-poängen) får precision och träffsäkerhet samma vikt. En större betapoäng lägger mer vikt på återkallelse och mindre på precision. En mindre betapoäng lägger mer vikt på precision och mindre på återkallelse. |
| classification_n_classes |
integer (int32) |
Antalet klasser i en klassificeringsuppgift. Den här parametern krävs för klassificering med flera klasser. |
| 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 vid 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 klassificering av flera klasser eller classification_positive_class för binär klassificering. |
| learning_rate_multiplier |
number (double) |
Den inlärningsfrekvensmultiplikator 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 tenderar att 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 (int32) |
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 (double) |
Den vikt som ska användas 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 i träningen när slutförandet är kort. Om uppmaningarna ä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
| Namn | Typ | Beskrivning |
|---|---|---|
| code |
InnerErrorCode |
|
| innererror |
InnerError |
InnerErrorCode
InnerErrorCode
| Värde | Beskrivning |
|---|---|
| invalidPayload |
Begärandedata är ogiltiga för den här åtgärden. |
LogLevel
LogLevel
| Värde | Beskrivning |
|---|---|
| info |
Den här händelsen är endast avsedd för information. |
| warning |
Den här händelsen representerar ett åtgärdat problem. |
| error |
Det här meddelandet representerar ett problem som inte kan återställas. |
Purpose
Avsikt
| Värde | Beskrivning |
|---|---|
| fine-tune |
Den här filen innehåller träningsdata för ett finjusterat jobb. |
| fine-tune-results |
Den här filen innehåller resultatet av ett finjusterat jobb. |
State
Stat
| Värde | Beskrivning |
|---|---|
| notRunning |
Åtgärden skapades och är inte i kö för att bearbetas i framtiden. |
| running |
Åtgärden har börjat bearbetas. |
| succeeded |
Åtgärden har bearbetats och är klar för förbrukning. |
| canceled |
Åtgärden har avbrutits och är ofullständig. |
| failed |
Åtgärden har slutfört bearbetningen med ett fel och kan inte förbrukas ytterligare. |
| deleted |
Entiteten har tagits bort men kan fortfarande refereras av andra entiteter som föregått borttagningen. |
TypeDiscriminator
TypeDiscriminator
| Värde | Beskrivning |
|---|---|
| list |
Det här objektet representerar en lista över andra objekt. |
| fine-tune |
Det här objektet representerar ett finjusterat jobb. |
| file |
Det här objektet representerar en fil. |
| fine-tune-event |
Det här objektet representerar en händelse av ett finjusterat jobb. |
| model |
Det här objektet representerar en modell (kan vara en basmodell eller finjustera jobbresultatet). |