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  30 Le migliori recensioni di Giubbotto Kway Uomo testate e qualificate con guida all'acquisto

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