Andrej Karpathy právě vydal jedno z nejvíce "pomatených" repozitářů, jaké kdy napsal – NanoChat. Je to od nuly, minimální, ale kompletní systém podobný ChatGPT, který vás naučí, jak trénovat a provozovat svůj vlastní LLM za méně než 100 $. S pouhými ~8 tisíci řádky čistého kódu pokrývá vše, tokenizer (založený na Rustu), předtrénink na FineWeb, mid-train na SmolTalk, SFT na MMLU / GSM8K / HumanEval, volitelné RL přes GRPO, efektivní inference s mezipamětí KV + předvyplnění/dekódování a WebUI ve stylu ChatGPT. (1/n)
S nadšením vydáváme nové repo: nanochat! (patří mezi nejpomatenější, které jsem napsal). Na rozdíl od mého dřívějšího podobného repo nanoGPT, které pokrývalo pouze předtrénování, je nanochat minimální, od nuly, full-stack trénovací/inferenční pipeline jednoduchého klonu ChatGPT v jediné kódové základně s minimální závislostí. Spustíte cloudový GPU box, spustíte jediný skript a za pouhé 4 hodiny později můžete mluvit se svým vlastním LLM ve webovém uživatelském rozhraní podobném ChatGPT. Váží ~8 000 řádků imo docela čistého kódu, aby: - Trénujte tokenizátor pomocí nové implementace Rust - Předtrénovat Transformer LLM na FineWebu, vyhodnotit CORE skóre v řadě metrik - Midtrain na konverzace s uživatelským asistentem ze SmolTalku, otázky s výběrem odpovědí, používání nástrojů. - SFT, vyhodnoťte model chatu na základě možnosti výběru z více možností (ARC-E/C, MMLU), matematiky (GSM8K), kódu (HumanEval) - RL model volitelně na GSM8K s "GRPO" - Efektivní odvozování modelu v Enginu s KV cache, jednoduché předvyplňování/dekódování, použití nástrojů (interpret Pythonu v odlehčeném pískovišti), mluvte s ním přes CLI nebo WebUI podobné ChatGPT. - Napište jednu markdown vysvědčení, které celou věc shrne a gamifikuje. I za cenu ~100 $ (~4 hodiny na uzlu 8XH100) můžete vytrénovat malý klon ChatGPT, se kterým můžete tak trochu mluvit a který dokáže psát příběhy/básně, odpovídat na jednoduché otázky. Přibližně ~12 hodin překonává metriku GPT-2 CORE. Jak se dále rozšiřujete směrem k ~ 1000 $ (~ 41,6 hodin školení), rychle se stává mnohem koherentnějším a dokáže řešit jednoduché matematické/kódové problémy a skládat testy s výběrem odpovědí. Např. model hloubky 30 trénovaný 24 hodin (to se přibližně rovná FLOPům GPT-3 Small 125M a 1/1000 GPT-3) se dostane do 40s na MMLU a 70s na ARC-Easy, 20s na GSM8K atd. Mým cílem je dostat celý "silný základní" stack do jednoho soudržného, minimálního, čitelného, hacknutelného a maximálně forkovatelného repozitáře. nanochat bude vrcholným projektem LLM101n (který je stále ve vývoji). Myslím, že má také potenciál vyrůst ve výzkumnou soustavu nebo benchmark, podobně jako předtím nanoGPT. V žádném případě to není dokončené, vyladěné nebo optimalizované (ve skutečnosti si myslím, že je tam pravděpodobně docela dost nízko visícího ovoce), ale myslím, že je to na místě, kde je celková kostra dostatečně v pořádku, aby mohla jít na GitHub, kde mohou být všechny její části vylepšeny. Odkaz na repo a podrobný návod na nanochat speedrun je v odpovědi.
Můžete spustit GPU, spustit skript a mít svého vlastního chatbota, který chatuje za ~4 hodiny. Karpathy říká, že model za 100 dolarů již dokáže psát básně a příběhy a překonat GPT-2 na CORE; 1000 $ se blíží GPT-3 malým 125M FLOPs se skóre 40 + MMLU a 70 + ARC-Easy. Cílem je jednotné, čitelné a hacknutelné repo, které spojuje celý "silný základní kanál": nástupce nanoGPT a páteř pro jeho nadcházející kurz LLM101n.
I s malým rozpočtem jsou výsledky překvapivé. • Běh 100 $ (8×H100, 4 hodiny): poráží GPT-2 na CORE, umí psát básně a povídky. • Běh 1000 $ (≈24 hodin, GPT-3 malé 125 M FLOPs, měřítko 1/1000): – MMLU 40 + – ARC-Easy 70 + – GSM8K 20 + Je to skutečný minikanál na úrovni výzkumu.
Když se někdo zeptal, zda by NanoChat mohl být použit k trénování osobního LLM (na poznámkách Notion, zdravotních datech atd.), Karpathy tuto myšlenku zchladil: "Tohle pro to není dobré repo ... Představte si tyto mikromodely jako velmi malé děti; postrádají syrovou inteligenci svých větších bratranců." Pokud je doladíte na osobních údajích, můžete získat "roztomilé papouškování", které napodobuje váš styl psaní, ale stále to bude fádba. 🪿
Proč je personalizace těžká Chcete-li vytvořit skutečně personalizovaný model, budete muset: • Příprava vysoce kvalitních podkladových dat • Generovat tuny syntetických dat (komplexní + různorodá) • Doladit na silném otevřeném LLM (např. Tinker) • Případně přimíchat velká předtréninková data pro zachování obecné inteligence To je i dnes teritorium na úrovni výzkumu, nikoli víkendový projekt.
Větší obrázek Karpathy vidí NanoChat jako nový nanoGPT— minimální, ale úplný rámec, který může vyrůst ve standardní základ pro výzkum LLM, komunitní spolupráci a vzdělávání. V současné době není plně optimalizovaná, ale architektura je solidní – připravená na to, aby ji přispěvatelé GitHubu posouvali vpřed, modul po modulu.
Zobrazit originál
4,66 tis.
15
Obsah na této stránce poskytují třetí strany. Není-li uvedeno jinak, společnost OKX není autorem těchto informací a nenárokuje si u těchto materiálů žádná autorská práva. Obsah je poskytován pouze pro informativní účely a nevyjadřuje názory společnosti OKX. Nejedná se o doporučení jakéhokoli druhu a nemělo by být považováno za investiční poradenství ani nabádání k nákupu nebo prodeji digitálních aktiv. Tam, kde se k poskytování souhrnů a dalších informací používá generativní AI, může být vygenerovaný obsah nepřesný nebo nekonzistentní. Další podrobnosti a informace naleznete v připojeném článku. Společnost OKX neodpovídá za obsah, jehož hostitelem jsou externí weby. Držená digitální aktiva, včetně stablecoinů a tokenů NFT, zahrnují vysokou míru rizika a mohou značně kolísat. Měli byste pečlivě zvážit, zde je pro vás obchodování s digitálními aktivy nebo jejich držení vhodné z hlediska vaší finanční situace.