28,9 milyon parametrli dil modeli ESP32-S3-də işə salındı


Tərtibatçı Vyaçeslav Serbov, slvDev təxəllüsü ilə tanınır, nümunəsini göstərdi ESP32-S3 mikrocontroller-də tamamilə lokal mətn nəsli. Onun yaratdığı dil modeli 28,9 milyon parametrə malikdir və serverə və ya digər xarici hesablama resurslarına müraciət etmədən, saniyədə təxminən 9,9 token təqdim edir. Yaradılmış qısa hekayələr qoşulmuş OLED ekranında göstərilir.

 

Layihə esp32-ai ESP32-S3 N16R8 modulu üzərində sınaqdan keçirilib, 512 KB daxili SRAM, 8 MB PSRAM və 16 MB flash yaddaşına malikdir. Dörd bitə kvantlaşdırılmış model 14,9 MB yer tutur. Depozitdə C dilində həyata keçirilməsi üçün mənbə kodu, modelin öyrədilməsi və kvantlaşdırılması üçün vasitələr, proqram təminatı, testlər və onun lövhəyə yüklənməsi üçün ssenarilər dərc olunub.

 

28,9 milyon parametrin sayı adi masaüstü LLM-lərlə birbaşa müqayisə edilməməlidir. Buna görə də tərtibatçının ətraflı hesabatına görə,model, təxminən 559 min parametrli sıx hesablamanın nüvəsindən, 3,1 milyon parametrli çıxış qatından və təxminən 25 milyon parametrli lay-lay vektor təmsilinin cədvəlinə ibarətdir. Məhz sonuncu modelin rəsmi ölçüsünün əsas hissəsini təmin edir, amma hər bir tokenin nəsli zamanı tamamilə işlənilmir.

 

Modelin saxlanılması üçün üç səviyyəli yaddaş istifadə olunur. Ən çox istifadə olunan məlumatlar daxili SRAM-da, çıxış qatını, KV-cache və müvəqqəti yastıqları PSRAM-da, 25 milyonluq cədvəl isə flash yaddaşda qalır və ünvan sahəsinə xəritələmə vasitəsilə əldə edilir. Hər bir token üçün oradan yalnız təxminən altı sətir oxunur, ümumi həcmi isə təxminən 450 baytdır.

 

Belə bir cihaz Google-un Gemma 3m-də tətbiq etdiyi Per-Layer Embeddings texnologiyasına əsaslanır. Buna görə də Google-un sənədinə görə,PLE parametrləri modelin işçi yaddaşından kənarda saxlanıla bilər və müxtəlif qatların işlənməsi zamanı çıxarış prosesinə əlavə edilə bilər. esp32-ai bu yanaşmanı mikrocontroller-in yaddaş hiyerarxiyasına tətbiq edir, burada sürətli SRAM xüsusilə məhduddur.

 

C dilində yazılan ilk düzgün icra versiyası yalnız 0,57 tokeni saniyədə verirdi. Çıxış qatını PSRAM-a qoyduqdan, səkkizbitli aktivasiyalara keçid etdikdən, iki Xtensa LX7 nüvəsi arasında hesablama fəaliyyətlərini paylayaraq və digər optimallaşdırmalar ilə gecikmə modelin bir addımında 94,9 ms-yə endirildi. Nəticədə ölçülən sürət tam nəsil prosesini nəzərə alaraq 9,88 tokenə çatdı. İndi əsas məhdudiyyət PSRAM-ın çıxış qatını oxumaq üçün olan bant genişliyidir.

 

Model sintetik verilənlər bazasında təlim keçirilib TinyStories, ibarından ibarət sadə ingiliscə hekayələrdən ibarətdir, məhdud lüğət ilə. Buna görə də cümlələri davam etdirə və kiçik bağlı hekayələr yarada bilir, amma suallara cavab vermək, təlimatları icra etmək, proqramlaşdırmaq və ya faktiki bilikləri bərpa etmək üçün nəzərdə tutulmamışdır. İnkişaf etdirici işi əvvəlcə mikroqontrollerin yaddaş modelini səmərəli yerləşdirmənin nümayişi kimi görür, tamamilə müstəqil bir çat-bot kimi deyil.

 

Mövcud sənədlərdə müəllif ayrıca vurğulayır ki, esp32-ai müstəqil bir inkişafdır. Layihələr llama2.c Andrey Karpatinin 260 min parametrlik modelinin ESP32-S3-də daha əvvəlki işlər kimi təqdim edilməsi yalnız göstəricilər və öncədən irəliləyişlərdir: kod, yoxlama nöqtələri və metodologiya birbaşa onlardan alınmayıb. esp32-ai-nin başlanğıc kodu MIT lisenziyası altında yayımlanır..

 

Mənbə: linux.org.ru

DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər 🔥 DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər | ProHoster