Uno strumento di formazione su larga scala per modelli linguistici “llm.c” verrà rilasciato utilizzando il C puro senza PyTorch o Python – GIGAZINE



I modelli linguistici su larga scala (LLM), che sono probabilmente il corpo principale dell'intelligenza artificiale, sono per lo più addestrati utilizzando PyTorch o Python, ma esiste uno strumento che esegue tale addestramento solo in puro C.llm.cSi è presentato. Sebbene non sia ancora ottimizzato e perda velocità rispetto ai metodi tradizionali, è possibile eseguire l'addestramento GPT-2 con circa 1.000 righe di codice pulito.

GitHub – karpathy/llm.c: formazione LLM in C/CUDA semplice e grezzo
https://github.com/karpathy/llm.c

L'autore Andrei Karpathy è membro del gruppo fondatore di OpenAI ed è stato in precedenza Direttore dell'intelligenza artificiale presso Tesla.

Con llm.c puoi utilizzare PyTorch con una capacità di 245 MB o una capacità di 107 MB.cPythonÈ possibile addestrare modelli linguistici di grandi dimensioni senza utilizzare Quando Karpathy ha effettivamente eseguito il codice per addestrare GPT-2, probabilmente il predecessore degli odierni modelli linguistici su larga scala, su un'unità di elaborazione centrale (CPU), è stato in grado di eseguirlo utilizzando una piccola quantità di codice di circa 1000 righe con dipendenze minime.

Hai mai desiderato addestrare LLM in C puro senza 245 MB di PyTorch e 107 MB di cPython? NO? Bene, ora puoi! Con LMC:https://t.co/w2wkY0Ho5m

Per iniziare, implementa la formazione GPT-2 su cpu/fp32 in sole 1000 righe circa di codice pulito. Si monta e funziona istantaneamente, esattamente…

– Andrei Karpathy (@karpathy)


Il codice vero e proprio èPubblicato su GitHubè stato. Inizialmente, la quantità di memoria richiesta viene acquisita in una sola volta e l'utilizzo della memoria non cambia durante l'allenamento. Questo codice non utilizza librerie Python, quindi tutti i livelli successivi e successivi separati vengono implementati manualmente.

Puoi dare un'occhiata all'implementazione della formazione grezza qui:https://t.co/ZiiCwYurMP

Vedrai che allocheremo tutta la memoria richiesta contemporaneamente in un unico grande blocco di memoria 1D. D'ora in poi, durante l'allenamento, nessun ricordo viene creato o distrutto, quindi rimaniamo in… pic.twitter.com/S92d5dPcJZ

– Andrei Karpathy (@karpathy)


Quando si collegavano i livelli, era necessario scrivere codice assicurandosi che tutti i puntatori e gli offset dei tensori fossero posizionati correttamente, un compito molto noioso e masochistico.

Una volta che hai tutti gli strati, fissali semplicemente insieme. Non mentirò, scrivere questo è stato estremamente noioso e masochista perché devi assicurarti che tutti i puntatori e gli offset del tensore siano disposti correttamente.

A sinistra: allochiamo un array di memoria e poi… pic.twitter.com/KLPz7udGni

– Andrei Karpathy (@karpathy)


Al momento della stesura dell'articolo, è stato rilasciato solo il codice di training della CPU, ma il signor Karpathy sta anche creando codice di training utilizzando CUDA. Il signor Karpathy ha espresso la speranza che passando a CUDA e migliorando l'efficienza, sarà possibile allenarsi allo stesso livello di velocità di PyTorch senza pesanti dipendenze.

Una volta disattivato il comando avanti/indietro, il resto (caricatore dati, aggiornamento Adam, ecc.) è per lo più banale.

Il vero divertimento inizia ora: sto eseguendo il porting su CUDA livello per livello in modo che possa essere reso efficiente e probabilmente rientra in una frazione ragionevole di PyTorch, ma…

– Andrei Karpathy (@karpathy)


Ris. futurafp32dafp16Riducilo aLama 2MaestraleGemmaSi prevede di supportare strutture moderne come: Karpathy dice anche che ha intenzione di pubblicare un film che costruirà questo codice da zero in dettaglio quando diventerà più stabile.

READ  La NASA sui campioni di asteroidi: tracce di acqua e carbonio trovate nell'asteroide Bennu

Copia il titolo e l'URL di questo articolo

·Articoli Correlati
GitHub annuncia la classifica dei “Linguaggi di programmazione più utilizzati nel 2022” – GIGAZINE

Il CEO di NVIDIA suscita polemiche dicendo: “Non c'è più bisogno di imparare a programmare perché l'intelligenza artificiale scrive il codice” – GIGAZINE

Verrà sviluppato un nuovo linguaggio di programmazione “Mojo” che può essere più veloce del tradizionale Python – GIGAZINE

Come eseguire facilmente llamafile, un sistema che consente di distribuire e implementare facilmente l'intelligenza artificiale utilizzando modelli linguistici su larga scala con un solo file eseguibile da 4 GB, su Windows e Linux – GIGAZINE

Riepilogo della procedura di installazione per “Alpaca.cpp” che consente di installare Chat AI “Alpaca” localmente e parlare con AI offline – GIGAZINE

We will be happy to hear your thoughts

Leave a reply