Pretraining af en LLM: data, compute, scaling laws og pris
Tyve modeller trænet på én laptop-GPU for at måle en scaling law og tjekke 6ND-estimatet mod en rigtig FLOP-tæller.
På denne side
Kapitel 9 sluttede med en transformer-blok, der kan trænes. Stabl et par stykker af dem, ret next-token-tabet fra Kapitel 8 mod outputtet, og der er ikke mere at opfinde. Alt, der er tilbage, er et køb.
Det er et større skifte, end det lyder som. Hvert kapitel indtil nu har spurgt lærer den? — et ja-eller-nej-spørgsmål, som en laptop afgør på ti minutter. Dette kapitel stiller et spørgsmål med penge i: givet en fast mængde aritmetik, hvad er den bedste model, jeg kan købe? Svaret er en formel, og den var ikke åbenlys for nogen i 2018.
Her er det spørgsmål besvaret ved måling på én laptop-GPU. Tyve modeller, fra 98.624 til 15 millioner parametre, blev trænet fra bunden på 174 millioner tokens fra Wikipedia — et BPE-vokabular på 2.048 tokens trænet, som Kapitel 7 træner et, og transformer’en fra Kapitel 9. Hver kørsel fik præcis et af tre compute-budgetter og ikke én operation mere, så en større model læser nødvendigvis mindre tekst. Det bedste hold-out-tab ved hvert budget:
budget C (FLOPs) best loss reached by a model of
1.00e13 5.3531 98,624 params
3.16e13 4.8638 98,624 params
1.00e14 4.3383 295,808 params
fitted: L = (Cc / C)^0.0913 over one decade of computeTi gange så meget aritmetik tager 19 % af tabet, og de tre punkter ligger på en ret linje i log-log. Intet i de første ni kapitler forudsiger det. Der er intet teorem bag — det er en empirisk regelmæssighed, som holder med en anden eksponent over de ti størrelsesordener mellem denne laptop og et datacenter, og det er den ene observation, der overbeviste en industri om at bruge et lille lands BNP på GPU’er.
Hvad pretraining er, og hvad der er nyt ved det
Link til afsnittet: Hvad pretraining er, og hvad der er nyt ved detIntet i målet ændrer sig. Modellen forudsiger stadig næste token, tabet er stadig cross-entropy fra Kapitel 4 anvendt på faktoriseringen fra Kapitel 8, optimizeren er stadig AdamW fra Kapitel 6. Pretraining er ikke en ny algoritme; det er den samme algoritme kørt på et korpus, der er stort nok til, at kørslen skal budgetteres. To ting gør det muligt: labels er gratis, fordi målet for position er token ved og allerede findes i teksten; og sidste afsnit i Kapitel 6 fjernede indvendingen, fordi en model med langt flere parametre, end de klassiske regler tillader, ikke bryder sammen, men bliver bedre. Det, der kommer ud, er en basismodel — noget, der fortsætter tekst i stedet for at svare.
At tælle compute, før man bruger det: 6ND
Link til afsnittet: At tælle compute, før man bruger det: 6NDFør noget af dette kan budgetteres, skal det tælles, og feltet tæller det med én formel:
hvor er antallet af parametre, er trænings-tokens, og er det samlede antal floating-point-operationer. Kaplan et al. udleder det i to trin.1 Forward: 2 FLOPs pr. parameter pr. token, fordi hver parameter i en matrixmultiplikation bruges én gang pr. token, i én multiplikation og én addition. Backward: dobbelt så meget som forward, fordi backward-passet fra Kapitel 5 beregner to gradienter i hvert lag — med hensyn til lagets inputs, så signalet bliver ved med at bevæge sig, og med hensyn til dets weights — hver især en matrixmultiplikation på størrelse med den i forward, altså .
Det er hele udledningen, og den er værd at tjekke i stedet for bare at tro på. PyTorch leverer en rigtig FLOP-tæller, torch.utils.flop_counter.FlopCounterMode, som opfanger hver operation, en model sender afsted, og summerer det faktiske arbejde. Kør den over fire størrelsesordener, den største på meta-enheden, som allokerer shapes og ingen hukommelse:
from torch.utils.flop_counter import FlopCounterMode
counter = FlopCounterMode(display=False)
with counter:
loss = model(x, targets)[1]
loss.backward()
measured = counter.get_total_flops()
print(measured / (6 * n_params * n_tokens))| konfiguration | uden embeddings | i alt | målt, fwd+bwd | ÷ (samlet ) | ÷ (uden emb.) | fwd+bwd ÷ fwd |
|---|---|---|---|---|---|---|
| 128, 4 lag, 256 | 788.736 | 7.254.400 | 4.60e10 | 1,031 | 9,485 | 3,000 |
| 512, 8 lag, 256 | 25.183.232 | 51.045.888 | 3.26e11 | 1,038 | 2,104 | 3,000 |
| 768, 12 lag, 1024 | 84.973.056 | 124.356.864 | 1.75e12 | 1,145 | 1,676 | 3,000 |
| 1600, 48 lag, 1024 | 1.474.870.400 | 1.556.920.000 | 2.10e13 | 1,100 | 1,161 | 3,000 |
| 4096, 32 lag, 2048 | 6.442.983.424 | 6.582.444.032 | 8.74e13 | 1,080 | 1,104 | 3,000 |
| 8192, 80 lag, 8192 | 64.427.147.264 | 65.544.929.280 | 3.75e15 | 1,163 | 1,183 | 3,000 |
Forward+backward over forward-forholdet er 3,000, præcis, ved hver skala: ikke en tilnærmelse, der tilfældigvis er god, men den aritmetiske identitet ovenfor returneret som et rundt tal af en tæller, der intet ved om udledningen.
Den målte total ligger derefter mellem 3 % og 17 % over , når tæller embedding-matricerne med — og den sætning betyder noget, fordi de to grundlæggende papers tæller forskelligt. Kaplan udelader »all vocabulary and positional embeddings«, fordi det »produces significantly cleaner scaling laws« (§1.3); Chinchillas Appendix F siger »we also count embeddings matrices in the total parameter count«.2 For et bredt vokabular og en smal hidden dimension adskiller de to sig med en faktor ni, som første række viser.
Restgabet er det, bevidst udelader: attention-scorerne. Kaplans Eq. (2.2) skriver forward-omkostningen som og dropper det andet led, fordi — sikkert i 2020, mindre sikkert nu, og grunden til, at forholdet driver opad, når vokser — hvilket er grunden til, at to rækker her deler en på 1.024, og forholdet falder, fra 1,145 til 1,100, når går fra 768 til 1.600. Det er den -omkostning, Kapitel 9 introducerede, og som Kapitel 16 gør til en pris.
Hukommelse: hvad der faktisk skal være plads til
Link til afsnittet: Hukommelse: hvad der faktisk skal være plads tilCompute afgør, hvor lang tid en kørsel tager; hukommelse afgør, om den kan starte. Træn med almindelig fp32 AdamW, og hver parameter bærer fire tal: weight, dens gradient, og Adams løbende middel og varians — de to gennemsnit, der blev bygget i hånden i Kapitel 6. Fire tal på fire bytes hver er 16 bytes pr. parameter, før en eneste activation. Målt på en 8 GB laptop-GPU ved at tage den residente allokering på det punkt i steppet, hvor ingen graf er i live:
| model | vokabular | batch | forudsagt | resident målt | peak i et step | forskellen | |
|---|---|---|---|---|---|---|---|
| 512, 8 lag | 50.257 | 8 | 51.045.888 | 779 MB | 801 MB | 2.500 MB | 1.699 MB |
| 512, 8 lag | 4.096 | 8 | 27.411.456 | 418 MB | 426 MB | 1.043 MB | 617 MB |
| 256, 6 lag | 4.096 | 8 | 5.839.360 | 89 MB | 89 MB | 382 MB | 293 MB |
| 256, 6 lag | 4.096 | 32 | 5.839.360 | 89 MB | 89 MB | 1.259 MB | 1.170 MB |
| 256, 6 lag | 4.096 | 128 | 5.839.360 | 89 MB | 89 MB | 4.771 MB | 4.681 MB |
Forudsigelse og måling stemmer inden for 3 %. Overraskelsen er den sidste kolonne: activations får modellen til at se lille ud. Den samme model med 5,8 millioner parametre, som kræver 89 MB vedvarende tilstand, kræver 4.681 MB activations ved en batch på 128 — tooghalvtreds gange modellen — og meget af det er slet ikke transformer’en. Det er logits, én vektor af vokabularstørrelse pr. token ved fire bytes pr. element: 512 MB i sidste række, 393 MB i første. Vokabularstørrelsen blev valgt i Kapitel 7, og den afgør stadig, hvad der kan være på kortet.
Hvilket led der dominerer, afhænger af kørslens form, og derfor siger Micikevicius et al., at hukommelse »is dominated by activations«3, mens ZeRO siger, at en model med 1,5 milliarder parametre kræver »at least 24 GB« alene til modeltilstande.4 ZeRO når frem til de samme 16 bytes ad en anden vej — for fp16 weights, for fp16 gradients, hver for fp32 master weights og Adams to moments — hvilket for 70 milliarder parametre er 1,12 terabyte, svarende til fjorten 80 GB-GPU’er, før en eneste activation.
Parallelisme, i ét afsnit og én uddelegering
Link til afsnittet: Parallelisme, i ét afsnit og én uddelegeringIntet af det passer på én enhed ved frontier-skala, så kørslen deles på fire måder samtidig. Data parallelism lægger en kopi af modellen på hver GPU og gennemsnitter gradienterne — standarden, og den ZeRO forbedrer ved at nægte at beholde redundante kopier af optimizer-tilstanden. Tensor parallelism splitter enkelte matricer på tværs af enheder. Pipeline parallelism giver hver enhed en sammenhængende gruppe lag. Context parallelism splitter selve sekvensen, nødvendigt først når er lang nok til, at attention-leddet dominerer. Llama 3’s Tabel 4 viser alle fire på én gang: tensor 8, context op til 16, pipeline 16, data op til 128, på tværs af 16.384 H100-GPU’er.5 Det er alt, dette kursus vil sige om det; distributed training-engineering er et helt semester for sig, og Stanford CS336 er det semester, lektion 5 til 8, med koden.6 Det, der overlever uddelegeringen, er ét tal, model FLOPs utilisation — andelen af en GPU’s peak-aritmetik, som en rigtig kørsel opnår — hvilket er det, der gør det pæne til vægurtid og derfor til penge.
Kaplan, og væddemålet industrien tog
Link til afsnittet: Kaplan, og væddemålet industrien togI januar 2020 trænede Kaplan et al. et gitter af transformers og fandt, at testtabet følger en potenslov i hver af de tre ressourcer over mere end seks størrelsesordener.1 Deres §1.2 giver tre fitted laws:
med ledsagere for data og for optimalt allokeret compute. Konstanterne er ikke universelle, og paper’et siger det selv: »the precise numerical values of , and depend on the vocabulary size and tokenization and hence do not have a fundamental meaning.«
Eksponenterne er bittesmå: ti gange parametrene køber en faktor af det resterende tab. Det lyder som ingenting, og det er den vigtigste kendsgerning her — afkastet er elendigt, og det stopper aldrig. En potenslov med en lille eksponent lover, at næste størrelsesorden vil hjælpe, mindre end den forrige gjorde, for evigt. At købe compute holder op med at være et gamble og bliver et køb med en offentliggjort vekselkurs, og det er præcis argumentet, der frigjorde kapitalen.
Så kom forskriften, og her tog paper’et fejl på en måde, der kostede industrien rigtig mange penge. Kaplans Tabel 6 giver og : ti gange compute betyder en model, der er 5,4 gange større, fodret med kun 1,9 gange så meget tekst. Abstractet er eksplicit — »optimally compute-efficient training involves training very large models on a relatively modest amount of data and stopping significantly before convergence.« Feltet gjorde præcis det: GPT-3 er 175 milliarder parametre på 300 milliarder tokens,7 Gopher 280 milliarder på 300 milliarder, Megatron-Turing NLG 530 milliarder på 270 milliarder.2 En halv token til to tokens pr. parameter, hele vejen rundt.
Chinchilla, og hvad sweepet ovenfor målte
Link til afsnittet: Chinchilla, og hvad sweepet ovenfor målteI marts 2022 trænede Hoffmann et al. over 400 modeller fra 70 millioner til 16 milliarder parametre og nåede den modsatte konklusion ad tre uafhængige veje.2 Deres Tabel 2 rapporterer eksponenten i som 0,50, 0,49 og 0,46, mod Kaplans 0,73. Sagt enkelt: modelstørrelse og træningsdata bør vokse i samme forhold.
Deres anden tilgang er den, sweepet i toppen af dette kapitel reproducerer i en milliontedel af skalaen: fasthold et budget, træn mange størrelser ved præcis det budget, plot endeligt tab mod modelstørrelse.
| parametre | |||
|---|---|---|---|
| 98.624 | 5,3531 (171) | 4,8638 (542) | — |
| 150.320 | 5,4636 (74) | — | — |
| 194.208 | 5,5041 (44) | 4,8730 (140) | 4,4040 (442) |
| 295.808 | 5,5550 (19) | 4,9029 (60) | 4,3383 (190) |
| 665.280 | 5,7849 (3,8) | 5,1254 (12) | 4,4192 (38) |
| 1.280.768 | 5,8174 (1,0) | 5,1751 (3,2) | 4,5003 (10) |
| 3.101.568 | — | 5,4686 (0,5) | 4,7768 (1,7) |
| 5.315.072 | — | 5,5894 (0,2) | 4,8514 (0,6) |
| 15.053.568 | — | — | 5,3534 (0,1) |
Hold-out-tab i nats pr. token, tokens pr. parameter i parentes, fed for den bedste model ved hvert budget; en streg er et punkt, der ikke blev kørt, fordi budgettet krævede mere tekst, end korpusset rummer, eller størrelsen faldt uden for dem, der blev sweepet dér.
Læs ned gennem en kolonne: tabet falder, rammer bunden og stiger igen. En model kan være for stor til sit budget præcis lige så let som for lille — ved er straffen for at vælge 665.280 parametre frem for 295.808 0,08 nats, hvilket på den envelope, der blev fitted ovenfor, er det tab, en korrekt dimensioneret model når med 18 % mindre compute. At vælge den forkerte form smider en femtedel af budgettet væk. Det er Chinchillas Figur 3 på en eftermiddag på én GPU i stedet for med fire hundrede modeller.
Læs nu på tværs. Ved er den bedste model den mindste i sweepet; ved er den 295.808 parametre, indrammet på begge sider. Optimum flytter mod højre, når budgettet vokser, og det er hele indholdet i korrektionen. Fit paper’ets tredje tilgang — fladen over hver kørsel — og minimér under betingelsen :
L(N, D) = 24.7 / N^0.195 + 46.8 / D^0.169 (E fits to ~0; see below)
implied N_opt ∝ C^0.464
compare Chinchilla 0.46-0.50 · Besiroglu 0.513 · Kaplan 0.730,46, fra en laptop, mod Kaplans 0,73. Overensstemmelse på tre cifre fra et fit med tre budgetter er held; overensstemmelse på det første er det ikke. Eksponenten rejser — konstanten gør ikke, eftersom token-til-parameter-forholdet ved disse optima er 170 til 540, ikke 20. Tre grunde, alle lærerige. fitter til nul, fordi kørslen ved et tab over 4 nats slet ikke er tæt på det entropigulv, der dominerer Chinchillas fit. Batch size og learning rate blev holdt faste i stedet for tuned pr. punkt, hvilket handicappper de kørsler, der får færrest steps — og det er de store modeller: ved FLOPs får en model med 1,28 millioner parametre 159 optimizer-steps i alt, langt under de få tusinde, Kaplans -led siger, at enhver model behøver. En scaling law fitted inden for et regime, og denne ligger seks størrelsesordener under Chinchillas.
Derfor paper’ets abstract: »current large language models are significantly undertrained«. Chinchilla er demonstrationen — 70 milliarder parametre på 1,4 billioner tokens, den samme samlede compute som Gophers 280 milliarder på 300 milliarder, og bedre end den på 51 af 57 MMLU-opgaver, 67,5 % mod 60 %.2 Fire gange mindre, fire en halv gange mere tekst, samme penge, bedre model.
To forbehold om det berømte forhold. »Tyve tokens pr. parameter« er ikke en sætning i paper’et, som kun siger, at »for every doubling of model size the number of training tokens should also be doubled«; de 20 er en slutning fra Tabel 3 og fra Chinchillas egne 70 B på 1,4 T. Og præcisionen er dårligere end publiceret: Besiroglu et al. refittede fra en digitalisering af Figur 4, fandt, at de oprindelige parametre »fit the reconstructed data poorly« med intervaller »implausibly tight given the number of data points«, og satte det ærlige interval til »between 4 and 40« tokens pr. parameter.8
Én detalje i Chinchillas metode indfrier et løfte, Kapitel 1 gav om learning-rate schedules. Cosine-schedule skal matches til token-budgettet. En model, der kommer til at se 10 millioner tokens, skal decay sin learning rate til nul ved 10 millioner tokens; giv den en schedule dimensioneret til 100 millioner, stop den tidligt, og du aflæser et tab midt i nedstigningen ved en rate, der er alt for høj. Chinchilla træner hver model ved fire cycle lengths for præcis at kontrollere for dette; sweepet ovenfor sætter sin schedule ud fra budgettet af samme grund.
Hvad scaling laws ikke lover
Link til afsnittet: Hvad scaling laws ikke loverDe er det mest nyttige empiriske resultat i feltet, og de bliver rutinemæssigt oversolgt. Fire begrænsninger.
De forudsiger tab, ikke evner. Venstresiden er cross-entropy på hold-out-tekst. Intet i disse papers giver lov til en påstand om, hvorvidt en model vil skrive korrekt SQL, afvise en skadelig anmodning eller bruge et tool. Det er lektionen fra Kapitel 5 igen: en forudsigelse af tabet er ikke en forudsigelse af den adfærd, du betaler for.
De er fitted, ikke udledt. Ingen teori producerer . Konstanterne flytter sig med tokenizer’en — og derfor er en perplexity-sammenligning på tværs af to tokenizers meningsløs, som Kapitel 8 forklarede — og med data-mix, arkitektur og optimizer. Enhver publiceret lov er en lov for det setup, der producerede den, og derfor refittede Meta sin egen før Llama 3.5
De antager en frisk token for hvert step, hvilket stille antager et uendeligt korpus. Muennighoff et al. målte, hvad der sker, når det slipper op: op til fire epochs af gentagne data koster næsten ingenting — en model med 8,7 milliarder parametre på 44 milliarder unikke tokens set fire gange sluttede »only 0.5 % higher validation loss« end samme model på 178 milliarder unikke — mens ekstra compute efter omtrent seksten epochs ikke køber noget.9
Og ingen træner compute-optimal længere. Chinchilla minimerer omkostningen ved træning; en deployed model betaler derefter omtrent FLOPs pr. genereret token, for evigt. LLaMA 1 sagde det ligeud: »given a target level of performance, the preferred model is not the fastest to train but the fastest at inference«.10 Sardana et al. formaliserede det ved at minimere i stedet og fandt, at enhver, der forventer en milliard requests, bør træne »smaller and longer than Chinchilla-optimal«.11 Llama 3’s §9.1 er enig: dens små modeller trænes »far beyond the point of compute optimal training, effectively trading training compute for inference efficiency«.5 Forholdet er ikke forældet; det besvarer et spørgsmål, som ikke længere er det, der bliver stillet.
Emergent abilities, og diskussionen om, hvorvidt de er virkelige
Link til afsnittet: Emergent abilities, og diskussionen om, hvorvidt de er virkeligeTabet falder jævnt. Benchmark-scorer gør det nogle gange ikke. Wei et al. samlede tilfælde, hvor en opgave ligger på tilfældighedsniveau over størrelsesordener af trænings-compute og derefter springer — trecifret aritmetik, der dukker op i GPT-3 ved omkring FLOPs, MMLU, der stiger over gætning mellem og — og gav mønstret et navn: »an ability is emergent if it is not present in smaller models but is present in larger models«.12 Hvis det er en virkelig egenskab, er ekstrapolation fra billige eksperimenter usikker, fordi den evne, du køber, måske ikke findes i nogen skala, du har råd til at teste.
Schaeffer, Miranda og Koyejo argumenterede for, at det meste er en måleartefakt, og mekanismen er aritmetik.13 Per-token-tab falder jævnt, så sandsynligheden for, at én token er rigtig, , forbedres gradvist. Scor modellen med exact string match over et svar på tokens, og du opløfter den sandsynlighed til — en jævn kurve opløftet i en stor potens ligner en klippe. Skift til en metrik, der tæller tokens i stedet for at kræve dem alle, på de samme outputs, og »the family's performance smoothly, continuously and predictably improves with increasing scale«.
Deres audit er tallet at huske — »of the 39 preferred metrics in BIG-Bench, at most 5 display emergence«, hvor to diskontinuerte metrikker står for over 92 % af de påståede tilfælde — og det er deres advarsel også: »nothing in this paper should be interpreted as claiming that large language models cannot display emergent abilities«. Et spring i en graf er evidens om metrikken, indtil andet er vist. Kapitel 29 er dér, hvor det bliver dit problem, fordi valget af en hard-cutoff-metrik er en beslutning, du træffer uden at opdage det.
Hvor dataene kommer fra
Link til afsnittet: Hvor dataene kommer fraKorpusset er den del af en pretraining-kørsel, der ikke har nogen ligning knyttet til sig, og hvor de fleste afgørende beslutninger bor. Råmaterialet er et web crawl: Common Crawls arkiv fra august 2026 rummer »2.14 billion web pages or 360 TiB of uncompressed content«, én måned af det, gratis at downloade.14 Næsten intet er brugbart, som det står. T5-paper’et siger, at crawlet »largely comprises gibberish or boiler-plate text like menus, error messages, or duplicate text«, og C4-pipelinen, det introducerede, er en liste af grove heuristikker — behold kun linjer, der slutter med terminal tegnsætning, kassér sider med færre end tre sætninger, kassér enhver side, der indeholder en krøllet parentes eller et ord fra en offentlig liste over skældsord — som gør tyve terabyte månedlig tekst til omkring 750 GB.15
Groft er ordet. Dodge et al. audited, hvad disse filtre fjerner, og fandt, at bloklisten over skældsord sletter 42 % af dokumenter på African-American English og 32 % på Hispanic-aligned English, mod 6,2 % af White-aligned English, og efterlader et korpus, hvor 97,8 % er den sidste kategori.16 En regel uden mening om dialekt havde én.
Derefter deduplication, som ikke er rengøring: Lee et al. fandt en sætning på 61 ord gentaget 61.036 gange i C4 og viste, at deduplication reducerer den hastighed, hvormed modeller »emit memorized text«, tifold, fra 1,9 % af genererede tokens til 0,19 %.17 Mere er dog ikke bedre — FineWeb-teamet deduplicated globalt på tværs af 96 crawls, fik 4 billioner tokens og ingen målbar gevinst, og deduplicated derefter hvert crawl separat, fik 20 billioner og matchede det bedste eksisterende korpus.18
Derefter contamination. Llama 3 målte sin egen og publicerede den: 98 % af AGIEval, 95 % af BIG-Bench Hard og 85 % af HellaSwag overlappede træningssættet ved 8-grams, og for MMLU var overlap så højt, at »it is impossible to get a good performance gain estimate«.5 GPT-3’s §4 rapporterer en filtreringsbug, der efterlod benchmarks i dataene uden vej tilbage: »because of cost considerations it was infeasible to retrain the model«.7
Proveniens er den uløste del. The Pile leverede en komponent på 100,96 GiB kaldet Books3 — 12 % af korpusset og, ifølge paper’ets egen samtykketabel, bøger fra en privat torrent-tracker;19 den blev taget offline i august 2023 efter en copyright-klage. Den juridiske position pr. september 2026 er uafklaret, og de tre amerikanske afgørelser, der citeres som en trend, er uenige med hinanden. Alsup fandt træning på lovligt erhvervede bøger »exceedingly transformative«, mens han fastslog, at et bibliotek bygget af piratkopier ikke var det, og Anthropic indgik forlig om den halvdel for $1,5 milliarder dækkende 482.460 værker, omtrent $3.000 hver, godkendt 20. juli 2026.20 Chhabria gav Meta summary judgment, mens han skrev, at hans afgørelse »does not stand for the proposition that Meta's use of copyrighted materials to train its language models is lawful«, kun at »these plaintiffs made the wrong arguments«.21 Bibas, der afgjorde imod Ross Intelligence, bemærkede, at »only non-generative AI is before me today«.22 Ingen amerikansk appelret har afgjort spørgsmålet.
Mennesker gør de dele, tabet ikke kan. TIME rapporterede i januar 2023, at arbejdere, der labellede giftig tekst for OpenAI gennem firmaet Sama, tog »between around $1.32 and $2 per hour« med hjem for at læse passager, der beskrev seksuelt misbrug af børn, tortur og selvskade, mens OpenAI betalte Sama $12,50 i timen for arbejdet; Sama bestrider både lønintervallet og kvoten.23 Det er filtreringen omkring pretraining snarere end pretraining selv — men det står på samme faktura, og det er dér, et menneske sidder.
Elektriciteten er virkelig og som regel fejlciteret. Det mest omhyggelige publicerede tal er BLOOMs: 1.082.990 GPU-timer, 433 MWh og 24,7 ton CO₂-ækvivalent for kørslen, 50,5 når produktion og idle nodes tælles med;24 Patterson et al. sætter GPT-3 til 1.287 MWh og 552 ton.25 To forbehold. BLOOMs fordel er det franske atomnet på 57 g CO₂ pr. kWh snarere end effektivitet — den brugte mere energi end OPT-175B. Og feltets mest citerede emissionsfigur, Strubell et al.s 626.155 lb for en neural architecture search, blev senere vist at være 88 gange for høj, fordi man havde antaget, at søgningen kørte ved fuld modelstørrelse, når den kørte på en proxy.26 LBNL’s framing er den forsvarlige: amerikanske datacentre brugte 192 TWh i 2024, 4,7 % af national elektricitet — et tal knyttet til en industri, ikke til én bestemt kørsel.27
Den røde tråd er det, Bender et al. kaldte documentation debt: »putting ourselves in a situation where the datasets are both undocumented and too large to document post hoc«.28 Hver kendsgerning ovenfor findes, fordi nogen kiggede. For korpusserne bag de modeller, de fleste bruger, kan ingen.
Hvad det faktisk koster
Link til afsnittet: Hvad det faktisk kosterNu aritmetikken, alle vil have, fra fire citerede inputs, så det er åbenlyst, hvad der skal skiftes ud, når de bliver forældede.
Peak throughput
Link til afsnittet: Peak throughputNVIDIAs H100-side angiver 1.979 teraFLOPS BF16 tensor-core throughput under en fodnote, der lyder »with sparsity«.29 Ingen pretraining-kørsel bruger struktureret sparsity, så det dense tal er halvdelen: 989,5 TFLOP/s.
Utilisation
Link til afsnittet: UtilisationLlama 3’s Tabel 4 rapporterer 38–43 % BF16 model FLOPs utilisation. Brug 40 %: 395,8 TFLOP/s nyttig aritmetik pr. GPU.5
Lambdas on-demand-pris for en 8×H100 SXM-node, tilgået 2026-09-06: $3,99 pr. GPU-time, altså $31,92 i timen for noden.30
Chinchillas forhold, , giver og dermed .
| budget | H100-timer | FLOPs | compute-optimal parametre | tokens | på én 8×H100-node | GPU’er til at blive færdig på 90 dage |
|---|---|---|---|---|---|---|
| $100 | 25 | 3.6e19 | 546 M | 10,9 B | 3,1 t | 1 |
| $1.000 | 251 | 3.6e20 | 1,73 B | 34,5 B | 31,3 t | 1 |
| $10.000 | 2.506 | 3.6e21 | 5,46 B | 109 B | 13 dage | 2 |
| $100.000 | 25.063 | 3.6e22 | 17,3 B | 345 B | 131 dage | 12 |
| $1.000.000 | 250.627 | 3.6e23 | 54,6 B | 1,09 T | 4 år | 116 |
| $10.000.000 | 2.506.266 | 3.6e24 | 173 B | 3,45 T | 36 år | 1.160 |
| $100.000.000 | 25.062.657 | 3.6e25 | 546 B | 10,9 T | 358 år | 11.603 |
Læs de sidste to kolonner sammen. For $10.000 får du en model med 5 milliarder parametre på én lejet node på fjorten dage. Ved $100.000.000 siger aritmetikken 546 milliarder parametre — og tolv tusind H100’er koblet sammen i tre måneder, hvilket ikke er noget, du lejer med et kreditkort. Efter omtrent $100.000 holder den bindende begrænsning op med at være penge og bliver clusteret.
Før du stoler på en tabel som den, så test den mod kørsler, hvis reelle pris er publiceret — llm.c reproducerer GPT-2 124M på »~90 minutes« på en 8×A100-node »for about $20«, og GPT-2 1.6B på 24 timer på en 8×H100-node for $672.31
$672, against what $672 actually bought (llm.c GPT-2 1.6B, one 8xH100 node, 24 h)
this table predicts: 168 H100-hours N = 1.41 B params D = 28.3 B tokens
what was actually run: 192 H100-hours N = 1.558 B params D = 33.6 B tokens
Llama 3 405B, against Meta's own published GPU-hours
from the paper's 3.8e25 FLOPs at 40 % MFU: 26.67 M H100-hours
published in Meta's Llama 3.1 model card: 30.84 M H100-hours ratio 0.86Begge inden for omkring 15 %, hvilket omtrent er den nøjagtighed, denne slags estimat fortjener, og betydeligt bedre end den nøjagtighed, det normalt citeres med.
Overskriftssammenligningen, med begge definitioner på bordet
Link til afsnittet: Overskriftssammenligningen, med begge definitioner på bordetDet mest gentagne tal i dette emne er, at en model i GPT-2-klassen, som kostede omkring $43.000 i 2019, i dag kan reproduceres for nogle få dusin dollars. Den moderne halvdel er veldokumenteret; den historiske halvdel er ikke.
I dag. Karpathys nanochat README: »you can train your own GPT-2 capability LLM ... for only $48 (~2 hours of 8XH100 GPU node) ... On a spot instance, the total cost can be closer to ~$15.«32 »GPT-2 capability« er her præcist og publiceret — at slå GPT-2’s CORE-score på 0,256525 — på en leaderboard, hvis bedste entry pr. 14. marts 2026 er 1,65 timer. De $48 antager $3 pr. GPU-time, under Lambdas listepris på $3,99; til listepris er det nærmere $64.
I 2019. Der er ingen primærkilde: OpenAI publicerede aldrig en varighed eller en pris. Kæden går gennem The Register, februar 2019, som rapporterede »256 Google TPU3 cores« uden pris og uden varighed; derefter Synced, juni 2019, som bemærkede, at hardwaren kostede $256 i timen på Google Cloud, og eksplicit sagde, at »OpenAI didn't specify the training duration«. $43.008 er $256 i timen gange en antaget 168 timer, som ingen nogensinde har angivet kilde til.
Så den ærlige overskrift er: en model, der matcher GPT-2’s publicerede benchmark-score, kan i dag trænes for langt under $100 på lejet hardware, mod en pris i 2019, som aldrig blev publiceret, og hvis berømte estimat hviler på et ukildet gæt om varigheden. Kollapset er virkeligt, og den moderne halvdel kan reproduceres af enhver med et kreditkort; forholdet er aritmetik på et tal, der ikke findes. Det er tilstanden for publicerede træningsomkostninger generelt. GPT-3-paper’et indeholder intet dollarbeløb overhovedet, kun FLOPs i Tabel D.1;7 Llama 3-paper’et indeholder heller ikke noget.5 Enhver træningspris, du har læst, er et estimat fra en FLOP-optælling, en hardwareantagelse og en prisantagelse — altid værd at spørge hvis.
Hvad en basismodel ved, og hvornår den holdt op med at vide det
Link til afsnittet: Hvad en basismodel ved, og hvornår den holdt op med at vide detDet, der kommer ud, har set et fast korpus samlet på et fast tidspunkt, og to egenskaber følger.
Den første er knowledge cutoff. Efter indsamlingsdatoen ved modellen ingenting — ikke »er usikker«, ingenting — og den vil confabulate flydende i stedet for at sige det, fordi det aldrig var en adfærd, den blev trænet på. Llama 3.1’s model card angiver december 2023;33 hver model har én, og det er en egenskab ved træningsdataene, ikke deployment. At omgå det er et retrieval-problem, hvilket er Kapitel 19.
Den anden er, at en basismodel fuldender snarere end svarer. Giv den »Hvad er Frankrigs hovedstad?«, og en sandsynlig fortsættelse er et andet spørgsmål, fordi den streng i korpusset oftest optræder i en liste med øvelser.
Hvor det går hen nu
Link til afsnittet: Hvor det går hen nuEn tekstfuldender er ikke en assistant. Den følger ikke instruktioner, fordi intet i korpusset fortalte den, at en anmodning skulle adlydes i stedet for fortsættes. Den har ingen forestilling om en samtale med to deltagere. Den vil gladeligt producere den mest sandsynlige fortsættelse af en skadelig prompt, fordi sandsynlig var det eneste, den nogensinde blev optimeret for.
At gøre den til noget, der svarer, kræver et andet trin, som koster en brøkdel af en procent af det første, og som næsten udelukkende består i at vise den eksempler på den adfærd, du vil have, og derefter sammenligne par af dens egne outputs. Det trin er dér, instruction following, chat templates, refusals og — det overrasker folk — evnen til at call a tool alle kommer fra. Kapitel 11 er det trin: supervised fine-tuning, RLHF, DPO og GRPO, og spørgsmålet om, hvad »aligned« betyder, og hvem der bestemmer.
Kilder og metode
Link til afsnittet: Kilder og metodeOgså værd at læse ved siden af dette kapitel: Karpathys build-nanogpt og den tilhørende video, som gennemgår en fuld GPT-2-reproduktion fra ende til anden i et tempo, dette kapitel ikke kan; og Stanford CS324, Large Language Models, hvis lektioner om data og miljøpåvirkning går dybere end afsnittet ovenfor i materiale, dette kursus behandler én gang og uddelegerer.
Referencer
Link til afsnittet: Referencer-
Kaplan, J., McCandlish, S., Henighan, T., Brown, T. B., Chess, B., Child, R., Gray, S., Radford, A., Wu, J. and Amodei, D. Scaling Laws for Neural Language Models. arXiv:2001.08361 (2020). De tre potenslove er Eqs. (1.1)–(1.3) i §1.2, og de fulde konstanter er i Appendix A, Tabel 5; -udledningen er §2.1; compute-allocation-eksponenterne er Tabel 6. Bemærk, at der er to compute-love, ved fast batch size og ved optimal batch size; paper’et siger, at sidstnævnte »should be used to make predictions«. ↩ ↩2
-
Hoffmann, J., Borgeaud, S., Mensch, A., Buchatskaya, E., Cai, T., Rutherford, E. et al. Training Compute-Optimal Large Language Models. arXiv:2203.15556 (2022). Eksponenter i Tabel 2, projicerede budgetter i Tabel 3, Gopher-sammenligningen i §4, parameter-counting-konventionen i Appendix F. Prosateksten under Tabel 3 er uenig med selve Tabel 3 for rækkerne 175 B og 280 B; tabellen er versionen, der bør citeres. ↩ ↩2 ↩3 ↩4
-
Micikevicius, P., Narang, S., Alben, J., Diamos, G., Elsen, E., Garcia, D. et al. Mixed Precision Training. arXiv:1710.03740 (2017), ICLR 2018. FP32 master weights i §3.1, loss scaling i §3.2. ↩ ↩2
-
Rajbhandari, S., Rajbhandari, S., Ruwase, O. and He, Y. ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. arXiv:1910.02054 (2019), SC20. -regnskabet er §3.1; residual-state-tallene for activations er §3.2. ↩
-
Grattafiori, A. et al. (Llama Team, AI @ Meta). The Llama 3 Herd of Models. arXiv:2407.21783 (2024). Compute-budget og token count i §1, den refitted scaling law i §3.2.1, parallelism-konfigurationen og MFU i Tabel 4, contamination-analysen i §5.1.4, over-training-udsagnet i §9.1. Paper’et indeholder ingen dollarbeløb og ingen emissionstabel. ↩ ↩2 ↩3 ↩4 ↩5 ↩6
-
Stanford CS336, Language Modeling from Scratch. Lektion 2 dækker resource accounting, lektion 5–8 GPU’er, kernels og parallelism, lektion 9 og 11 scaling, lektion 13–14 data. Det er kurset, dette kapitel uddelegerer sin engineering til, og det er offentligt. ↩
-
Brown, T. B. et al. Language Models are Few-Shot Learners. arXiv:2005.14165 (2020). Compute i Appendix D, Tabel D.1 — som har en kolonne med den bogstavelige overskrift »flops per param per token«, hvis værdi for hver GPT-3-række er 6. Contamination-analyse i §4. ↩ ↩2 ↩3
-
Besiroglu, T., Erdil, E., Barnett, M. and You, J. Chinchilla Scaling: A replication attempt. arXiv:2404.10102 (2024). Rekonstruerer Chinchillas data ved at digitalisere Figur 4, refitter og rapporterer de korrigerede eksponenter og langt bredere intervaller. ↩
-
Muennighoff, N., Rush, A. M., Barak, B., Le Scao, T., Piktus, A., Tazi, N., Pyysalo, S., Wolf, T. and Raffel, C. Scaling Data-Constrained Language Models. arXiv:2305.16264 (2023), NeurIPS 2023. Resultatet med fire epochs er §6; halveringstiden ved seksten epochs er den fitted . ↩
-
Touvron, H., Lavril, T., Izacard, G., Martinet, X., Lachaux, M.-A., Lacroix, T. et al. LLaMA: Open and Efficient Foundation Language Models. arXiv:2302.13971 (2023). §1 fremsætter inference-cost-argumentet mod Chinchilla-optimal træning. ↩
-
Sardana, N., Portes, J., Doubov, S. and Frankle, J. Beyond Chinchilla-Optimal: Accounting for Inference in Language Model Scaling Laws. arXiv:2401.00448 (2023), ICML 2024. Deres §5 indeholder også modvægten: modeller trænet ved ekstreme token-forhold bliver ved med at forbedres, men »more slowly than scaling laws predict«. ↩
-
Wei, J., Tay, Y., Bommasani, R., Raffel, C., Zoph, B., Borgeaud, S. et al. Emergent Abilities of Large Language Models. arXiv:2206.07682 (2022), TMLR. Definition i §2, eksempler og compute-tærskler i §3–4 og Tabel 1. ↩
-
Schaeffer, R., Miranda, B. and Koyejo, S. Are Emergent Abilities of Large Language Models a Mirage? arXiv:2304.15004 (2023), NeurIPS 2023 outstanding paper. Metrikargumentet er §2, BIG-Bench-meta-analysen §4, det konstruerede vision-eksempel §5. ↩
-
Common Crawl, August 2026 Crawl Archive Now Available (CC-MAIN-2026-34), publiceret 24. august 2026, tilgået 2026-09-06. Dets egen forside hævder »over 300 billion pages spanning 15 years«, »totalling more than 10 petabytes« — et tal for hele arkivet, ikke for det månedlige crawl, der prises her. ↩
-
Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M., Zhou, Y., Li, W. and Liu, P. J. Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683 (2019), JMLR 21(140). C4-filtrene er §2.2. Paper’et angiver størrelser i bytes, ikke tokens; tallet på 156 milliarder tokens, der ofte tilskrives det, er fra Dodge et al. nedenfor. ↩
-
Dodge, J., Sap, M., Marasović, A., Agnew, W., Ilharco, G., Groeneveld, D., Mitchell, M. and Gardner, M. Documenting Large Webtext Corpora: A Case Study on the Colossal Clean Crawled Corpus. arXiv:2104.08758 (2021), EMNLP 2021. Fjernelsesrater for dialekter er §5.3; benchmark contamination i C4 er §4.2. ↩
-
Lee, K., Ippolito, D., Nystrom, A., Zhang, C., Eck, D., Callison-Burch, C. and Carlini, N. Deduplicating Training Data Makes Language Models Better. arXiv:2107.06499 (2021), ACL 2022. De 61.036 gentagelser er fodnote 1; memorisation-tallene er §6.2, Tabel 4, og er procenter af genererede tokens under et exact-match-kriterium på 50 tokens. ↩
-
Penedo, G., Kydlíček, H., Ben Allal, L., Lozhkov, A., Mitchell, M., Raffel, C., Von Werra, L. and Wolf, T. The FineWeb Datasets: Decanting the Web for the Finest Text Data at Scale. arXiv:2406.17557 (2024), NeurIPS 2024 Datasets and Benchmarks. Deduplication-resultatet er §3.4. Det frigivne dataset er siden vokset forbi paper’ets 15 billioner tokens. ↩
-
Gao, L., Biderman, S., Black, S. et al. The Pile: An 800GB Dataset of Diverse Text for Language Modeling. arXiv:2101.00027 (2020). Books3 er §2.3 og Tabel 1; samtykketabellen er Tabel 5. Korpusset er 825,18 GiB, så selv titlen runder ned. ↩
-
Bartz v. Anthropic, No. 4:24-cv-05417 (N.D. Cal.). Fair-use-kendelse 23. juni 2025 (Dkt. 231); class certification 17. juli 2025; final approval and judgment 20. juli 2026 (Dkt. 680). Forliget frigiver kun tidligere inputs, ikke outputs og ikke fremtidig adfærd. ↩
-
Kadrey v. Meta, No. 3:23-cv-03417-VC (N.D. Cal.), summary judgment 25. juni 2025 (Dkt. 598). Bemærk, at distributionskravet om torrenting ikke blev afgjort og stadig er live. ↩
-
Thomson Reuters v. ROSS Intelligence, No. 1:20-cv-00613-SB (D. Del.), revideret udtalelse 11. februar 2025 (Dkt. 770), Bibas J. På interlocutory appeal til Third Circuit (No. 25-2153), argumenteret 11. juni 2026, uafgjort i skrivende stund. ↩
-
Perrigo, B. Exclusive: OpenAI Used Kenyan Workers on Less Than $2 Per Hour to Make ChatGPT Less Toxic. TIME, 18. januar 2023. De $2 er et loft for senior reviewers, der nåede hvert mål; junior labellers, flertallet, tog $1,32 med hjem. Samas rebuttal, citeret i samme artikel, angiver $1,46–$3,74 og en lavere kvote. ↩
-
Luccioni, A. S., Viguier, S. and Ligozat, A.-L. Estimating the Carbon Footprint of BLOOM, a 176B Parameter Language Model. arXiv:2211.02001 (2022), JMLR 24(253). Tabel 1 og 3. ↩
-
Patterson, D., Gonzalez, J., Le, Q., Liang, C., Munguia, L.-M., Rothchild, D., So, D., Texier, M. and Dean, J. Carbon Emissions and Large Neural Network Training. arXiv:2104.10350 (2021). GPT-3’s tal er Tabel 4; korrektionen af NAS-estimatet er §4.1. ↩
-
Strubell, E., Ganesh, A. and McCallum, A. Energy and Policy Considerations for Deep Learning in NLP. arXiv:1906.02243 (2019), ACL 2019. Værd at læse præcist på grund af det, der skete med det mest citerede tal: paper’et er omhyggeligt, angiver sin ekstrapolation og tog stadig fejl med to størrelsesordener på den ene linje, alle gentog. ↩
-
Smith, S. J., Hubbard, A., Newkirk, A., Ganeshalingam, M., Holecek, B., Sartor, D., Mills, M. and Shehabi, A. United States Data Center Energy Usage Report: 2025 Update. LBNL-2001758 (18. juni 2026). Dette reviderer den ofte citerede 2024-rapport nedad for den historiske serie; hvis du citerer tallet 176 TWh for 2023, citerer du den erstattede udgave. ↩
-
Bender, E. M., Gebru, T., McMillan-Major, A. and Shmitchell, S. On the Dangers of Stochastic Parrots: Can Language Models Be Too Big? FAccT '21, pp. 610–623. DOI 10.1145/3442188.3445922. »Documentation debt« er §4.4. Bemærk, at paper’ets egne kulstoftal citeres fra Strubell et al. og arver korrektionen ovenfor — hvilket er en illustration af dets argument snarere end en tilbagevisning af det. ↩
-
NVIDIA. NVIDIA H100 Tensor Core GPU-produktside,
nvidia.com/en-us/data-center/h100/(tilgået 2026-09-06). Hver tensor-core-række på siden undtagen FP64 har fodnoten »with sparsity«; det dense BF16-tal, der bruges her, er halvdelen af de publicerede 1.979 TFLOPS. ↩ -
Lambda. GPU Cloud pricing,
lambda.ai/pricing(tilgået 2026-09-06). On-demand, pr. GPU pr. time, før skat. Priserne i dette afsnit bliver forældede hurtigere end noget andet i dette kursus; aritmetikken omkring dem gør ikke. ↩ -
Karpathy, A.
karpathy/llm.c, discussion #481, Reproducing GPT-2 (124M) in llm.c in 90 minutes for $20 (28. maj 2024), og discussion #677, Let's reproduce GPT-2 (1.6B): one 8XH100 node, 24 hours, $672, in llm.c (11. juli 2024). ↩ -
Karpathy, A.
karpathy/nanochat, README og »time to GPT-2«-leaderboard (tilgået 2026-09-06). Tallet $48 og CORE-score-definitionen af »GPT-2 capability« står begge i README; repository’ets egenspeedrun.shsiger »approximately 1.5 hours«, så behandl to-timers-tallet som afrundet. ↩ -
Meta. Llama 3.1 model card,
models/llama3_1/MODEL_CARD.mdimeta-llama/llama-models(tilgået 2026-09-06). Kilde til 30,84 M H100-timer for 405 B-modellen, de 39,3 M i alt, den location-based figur på 11.390 tCO2eq og data cutoff i december 2023. ↩