Karpathy è il GOAT hacker di AI!
Entusiasta di rilasciare un nuovo repo: nanochat! (è tra i più slegati che abbia scritto). A differenza del mio precedente repo simile nanoGPT che copriva solo il pre-addestramento, nanochat è una pipeline di addestramento/inferenza full-stack minimale, da zero, di un semplice clone di ChatGPT in un'unica base di codice con dipendenze minime. Accendi una macchina GPU cloud, esegui un singolo script e in appena 4 ore puoi parlare con il tuo LLM in un'interfaccia web simile a ChatGPT. Pesa ~8.000 righe di codice, a mio avviso piuttosto pulito, per: - Addestrare il tokenizer utilizzando una nuova implementazione in Rust - Pre-addestrare un LLM Transformer su FineWeb, valutare il punteggio CORE su una serie di metriche - Addestrare a metà su conversazioni utente-assistente da SmolTalk, domande a scelta multipla, utilizzo di strumenti. - SFT, valutare il modello di chat su conoscenze generali a scelta multipla (ARC-E/C, MMLU), matematica (GSM8K), codice (HumanEval) - RL il modello opzionalmente su GSM8K con "GRPO" - Inferenza efficiente del modello in un motore con cache KV, semplice prefill/decode, utilizzo di strumenti (interprete Python in un sandbox leggero), parlargli tramite CLI o WebUI simile a ChatGPT. - Scrivere un singolo rapporto markdown, riassumendo e gamificando il tutto. Anche per un costo di circa ~$100 (~4 ore su un nodo 8XH100), puoi addestrare un piccolo clone di ChatGPT con cui puoi in qualche modo parlare, e che può scrivere storie/poesie, rispondere a domande semplici. Circa ~12 ore superano il punteggio CORE di GPT-2. Man mano che aumenti verso ~$1000 (~41,6 ore di addestramento), diventa rapidamente molto più coerente e può risolvere semplici problemi di matematica/codice e sostenere test a scelta multipla. Ad esempio, un modello di profondità 30 addestrato per 24 ore (questo è circa equivalente ai FLOPs di GPT-3 Small 125M e 1/1000 di GPT-3) ottiene punteggi nei 40 su MMLU e 70 su ARC-Easy, 20 su GSM8K, ecc. Il mio obiettivo è ottenere l'intero stack "strong baseline" in un unico repo coeso, minimale, leggibile, hackabile e massimamente forkabile. nanochat sarà il progetto finale di LLM101n (che è ancora in fase di sviluppo). Penso che abbia anche il potenziale per crescere in un sistema di ricerca o un benchmark, simile a nanoGPT prima di esso. Non è affatto finito, sintonizzato o ottimizzato (in realtà penso che ci sia probabilmente un bel po' di frutta a basso costo), ma penso che sia a un punto in cui lo scheletro complessivo sia abbastanza ok da poter essere caricato su GitHub dove tutte le sue parti possono essere migliorate. Il link al repo e un dettagliato walkthrough della speedrun di nanochat sono nella risposta.
Mostra originale
26.626
24
Il contenuto di questa pagina è fornito da terze parti. Salvo diversa indicazione, OKX non è l'autore degli articoli citati e non rivendica alcun copyright sui materiali. Il contenuto è fornito solo a scopo informativo e non rappresenta le opinioni di OKX. Non intende essere un'approvazione di alcun tipo e non deve essere considerato un consiglio di investimento o una sollecitazione all'acquisto o alla vendita di asset digitali. Nella misura in cui l'IA generativa viene utilizzata per fornire riepiloghi o altre informazioni, tale contenuto generato dall'IA potrebbe essere impreciso o incoerente. Leggi l'articolo collegato per ulteriori dettagli e informazioni. OKX non è responsabile per i contenuti ospitati su siti di terze parti. Gli holding di asset digitali, tra cui stablecoin e NFT, comportano un elevato grado di rischio e possono fluttuare notevolmente. Dovresti valutare attentamente se effettuare il trading o detenere asset digitali è adatto a te alla luce della tua situazione finanziaria.