Andrej Karpathy har nettopp droppet en av de mest "uhengslede" repoene han noen gang har skrevet - NanoChat. Det er et fra bunnen av, minimalt, men komplett ChatGPT-lignende system som lærer deg hvordan du trener og kjører din egen LLM for under $100. Med bare ~8 k linjer med ren kode dekker den alt, tokenizer (Rust-basert), forhåndstrening på FineWeb, midttrening på SmolTalk, SFT på MMLU / GSM8K / HumanEval, valgfri RL via GRPO, effektiv slutning med KV-cache + prefyll/decode, og en ChatGPT-stil WebUI. (1/n)
Gleder meg til å gi ut nytt repo: nanochat! (det er blant de mest uhengslede jeg har skrevet). I motsetning til min tidligere lignende repo nanoGPT som bare dekket forhåndstrening, er nanochat en minimal, fra bunnen av, fullstack trenings-/inferenspipeline av en enkel ChatGPT-klone i en enkelt, avhengighetsminimal kodebase. Du starter opp en sky-GPU-boks, kjører et enkelt skript og på så lite som 4 timer senere kan du snakke med din egen LLM i et ChatGPT-lignende nettgrensesnitt. Den veier ~8,000 linjer med imo ganske ren kode til: - Tren tokenizeren ved hjelp av en ny Rust-implementering - Pretrene en Transformer LLM på FineWeb, evaluere CORE-score på tvers av en rekke beregninger - Midttren på brukerassistentsamtaler fra SmolTalk, flervalgsspørsmål, verktøybruk. - SFT, evaluere chat-modellen på verdenskunnskap multiple choice (ARC-E/C, MMLU), matematikk (GSM8K), kode (HumanEval) - RL modellen valgfritt på GSM8K med "GRPO" - Effektiv slutning av modellen i en motor med KV-cache, enkel forhåndsutfylling/dekoding, verktøybruk (Python-tolk i en lett sandkasse), snakk med den over CLI eller ChatGPT-lignende WebUI. - Skriv et enkelt markdown-rapportkort, oppsummerer og spillifiserer det hele. Selv for så lite som ~$100 i kostnad (~4 timer på en 8XH100-node), kan du trene en liten ChatGPT-klone som du på en måte kan snakke med, og som kan skrive historier/dikt, svare på enkle spørsmål. Omtrent ~12 timer overgår GPT-2 CORE-beregningen. Etter hvert som du skalerer opp mot ~$1000 (~41.6 timer med opplæring), blir den raskt mye mer sammenhengende og kan løse enkle matematiske/kodeproblemer og ta flervalgstester. F.eks. en dybde 30-modell trent i 24 timer (dette er omtrent lik FLOP-er av GPT-3 Small 125M og 1/1000 av GPT-3) kommer inn i 40-tallet på MMLU og 70-tallet på ARC-Easy, 20-tallet på GSM8K, etc. Målet mitt er å få hele "sterk grunnlinje"-stabelen i ett sammenhengende, minimalt, lesbart, hackbart, maksimalt forgrenbart repo. nanochat vil være hjørnesteinsprosjektet til LLM101n (som fortsatt er under utvikling). Jeg tror det også har potensial til å vokse til en forskningssele, eller en målestokk, som ligner på nanoGPT før den. Den er på ingen måte ferdig, innstilt eller optimalisert (faktisk tror jeg det sannsynligvis er ganske mye lavthengende frukt), men jeg tror det er på et sted hvor det generelle skjelettet er ok nok til at det kan gå opp på GitHub hvor alle delene av det kan forbedres. Link til repo og en detaljert gjennomgang av nanochat speedrun er i svaret.
Du kan spinne opp en GPU, kjøre skriptet og ha din egen chatbot som chatter på ~4 timer. Karpathy sier at $100-modellen allerede kan skrive dikt og historier og overgå GPT-2 på CORE; $1000 bringer den nær GPT-3 Små 125M FLOPs med 40 + MMLU og 70 + ARC-Easy-poeng. Målet er en enhetlig, lesbar, hackbar repo som samler hele den "sterke baseline-pipelinen": en etterfølger til nanoGPT og ryggraden for hans kommende LLM101n-kurs.
Selv med et lite budsjett er resultatene overraskende. • $100 løp (8×H100, 4 timer): slår GPT-2 på CORE, kan skrive dikt og noveller. • $1000 run (≈24 timer, GPT-3 Small 125 M FLOPs, 1/1000 skala): – MMLU 40+ – ARC-Easy 70+ – GSM8K 20+ det er en ekte mini-pipeline av forskningskvalitet.
Da noen spurte om NanoChat kunne brukes til å trene en personlig LLM (på Notion-notater, helsedata osv.), helte Karpathy kaldt vann på ideen: «Dette er ikke en god repo for det ... Tenk på disse mikromodellene som veldig små barn; de mangler den rå intelligensen til sine større fettere.» Hvis du finjusterer dem på personlige data, kan du få "søt papegøye" som imiterer skrivestilen din, men det vil fortsatt være slop. 🪿
Hvorfor personalisering er vanskelig For å bygge en genuint personlig modell, må du: • Utarbeide grunndata av høy kvalitet • Generer tonnevis av syntetiske data (komplekse + mangfoldige) • Finjuster på en sterk åpen LLM (f.eks. • Eventuelt blande inn store pre-training-data for å beholde generell intelligens Det er fortsatt forskningsterritorium i dag, ikke et helgeprosjekt.
Større bilde Karpathy ser på NanoChat som den nye nanoGPT— et minimalt, men komplett rammeverk som kan vokse til en standard grunnlinje for LLM-forskning, samfunnssamarbeid og utdanning. Akkurat nå er den ikke fullt optimalisert, men arkitekturen er solid – klar for GitHub-bidragsytere til å presse den fremover, modul for modul.
Vis originalen
5,6k
17
Innholdet på denne siden er levert av tredjeparter. Med mindre annet er oppgitt, er ikke OKX forfatteren av de siterte artikkelen(e) og krever ingen opphavsrett til materialet. Innholdet er kun gitt for informasjonsformål og representerer ikke synspunktene til OKX. Det er ikke ment å være en anbefaling av noe slag og bør ikke betraktes som investeringsråd eller en oppfordring om å kjøpe eller selge digitale aktiva. I den grad generativ AI brukes til å gi sammendrag eller annen informasjon, kan slikt AI-generert innhold være unøyaktig eller inkonsekvent. Vennligst les den koblede artikkelen for mer detaljer og informasjon. OKX er ikke ansvarlig for innhold som er vert på tredjeparts nettsteder. Beholdning av digitale aktiva, inkludert stablecoins og NFT-er, innebærer en høy grad av risiko og kan svinge mye. Du bør nøye vurdere om handel eller innehav av digitale aktiva passer for deg i lys av din økonomiske tilstand.