Të fundit

NanoEuler: Model gjuhësor i ndërtuar nga zero në C dhe CUDA

Projekti NanoEuler prezanton një model gjuhësor të klasës GPT-2, të ndërtuar plotësisht nga e para duke përdorur gjuhën C dhe platformën CUDA. Ky projekt nuk mbështetet në biblioteka të jashtme si PyTorch apo sisteme të automatizuara të gradientëve (autograd). Zhvillimi përfshin një tokenizues BPE në nivel bajti, një proces trajnimi paraprak në një korpus librash dhe të dhënash nga interneti, si dhe një fazë të mëvonshme të akordimit të mbikëqyrur për modele chat.

Implementimi përfshin dy variante: një version të vogël që ekzekutohet në CPU përmes libm dhe OpenMP, si dhe një motor të plotë CUDA. Ky i fundit përdor cuBLAS për shumëfishimet matricore, një version të shkruar dorë të FlashAttention, si dhe komponentë të tjerë si RMSNorm, RoPE, SwiGLU dhe AdamW. Për të garantuar saktësinë e llogaritjeve, çdo gradient analitik krahasohet me një diferencë të përqendruar në saktësi të dyfishtë (double precision), duke përfshirë edhe shtresat e RoPE dhe MTP.

Modeli me rreth 116 milionë parametra është trajnuar në një kartë grafike RTX 4070. Sipas dokumentacionit, ky model prodhon tekst në anglisht që duket i rrjedhshëm, por ka njohuri të kufizuara për botën reale. Projekti nuk synon të ofrojë një asistent të aftë për përdorim praktik, por shërben si një demonstrim se si funksionon procesi i trajnimit nga fillimi deri në fund.

Autorët e përshkruajnë NanoEuler si një artefakt kërkimor dhe edukativ, të ndërtuar në publik. Ata theksojnë se për të krijuar një chatbot të dobishëm nevojiten shkallëzim i parametrave, më shumë të dhëna dhe fuqi llogaritëse. Qëllimi i projektit është që çdo pjesë e sistemit – nga parametrat dhe gradientët te tokenizuesi dhe kernelët – të jetë e kontrolluar dhe e kuptueshme për përdoruesin.

Projekti është i pavarur nga bibliotekat e jashtme dhe është testuar me përpiluesin gcc 13 në sistemin operativ Linux. Trajnimi i modelit në GPU mund të ndërpritet dhe të rifillohet, ndërsa rezultatet e trajnimit ruhen në një format që mund të përdoret edhe nga programi i ekzekutimit në CPU.

Burimi: github.com

Video nga Paradoks

VV SHOW - Dhuna verbale, a po e shtyn Vetevendosje një konflikt të madh shoqëror

Klikoni KËTU për t’u bërë pjesë e kanalit zyrtar të Paparacit në Viber.

Subscribe në kanalin zyrtar të Paparacit - Kliko KËTU

Të fundit

TË TJERA

Qëndro i informuar

Për të mos ju ikur asnjë lajm, regjistrohu në Paparaci