Så fungerar fakturering för RFT
Med Reinforcement Fine‑Tuning (RFT) kan du optimera prestandan hos OpenAI:s resonemangsmodeller med hjälp av förstärkningsinlärning. Till skillnad från våra erbjudanden för övervakad finjustering eller preferensfinjustering, som faktureras efter antalet token i träningsdatauppsättningen, faktureras RFT baserat på den tid som din träningskörning ägnar åt att utföra det centrala maskininlärningsarbetet.
Den här guiden förklarar vad som räknas som debiterbar träningstid, hur vi hanterar pauser och avbrott och hur dina konfigurationsval kan påverka kostnaden.
Priser
Beräkning: $100 per timmes faktisk körtid i den centrala träningsloopen för o4-mini-2025-04-16. Avgifterna beräknas proportionellt per sekund och avrundas till två decimaler på fakturan (t.ex. 2,55 timmar).
Användning av bedömningsmodeller: Om du använder en OpenAI-modell för att ”bedöma” utdata under träningen debiteras de token som dessa bedömningsanrop förbrukar separat, enligt våra ordinarie API-priser, när träningen har slutförts.
Vi debiterar endast för träningsarbete som faktiskt uppdaterar din modell (det vi kallar ”registrerade framsteg”).
Vad vi fakturerar för
Vi fakturerar för den tid din träningsworker ägnar åt att aktivt träna din modell, närmare bestämt:
Generera exempel från din modell under finjusteringsprocessen (kallas ”rollouts”)
Utvärdera dessa utdata med en eller flera graderare som du har definierat i jobbet (läs mer om graderare)
Beräkna och tillämpa viktuppdateringar baserat på betygen (backpropagation).
Köra eventuella valideringssteg (utvärderingssteg) som du har konfigurerat.
De flesta graderare är ”gratis” att köra, vilket innebär att vi inte tar ut någon extra avgift för deras användning utöver den tid de bidrar med till den centrala träningsloopen. Undantaget är modellgraderare, där vi även räknar de token som dessa graderare förbrukar under aktiviteterna ovan. Dessa token visas som en separat rad på din faktura. Token som förbrukas av modellgraderare faktureras enligt normala inferenspriser (OpenAI-priser).
Det vi INTE debiterar för
Vi tar inte betalt för tid som läggs på:
Att validera eller granska ditt dataset innan träningen startar.
Säkerhetskontroller av ditt dataset.
Att vänta i kö på beräkningsresurser.
Att hämta modellvikter eller dataset.
Att förbereda (rendera) ditt dataset till vårt träningsformat.
Säkerhetsutvärderingar av din finjusterade modell efter träningen.
Om träningsarbete går förlorat på grund av ett fel från vår sida (till exempel om en worker kraschar och måste återgå till en tidigare checkpoint) debiteras du inte för den förlorade beräkningstiden eller granskar-token. Mer information om detta finns i nästa avsnitt.
Captured forward progress och debiteringshändelser
Träningen består av många små uppdateringar av din modell. Vi spårar hur många av dessa uppdateringar som slutförs framgångsrikt. Avgifter baseras på beräkningstiden och granskar-token som är kopplade till dessa lyckade uppdateringar.
Vi debiterar när någon av följande ”debiteringshändelser” inträffar:
Träningen slutförs.
Du pausar träningen.
Du avbryter träningen.
Träningen misslyckas.
Varje debitering omfattar det inkrementella arbete som utförts sedan den senaste debiteringen. Till exempel:
Om du pausar en körning sparar vi en checkpoint och debiterar dig för beräkningstiden och granskar-token som använts sedan den senaste debiteringen.
När du återupptar fortsätter träningen från checkpointen. Nästa debitering (vid slutförande, ytterligare en paus, avbrott eller fel) omfattar bara det extra arbete som utförts efter återupptagandet.
Om du avbryter en körning debiterar vi dig för arbetet som utförts fram till avbrottet.
Om träningen misslyckas och arbete sedan den senaste debiteringen går förlorat debiteras du inte för den förlorade delen.
Denna metod för ”captured forward progress” säkerställer att du bara betalar för arbete som behålls i din modell eller som du medvetet överger.
Visa jobbets förlopp
RFT-jobb har ett fält som heter usage_metrics, där jobbets totala användning fram till det aktuella steget dokumenteras. Det omfattar tiden som lagts på träning och alla token som använts av jobbets samtliga modellbedömare. Fältet kan granskas via API:et (GET /v1/fine_tuning/jobs/{job_id}) eller på panelen för finjustering.
Faktorer som påverkar träningstiden
Eftersom debiteringen baseras på tid påverkar dina konfigurationsval kostnaden direkt. Viktiga faktorer är bland annat:
Problemens svårighetsgrad: Om datamängden består av svåra problem behöver modellen sannolikt mer tid för att resonera kring varje problem, vilket ökar tiden det tar att skapa varje exempel.
Beräkningsintensitet: Hyperparametern compute_multiplier styr hur mycket beräkning som utförs per träningssteg. Högre värden får modellen att resonera utförligare kring varje datapunkt, vilket gör att varje steg tar längre tid.
Valideringsinställningar:
Bedömarnas prestanda:
Större eller mer avancerade bedömningsmodeller tar längre tid på sig att returnera ett omdöme än mindre modeller. En bedömning med en resonemangsmodell kan exempelvis ta tio gånger längre tid än med en modell utan resonemangsfunktioner.
Komplexa bedömningsfunktioner i Python tar längre tid att köra än enkla funktioner.
Med de här inställningarna kan du väga kostnad, hastighet och modellkvalitet mot varandra. Täta valideringar kan exempelvis upptäcka problem tidigare, men ökar kostnaden. En mer avancerad modell kan ge betydligt mer exakta bedömningar, men gör varje bedömningssteg långsammare och jobben dyrare.
Hantera kostnader
Så här håller du utgifterna under kontroll:
Börja med kortare körningar för att förstå hur konfigurationen påverkar tidsåtgången.
Använd ett rimligt antal valideringsexempel och eval_samples. Validera inte oftare än nödvändigt.
Välj den minsta bedömningsmodellen som uppfyller dina kvalitetskrav.
Se till att anpassade Python-bedömare är effektiva.
Justera compute_multiplier för att balansera konvergenshastighet mot kostnad.
Övervaka körningen på kontrollpanelen eller via API:et. Du kan pausa eller avbryta när som helst.
Exempel
Lyckad träningskörning
| Träningstid | Fakturerad tid | Status | Beskrivning |
|---|---|---|---|
| 00:00 | 00:00 | – | Användaren skapar RFT-jobb via API |
| 00:10 | 00:00 | VALIDATING_FILES | 10 minuter på att validera datasetet |
| 00:30 | 00:00 | VALIDATING_FILES | 20 minuter med säkerhetskontroller av datasetet |
| 01:00 | 00:00 | QUEUED | 30 minuter i väntan på en tillgänglig worker |
| 01:30 | 00:00 | RUNNING | 30 minuter för att konfigurera träning (ladda ned vikter, förbearbetning osv.) |
| 05:30 | 04:00 | RUNNING | 4 timmar på träning |
| 06:00 | 04:00 | RUNNING | 30 minuter med säkerhetsutvärderingar av den resulterande modellen |
| 06:00 | 04:00 | SUCCEEDED | Träningen slutförs |
I det här fallet är den totala förflutna tiden 6 timmar, men endast 4 timmar är fakturerbara. Kostnaden skulle bli 4 timmar × $100/timme = $400.
Exempel på misslyckat jobb
I det här exemplet tränar körningen i 2 timmar, skriver en checkpoint, tränar i ytterligare 1 timme, men misslyckas sedan. Endast de 2 timmarnas träning fram till checkpointen är fakturerbara.
| Träningstid | Fakturerad tid | Status | Beskrivning |
|---|---|---|---|
| 00:00 | 00:00 | – | Användaren skapar RFT-jobb via API |
| 00:10 | 00:00 | VALIDATING_FILES | 10 minuter på att validera datasetet |
| 00:30 | 00:00 | VALIDATING_FILES | 20 minuter med säkerhetskontroller av datasetet |
| 01:00 | 00:00 | QUEUED | 30 minuter i väntan på en tillgänglig worker |
| 01:30 | 00:00 | RUNNING | 30 minuter för att konfigurera träning (ladda ned vikter, förbearbetning osv.) |
| 03:30 | 02:00 | RUNNING | 2 timmar på träning |
| 03:30 | 02:00 | RUNNING | Checkpoint skapad vid steg 5 |
| 04:30 | 02:00 | RUNNING | Träningen misslyckas på grund av ett internt fel vid steg 8 (efter ytterligare 1 timme) |
| 04:30 | 02:00 | RUNNING | 30 minuter med utvärdering och validering av checkpointen |
| 04:30 | 02:00 | SUCCEEDED | Jobbet slutförs (med senaste checkpointen) |
Även om totalt 3 timmar lades på träning är endast 2 timmar "sparade" i en användbar checkpoint och faktureras. Du ansvarar inte för den timmes träningsarbete som gick förlorad på grund av felet. Kostnaden skulle bli 2 timmar × $100/timme = $200.
Vanliga frågor
När debiteras jag?
Vi debiterar när körningen slutförs, pausas, avbryts eller misslyckas. Varje debitering omfattar arbete som utförts sedan föregående debitering.
Betalar jag om en körning misslyckas?
Om en körning misslyckas på grund av vårt fel och nyligt träningsarbete går förlorat, debiteras du inte för den förlorade delen. Om du avbryter en körning debiteras du för arbete fram till avbrottet.
Hur faktureras token för graderingsmodeller?
Vi räknar de token som används av de modellgraderare du konfigurerar. När träningen är klar fakturerar vi dessa token enligt våra standardpriser per token.
Kan jag pausa och återuppta en körning?
Ja. När du pausar sparar vi en checkpoint och debiterar för arbete som utförts hittills. När du återupptar debiteras du endast för ytterligare arbete som utförs efter återupptagandet.
Om du har andra frågor om fakturering för Reinforcement Fine‑Tuning kan du kontakta vårt supportteam.
