Kako deluje obračunavanje za prilagajanje z okrepljenim učenjem
Prilagajanje z okrepljenim učenjem (RFT) vam omogoča, da z okrepljenim učenjem optimizirate zmogljivost OpenAI-jevih modelov sklepanja. Za razliko od naših ponudb nadzorovanega prilagajanja ali prilagajanja po preferencah, ki se obračunavajo glede na število žetonov v naboru podatkov za učenje, se RFT obračunava glede na čas, ki ga vaš zagon učenja porabi za izvajanje osnovnega dela strojnega učenja.
Ta vodnik pojasnjuje, kaj se šteje kot zaračunljiv čas učenja, kako obravnavamo začasne zaustavitve in preklice ter kako lahko vaše izbire konfiguracije vplivajo na stroške.
Cene
Računska obdelava: 100 USD na uro dejanskega časa, porabljenega v osrednji učni zanki za o4-mini-2025-04-16. Stroški se sorazmerno obračunajo na sekundo in so na računu zaokroženi na dve decimalni mesti (npr. 2,55 ure).
Uporaba ocenjevalnega modela: če med učenjem uporabljate model OpenAI za »ocenjevanje« rezultatov, se žetoni, porabljeni pri teh ocenjevalnih klicih, po končanem učenju zaračunajo ločeno po naših standardnih cenah za API.
Zaračunamo samo učenje, ki dejansko posodobi vaš model (temu pravimo »zabeleženi dejanski napredek«).
Za kaj zaračunavamo
Zaračunavamo čas, ki ga vaš delovni proces za učenje porabi za aktivno učenje vašega modela, in sicer:
Ustvarjanje vzorcev iz vašega modela med postopkom finega prilagajanja (znano kot »izvajanja«)
Ocenjevanje teh izhodov z enim ali več ocenjevalniki, ki ste jih določili v opravilu (več o ocenjevalnikih)
Računanje in uporaba posodobitev uteži na podlagi ocen (vzvratno razširjanje).
Izvajanje vseh korakov preverjanja (evalvacije), ki ste jih konfigurirali.
Večino ocenjevalnikov je mogoče izvajati »brezplačno«, kar pomeni, da njihove uporabe ne zaračunavamo dodatno zunaj časa, ki ga prispevajo k osnovni zanki učenja. Izjema so modelski ocenjevalniki, pri katerih štejemo tudi žetone, ki jih ti ocenjevalniki porabijo med zgornjimi dejavnostmi. Ti žetoni so na računu prikazani kot ločena postavka. Žetoni, ki jih porabijo modelski ocenjevalniki, se zaračunajo po običajnih cenah za sklepanje (cenik OpenAI).
Česa NE zaračunamo
Ne zaračunamo časa, porabljenega za:
Validacijo ali pregled vašega nabora podatkov pred začetkom učenja.
Varnostna preverjanja vašega nabora podatkov.
Čakanje v vrsti na računske vire.
Prenos uteži modela ali naborov podatkov.
Pripravo (upodabljanje) vašega nabora podatkov v naš učni format.
Varnostna vrednotenja vašega prilagojenega modela po učenju.
Če se učno delo izgubi zaradi napake na naši strani (na primer, če se delavec sesuje in se mora vrniti na prejšnjo kontrolno točko), vam izgubljeni čas računanja ali žetoni ocenjevalnika niso zaračunani. Več podrobnosti o tem v naslednjem razdelku.
Zajeti napredek naprej in obračunski dogodki
Učenje sestavlja veliko majhnih posodobitev vašega modela. Spremljamo, koliko teh posodobitev se uspešno dokonča. Stroški temeljijo na času računanja in žetonih ocenjevalnika, povezanih s temi uspešnimi posodobitvami.
Strošek obračunamo, ko nastopi eden od naslednjih »obračunskih dogodkov«:
Učenje se uspešno zaključi.
Učenje začasno zaustavite.
Učenje prekličete.
Učenje spodleti.
Vsak obračun pokriva dodatno delo, opravljeno od zadnjega obračuna. Na primer:
Če izvajanje začasno zaustavite, shranimo kontrolno točko in vam zaračunamo čas računanja ter žetone ocenjevalnika, porabljene od zadnjega obračuna.
Ko nadaljujete, se učenje nadaljuje iz kontrolne točke. Naslednji obračun (ob zaključku, novi začasni zaustavitvi, preklicu ali napaki) bo pokril le dodatno delo, opravljeno po nadaljevanju.
Če izvajanje prekličete, vam zaračunamo delo, opravljeno do preklica.
Če učenje spodleti in se delo od zadnjega obračuna izgubi, vam izgubljeni del ni zaračunan.
Ta pristop »zajetega napredka naprej« zagotavlja, da plačate le za delo, ki ostane v vašem modelu ali ga namerno opustite.
Spremljanje napredka opravila
Opravila prilagajanja z okrepljenim učenjem imajo polje usage_metrics, v katerem je zabeležena skupna poraba opravila do trenutnega koraka. To vključuje čas, porabljen za učenje, in vse žetone, ki so jih pri opravilu porabili vsi ocenjevalni modeli. To polje si lahko ogledate prek API-ja (GET /v1/fine_tuning/jobs/{job_id}) ali na nadzorni plošči za prilagajanje.
Dejavniki, ki vplivajo na čas učenja
Ker obračun temelji na času, vaše nastavitve neposredno vplivajo na stroške. Ključni dejavniki so:
Zahtevnost problemov: če vaš nabor podatkov vsebuje zahtevne probleme, bo model verjetno porabil več časa za sklepanje pri vsakem problemu, zato bo priprava posameznega vzorca trajala dlje.
Računska intenzivnost: hiperparameter compute_multiplier določa količino računanja v posameznem koraku učenja. Višje vrednosti spodbujajo model k obširnejšemu sklepanju pri vsaki podatkovni točki, zato posamezni koraki trajajo dlje.
Nastavitve preverjanja:
Zmogljivost ocenjevalnika:
Večji ali zmogljivejši ocenjevalni modeli za pripravo ocene potrebujejo več časa kot manjši. Ocenjevanje z modelom sklepanja lahko na primer traja desetkrat dlje kot ocenjevanje z modelom brez sklepanja.
Izvajanje zapletenih funkcij za ocenjevanje v Pythonu traja dlje kot izvajanje preprostih.
S temi nastavitvami lahko uravnotežite stroške, hitrost in kakovost modela. Pogosto preverjanje lahko na primer prej odkrije težave, vendar poveča stroške. Ocenjevanje z naprednejšim modelom lahko močno izboljša natančnost ocenjevanja, vendar upočasni vsak korak ocenjevanja in podraži opravila.
Upravljanje stroškov
Za nadzor nad porabo:
Začnite s krajšimi izvajanji, da ugotovite, kako vaše nastavitve vplivajo na čas.
Uporabite primerno število primerov za preverjanje in eval_samples. Preverjanja ne izvajajte pogosteje, kot je potrebno.
Izberite najmanjši ocenjevalni model, ki izpolnjuje vaše zahteve glede kakovosti.
Poskrbite za učinkovito delovanje lastnih ocenjevalnikov v Pythonu.
Prilagodite compute_multiplier, da uravnotežite hitrost konvergence in stroške.
Izvajanje spremljajte na nadzorni plošči ali prek API-ja. Izvajanje lahko kadar koli začasno ustavite ali prekličete.
Primeri
Uspešen zagon učenja
| Čas učenja | Zaračunani čas | Stanje | Opis |
|---|---|---|---|
| 00:00 | 00:00 | – | Uporabnik prek API-ja ustvari opravilo RFT |
| 00:10 | 00:00 | VALIDATING_FILES | 10 minut, porabljenih za preverjanje nabora podatkov |
| 00:30 | 00:00 | VALIDATING_FILES | 20 minut izvajanja varnostnih preverjanj nabora podatkov |
| 01:00 | 00:00 | QUEUED | 30 minut čakanja na razpoložljivega delavca |
| 01:30 | 00:00 | RUNNING | 30 minut priprave učenja (prenos uteži, predobdelava itd.) |
| 05:30 | 04:00 | RUNNING | 4 ure učenja |
| 06:00 | 04:00 | RUNNING | 30 minut izvajanja varnostnih ocen nastalega modela |
| 06:00 | 04:00 | SUCCEEDED | Učenje se zaključi |
V tem primeru je skupni dejanski čas 6 ur, zaračunljive pa so le 4 ure. Strošek bi bil 4 ure × $100/uro = $400.
Primer neuspelega opravila
V tem primeru učenje v zagonu poteka 2 uri, nato se zapiše kontrolna točka, učenje poteka še 1 uro, potem pa zagon ne uspe. Zaračunljivi sta samo 2 uri učenja do kontrolne točke.
| Čas učenja | Zaračunani čas | Stanje | Opis |
|---|---|---|---|
| 00:00 | 00:00 | – | Uporabnik prek API-ja ustvari opravilo RFT |
| 00:10 | 00:00 | VALIDATING_FILES | 10 minut, porabljenih za preverjanje nabora podatkov |
| 00:30 | 00:00 | VALIDATING_FILES | 20 minut izvajanja varnostnih preverjanj nabora podatkov |
| 01:00 | 00:00 | QUEUED | 30 minut čakanja na razpoložljivega delavca |
| 01:30 | 00:00 | RUNNING | 30 minut priprave učenja (prenos uteži, predobdelava itd.) |
| 03:30 | 02:00 | RUNNING | 2 uri učenja |
| 03:30 | 02:00 | RUNNING | Kontrolna točka ustvarjena pri koraku 5 |
| 04:30 | 02:00 | RUNNING | Učenje ne uspe zaradi notranje napake pri koraku 8 (po še 1 uri) |
| 04:30 | 02:00 | RUNNING | 30 minut ocenjevanja in preverjanja kontrolne točke |
| 04:30 | 02:00 | SUCCEEDED | Opravilo se zaključi (z najnovejšo kontrolno točko) |
Čeprav so bile za učenje skupaj porabljene 3 ure, sta v uporabni kontrolni točki »zajeti« in zaračunani le 2 uri. Za uro učnega dela, izgubljeno zaradi napake, niste odgovorni. Strošek bi bil 2 uri × $100/uro = $200.
Pogosta vprašanja
Kdaj se mi storitev zaračuna?
Stroške obračunamo, ko se izvajanje konča, začasno ustavi, prekliče ali spodleti. Vsak obračun zajema delo, opravljeno od prejšnjega obračuna.
Ali plačam, če zagon ne uspe?
Če zagon ne uspe zaradi naše napake in je izgubljeno nedavno opravljeno učno delo, vam izgubljenega dela ne zaračunamo. Če zagon prekličete, vam zaračunamo delo do preklica.
Kako se zaračunavajo žetoni modelskih ocenjevalnikov?
Štejemo žetone, ki jih porabijo vsi modelski ocenjevalniki, ki jih nastavite. Po končanem učenju te žetone zaračunamo po naših standardnih cenah na žeton.
Ali lahko zagon začasno ustavim in nadaljujem?
Da. Ko zagon začasno ustavite, shranimo kontrolno točko in zaračunamo do takrat opravljeno delo. Ko ga nadaljujete, vam zaračunamo le dodatno delo, opravljeno po nadaljevanju.
Če imate druga vprašanja o zaračunavanju prilagajanja z okrepljenim učenjem, se obrnite na našo ekipo za podporo.
