AI Builder
AI Builder gör om tre val – modellstorlek, hur hårt varje vikt packas och hur lång konversation du vill ha – till en minnesuppskattning och rätt hårdvarunivå. Minnet för vikterna räknas ut som antalet parametrar gånger antalet byte per vikt, gånger ungefär 1,2, plus en kontextcache som växer i takt med samtalet.
Nybörjare
Använd de tre reglagen
Verktyget utgår från tre val: modellstorlek i antal parametrar, kvantisering och kontextlängd. En parameter är ett tal som lagras i modellen. Ett namn som 8B betyder ungefär 8 miljarder sådana tal. Kvantisering handlar om hur många bitar du sparar för varje tal. Färre bitar ger en mindre fil, oftast med en liten kvalitetsförlust. FP16 sparar ett 16-bitars flyttalsvärde, alltså 2 byte per parameter. Q8 sparar ungefär 1 byte. Q4 sparar ungefär en halv byte. Kontextlängd är hur många tokens som hålls aktiva. En token är en bit text, ofta ett kort ord eller en del av ett ord.
Ställ in 8 miljarder parametrar, Q4 och 8 000 tokens. Läs av minnesraden och sedan hårdvarunivån: en bärbar dator med cirka 16 GB, en hemdator med ett grafikkort på 24–32 GB, DGX Spark med 128 GB delat minne eller DGX Station. Delat minne betyder att processorn och grafikchippet delar på samma minnespott. NVIDIA anger 128 GB för DGX Spark och stöd för modeller upp till 200 miljarder parametrar på en enda enhet.
Multiplicera parametrarna med byte per vikt, sedan med ungefär 1,2, och lägg till kontextcachen. Faktorn 1,2 ger extra svängrum medan programmet körs. Samma 8B-modell i FP16 tar upp cirka 16 GB bara i vikter innan det extra utrymmet räknas in, vilket redan fyller kapaciteten för en bärbar dator.
Delade bygglistor öppnar senare.
Testa en 8B-modell på en bärbar dator med 16 GB
Jag har en bärbar dator med 16 GB minne. Utifrån regeln att minnet är ungefär antalet parametrar gånger byte per vikt gånger 1,2, plus extra minne för konversationen: berätta om en modell med 8 miljarder parametrar får plats i Q4 (0,5 byte per vikt) och i FP16 (2 byte). Lämna 4 GB till operativsystemet och räkna med en kort chatt på några tusen tokens. Berätta vilken inställning som får plats, och vad jag borde testa först i en lokal app som Ollama eller llama.cpp.
Medel
Så räknar du ut minnet
Antalet parametrar gånger byte per vikt ger storleken på de lagrade talen. EleutherAIs inferensregel, som Hugging Face hänvisar till, multiplicerar den storleken med ungefär 1,2 för overhead medan modellen körs. Hugging Faces kalkylator mäter bara minnet som krävs för att ladda modellen; att köra den kräver mer.
Lägg därefter till kontextcachen, som också kallas KV-cache: nycklar och värden som sparas för tokens som redan har lästs in, så att modellen slipper räkna om dem. Cachen växer med kontextlängden, antalet lager och key-value-huvuden. Två modeller med samma antal parametrar kan kräva olika mycket cacheminne. Det som får plats vid 2 000 tokens kan spricka vid 32 000.
De här siffrorna visar vikternas storlek i decimala gigabyte, före cachen. 8B i Q4 är 4 GB, ungefär 4,8 GB efter 1,2-faktorn, vilket ryms i en bärbar dator med 16 GB om cachen hålls rimlig. 8B i FP16 är 16 GB, ungefär 19,2 GB efter 1,2-faktorn, vilket är över gränsen för en bärbar dator. 32B i Q4 landar på cirka 19,2 GB efter 1,2-faktorn, så ett 24 GB-kort klarar vikterna tills en lång kontext gör att det rinner över. 70B i Q4 tar cirka 42 GB efter 1,2-faktorn, vilket passerar ett 32 GB-kort men ryms i Sparks 128 GB. 70B i FP16 kräver cirka 168 GB efter 1,2-faktorn, vilket spräcker en enskild Spark men ryms i Stations 252 GB HBM3e.
Filer för llama.cpp som Q4_K_M ligger nära 4 bitar per vikt och strax över antalet parametrar gånger 0,5, på grund av extra tensorer. En mixture-of-experts-modell kör bara vissa vikter per token, men hela filen måste ändå laddas in i minnet.
Placera en 70B-modell i rätt hårdvarunivå
Uppskatta minnesbehovet vid inferens för en modell med 70 miljarder parametrar i Q4 (0,5 byte per parameter) och i FP16 (2 byte). Beräkna vikterna som parametrar gånger byte, multiplicera sedan med 1,2 och ange resultatet som minne före KV-cache. Jämför båda summorna med 32 GB, 128 GB och 252 GB. Lista sedan de fält från modellkonfigurationen som du fortfarande behöver (layers, key-value heads, head size, byte per cache-element) för att uppskatta KV-cachen vid 8 000 tokens. Hitta inte på en cache-storlek utan de fälten.
Expert
Station: minne, hastighet, ström och licens
NVIDIA specificerar DGX Station med en Blackwell Ultra-GPU med 252 GB HBM3e i 7,1 TB/s, en Grace-processor med 72 kärnor och 496 GB LPDDR5X i 396 GB/s, samt NVLink-C2C i 900 GB/s. Den sammanhängande minnespotten är 748 GB. Den snabba delen utgörs av de 252 GB. En 405B-modell i Q4 kräver cirka 243 GB efter 1,2-faktorn, nära taket för HBM-minnet. En modell med 1 biljon parametrar i Q4 kräver cirka 600 GB efter 1,2-faktorn. NVIDIA anger att Station klarar modeller upp till 1 biljon parametrar. Den uppskattningen ryms i potten på 748 GB och sträcker sig ut i det långsammare LPDDR5X-minnet, så hastigheten avgörs av vilka tensorer som ligger kvar i HBM.
När varje ny token måste läsa om vikterna kan antalet tokens per sekund inte överstiga bandbredden delat med antalet omlästa byte. I Sparks guide anges 273 GB/s, vilket ger en fil på 4 GB ett tak runt 70 tokens per sekund.
Produktsidan för Station anger 1 600 W och en 20 A-krets, en PCIe Gen5 x16-kortplats samt två platser som fysiskt är x16 och elektriskt x8. Spark körs på ett nätaggregat på 240 W. llama.cpp körs på NVIDIA med CUDA, på AMD med HIP och på Apple silicon med Metal. vLLM driftar modeller som redan får plats, med PagedAttention för cachen.
Finjustering kräver mer. EleutherAI räknar in gradienter, Adam-tillstånd och aktiveringar. Deras rad för AdamW ger 12 byte per parameter utöver själva träningsvikterna. Läs modellkortet på Hugging Face före kommersiell användning, och spara aldrig andras personuppgifter på en delad maskin utan laglig grund enligt GDPR.
Få plats med 405B i Stations minne och beräkna ett prestandatak
Minnet i DGX Station är 252 GB HBM3e i 7,1 TB/s plus 496 GB LPDDR5X i 396 GB/s, totalt 748 GB sammanhängande minne. Avgör om vikterna för en modell med 405 miljarder parametrar i Q4 (0,5 byte per vikt, sedan gånger 1,2) får plats enbart i HBM-delen på 252 GB. Beräkna sedan ett tak för avkodningshastigheten i tokens per sekund om varje token läser om de råa Q4-vikterna (antalet parametrar gånger 0,5) från HBM i 7,1 TB/s. Förklara i ett kort stycke varför det taket sjunker om vikterna spiller över i LPDDR5X i 396 GB/s. Håll finjustering separat: lägg till EleutherAIs 12 byte per parameter för AdamW och jämför det med den totala summan för inferens.
Siffror att ha till hands bredvid byggaren
| Del | Siffra som används på den här sidan |
|---|---|
| FP16 / Q8 / Q4 | 2 byte, 1 byte, 0,5 byte per vikt |
| Köra en modell | viktens byte × ungefär 1,2, lägg sedan till kontextcachen |
| Bärbar dator | cirka 16 GB, med marginal kvar för operativsystemet |
| Hemdator | ett grafikkort med 24–32 GB |
| DGX Spark | 128 GB delat LPDDR5x, 273 GB/s; NVIDIA anger modeller upp till 200 miljarder parametrar på en enhet, och upp till 405 miljarder på två sammankopplade enheter |
| DGX Station | 748 GB sammanhängande minne: 252 GB HBM3e i 7,1 TB/s plus 496 GB LPDDR5X i 396 GB/s; NVIDIA anger modeller upp till 1 biljon parametrar; 1 600 W och en 20 A-krets |
| Finjustering | vikter plus gradienter, optimeringstillstånd och aktiveringar; AdamW innebär 12 byte per parameter enligt EleutherAIs uppdelning |
Räkna ett Q4-resultat som hamnar inom cirka 10 procent från en nivågräns som ett kanske. Riktiga GGUF-filer, KV-cachen och operativsystemet tillkommer alla utöver 1,2-regeln.
Vad det här innebär innan du betalar
Se nivåerna som en tydlig kostnadsgräns. Bärbar dator eller Hemdator betyder att en modell i den klassen fungerar på en maskin du kanske redan äger, så den löpande kostnaden blir el och din egen tid. Spark eller Station innebär hårdvara som ligger bortom vanliga grafikkort för hemmabruk. Det andra sättet att köra modellen är via ett moln-API, där du betalar per token enligt leverantörens egen prislista.
NVIDIAs sida för Station hänvisar köpare till OEM-partners. Den här sidan återger de officiella hårdvarusiffrorna och väntar med prisuppgift tills det finns bekräftade listpriser. Om stationen köps kan bygget kontrolleras del för del mot specifikationen ovan när de gemensamma bygglistorna öppnar. Tills dess är det NVIDIAs siffror som gäller som referens.
En gemensam DGX Station skulle köra de modeller vars minnesbehov överstiger ett vanligt hemgrafikkort, på den officiella sammanhängande potten på 748 GB, som en delad maskin för alla. Om den gemensamma stationen
Källor
- NVIDIA DGX StationOfficiell specifikation: 252 GB HBM3e, 496 GB LPDDR5X, 748 GB sammanhängande minne, upp till 1 biljon parametrar, 1 600 W, 20 A-krets och layout för PCIe-platser.
- Hårdvaruöversikt för DGX SparkOfficiell guide: 128 GB delat LPDDR5x, 273 GB/s, 240 W strömförsörjning, modeller upp till 200 miljarder parametrar, eller 405 miljarder på två enheter.
- Hugging Faces minneskalkylator för modellerMinne enbart för vikter per datatyp. Anger att verktyget mäter inläsning och att inferens kan lägga till ungefär 20 procent, med hänvisning till EleutherAI.
- EleutherAI Transformer Math 101Byte per vikt för int8, fp16 och fp32, tumregeln på 1,2 för inferens och raden för AdamW-optimeraren på 12 byte per parameter. Sammanfattas här; inlägget är deras.
- llama.cppMIT-licensierad lokal inferens, inklusive 4-bitars och 8-bitars kvantisering, samt gränssnitt för CUDA (NVIDIA), HIP (AMD) och Metal (Apple).
- Dokumentation för vLLMServerbibliotek för modeller som redan får plats i minnet, inklusive PagedAttention för key-value-cachen och ett OpenAI-kompatibelt API.
- Hugging Face modellhubbModellkort med antal parametrar, filstorlekar och licensen som du behöver läsa före kommersiell användning.
- Ollama modellbibliotekFärdiga lokala modellpaket, praktiska när byggaren visar att en Q4-modell får plats på maskinen du har.