Omukutu gw’obusimu YaLM 100B mu nkola.

Программирование

Ku nkomerero ya June, Yandex
yafulumya omukutu gw’obusimu ogulina obuwumbi 100 obuyitibwa YaLM 100B eri abantu bonna . Ye nkolagana y’obusimu esinga obunene eringa eya GPT mu bifo eby’olukale. Eyogera ku ngeri gye baayigirizaamu, gye baalaga ebyokulabirako ebisinga obulungi n’obusimu kye busobola. Naye kirungi nnyo mu nkola era kikozesebwa awaka? Ekiwandiiko kisirise ku kino, n’ekirala, si kyangu nnyo kukiddukanya n’okukikebera, okuva bwe kiri nti GPU RAM nga 200 ze zeetaagisa. Endowooza eno ku Habré
esinga okulaga embeera mu butuufu
.

Kigambibwa nti, mu Yandex, abantu bonna abagezi bwe batyo, era tebaateeka wadde How-to eya bulijjo. Tewali api ya model ennene, tewali model etegekeddwa stripped-down medium oba small model eri abantu ba bulijjo (mu Google Colab). Tewali kyakulabirako kiweereddwa ku ngeri y’okuteekawo model, engeri y’okukolamu ebiwandiiko. It’s just nti ekiwandiiko kiraga nuances bbiri eri nerds era ekyo kye kiri. Kimala okwetegereza ennyo engeri bbanka gye yakikolamu n’ennukuta “C” n’okola kye kimu. Nafuna endowooza nti model eno y’emu ku kugezesa okulemererwa okwali okusaasira okusuula mu kasasiro, kale yateekebwa mu Open Source okulaga model ki enkulu Yandex ky’ekola, era n’okusingawo, ya open source!

Waliwo ebibuuzo bingi ku yintaneeti engeri y’okuddukanyaamu yalm oba n’okugezaako ku yintaneeti, naye tewali kuddamu ku kino. Nze nali omu ku bakozesa ebibuuzo bino. Era otandike okukifumiitirizaako. Okuva bwe kiri nti ddala nnali nneetaaga engeri y’okukolamu ebiwandiiko bya roboti z’ebyensimbi. Basobole okulagula si miwendo gyokka, wabula n’okugiteesa mu biwandiiko, nga basinziira ku lipoota z’ebyensimbi. Mu bukulu, kijja kuba kye kimu n’ebyo abeekenneenya eby’ensimbi bye bakola, nga bakozesa amagezi ag’ekikugu gokka. Waliwo engeri bbiri ez’okuddukanya yalm.
Pangisa server mu kirenga olina 200+ Gb GPU RAM oba okukyusa code era odduke ne deepspeed zero offload (nga GPU ekola mu mutendera ekitundu ku neural network, ate ebisigadde ne biterekebwa mu CPU RAM oba NVMe). Esooka ya bbeeyi nnyo, nga 2500 rubles buli ssaawa oba obukadde 1.7 buli mwezi. Ekyokubiri tekimanyiddwa, kubanga koodi mu tterekero teweebwa,
obukodyo bwokka mu nsonga y’etterekero, ekintu ekitali kizibu kukola. Ka tutandike mu ngeri ennyangu.

Ebiragiro by’okutongoza YaLM 100B

1. Tupangisa 200 GB GPU RAM, okugeza wano .

Omukutu gw’obusimu YaLM 100B mu nkola.

Okwetaaga waakiri 200 GB ya total video memory. 8×40 = 320 GB nga bwe kiri. Ono yekka y’akwatagana. Ebitakka wansi wa 200 tebisoboka, ebisingawo bisoboka. Akasaale kalaga CPU RAM, tetugitunuulira. Asobola okuba omuntu yenna.

Tulaga disiki nga 300 GB, bwe kityo ne sipeeya ate okusinga disiki eyangu, kubanga. amakumi ga gigabytes za data zijja kukyusibwa okugenda n’okudda ku yo.

Omukutu gw’obusimu YaLM 100B mu nkola.Bw’oba ​​okola mu nsonda, londa Ubuntu ML (Machine Learning). Kino kikakatako olwo kaadi za vidiyo zibeere nga zitegekeddwa era nga tewali kyetaaga kuteekebwamu kwongerako.

Bw’oba ​​okola server, waliwo nuances ezirina quota, oyinza okufuna feeling nti ebyuma tebiriiwo, naye mu butuufu olina kwongera ku quota mu settings. Oluvannyuma lwa seva okukola (kiyinza okutwala eddakiika 5-10), kwata ku seva ng’oyita mu ssh oba butereevu mu web console ku lupapula lwa seva era okole ekiragiro.

nvidia-smi nga bwe kiri

Ekinaavaamu kirina okuba emmeeza nga mulimu kaadi za vidiyo, driver version ne cuda. Nga bwekiri nga kino.
Omukutu gw’obusimu YaLM 100B mu nkola.Mu mutwe gwa driver version ne wa. Ku ludda olwa kkono waliwo ennamba z’ebyuma, wakati waliwo obunene bw’ekijjukizo ky’ekyuma. Bw’oba ​​tolina mawulire gano, olwo oba okuŋŋaanyizza seva okuva mu nsibuko enkyamu. Ubuntu ML (Machine Learnong) yeetaagibwa, nga bwe kyayogeddwa waggulu.

2. Clone etterekero ne YaLM

sudo git clone https://github.com/yandex/YaLM-100B/ Omuntu w’abantu
: Omuntu w’abantu: Nze ndi muyimbi

Clone ku folda yo ey’awaka oleme kulongoosa docker config oluvannyuma. Bwoba nga cloned awalala, olwo
genda wano osseeko ekkubo eri weba cloned.

3. Wano wefunire ebifo ebikeberebwamu (amawulire agakwata ku kutendekebwa mu nkola ya basic model) .

sudo chmod +x ./wanula/wanula.sh
sudo bash ./wanula/wanula.sh

Kino kijja kutwala essaawa nga emu. Okusobola obutamala biseera bwereere, tukola omukago gwa ssh omupya era mu parallel tutandika okuzimba docker container.

4. Teeka nvidiadocker 2

Docker eya bulijjo si nnungi,
nvidia-docker2 yeetaagibwa .
https://docs.nvidia.com/datacenter/ekire-ekizaaliranwa/ekitabo-eky’ebikozesebwa/ekitabo-eky’okuteeka.html#okuteekawo-ekitabo-eky’ebikozesebwa-ekitereka-nvidia

5. Okuzimba ekintu ekiteekebwamu YaLM

cd yalm
sudo chmod +x ./docker/* omusomo
gwa bash ./docker/okuzimba.sh

Era ssaawa nga emu.

Obulamu hack. Osobola okuwanula checkpoints, okuteeka docker n’okuzimba container ku server eya layisi nga olina video card emu. Kijja kuba kye kimu mu budde, osobole okukekkereza akatono. Oluvannyuma lw’okukuŋŋaanya ku seva eya layisi, tugisazaamu, ne tukola seva y’okulwana nga tukozesa disiki okuva ku seva eya layisi. Olwo tojja kusasuza budde bwa kulinda lukuŋŋaana n’okupampagira ebifo ebikeberebwamu.

6. Tegeka ebirimu

6.1 Ebifo eby’okukebera

Oluvannyuma lw’okuwanula checkpoints okuggwa, olina okuziseerera mu configs. Waliwo engeri bbiri, parameters entuufu oba transfer checkpoints. Buli wamu kisuubirwa nti ebifo ebikeberebwamu bijja kuba mu dayirekita enkulu eya pulojekiti, mu kulondako, ebibadde biwanuliddwa birina okukyusibwa okuva mu folda y’okuwanula waggulu. Okubeera mu folda ya yalm execute

mv ./wanula/yalm100b_okukebera ./ .

Oba kyusa amakubo agagenda mu fayiro eziri mu fayiro ez’ekyokulabirako
https://github.com/yandex/YaLM-100B/blob/c91b7d7fe8dbf39c9e307d6d324446d0df136a23/examples/generate_interactive.sh#L8-L9

6.2 Kaadi za vidiyo

Tukebera oba kaadi za vidiyo ziteekeddwa bulungi. Bw’oba ​​olina kaadi za vidiyo munaana, olwo tewali kyetaaga kukyusibwa. Singa ennamba eba ya njawulo, olwo tukyusa layini zino
Omukutu gw’obusimu YaLM 100B mu nkola.Mu layini eyookubiri, ennamba z’ebyuma ebikozesebwa (osobola okubitunuulira mu nvidia-smi, gye watongoza edda). Mu kyokuna, omuwendo gwabwe.

7. Dduka ekintu ekiyitibwa docker container

Nga oli mu folda ya yalm, kola ekiragiro

sudo bash ./docker/okudduka.sh

Singa buli kimu kiba bulungi, olwo ojja kutwalibwa mu kibya mw’olina okugenda mu folda ya yalm mu dayirekita yo ey’awaka.

cd ~/yalm nga bwe kiri

8. Dduka ekyokulabirako okuva mu YaLM 100B

Tuli beetegefu okutongoza ekimu ku byokulabirako. Zinyonyoddwa
wano .

chmod +x ./ebyokulabirako/okukola_enkolagana.sh
./ebyokulabirako/okukola_enkolagana.sh

Beera mugumiikiriza, kisigadde okulinda eddakiika endala 10-15 okutuusa nga GPT model ekoleddwa era obuzito okuva mu checkpoints butikkiddwa.
Omukutu gw’obusimu YaLM 100B mu nkola.

Okuzimba bwe kunaggwa, MegatronML ejja kukusaba okuyingiza ensonga okukola ebiwandiiko. Weegendereze ng’owandiika. Mu mbeera ezimu, ensobi ebaawo, pulogulaamu egwa era olina okuddamu okutandika okukuŋŋaana. N’olwekyo, kirungi okukozesa ebyokulabirako ebiggya ebiwandiiko mu fayiro.

9. Ebivudde mu mulimu

Omukutu gw’obusimu YaLM 100B mu nkola.
Omukutu gw’obusimu YaLM 100B mu nkola.Kirabika nga kinyuma. Kya lwatu nti bino byakulabirako birungi byokka. Okugezesebwa nakudduka ku sampuli ez’enjawulo. Nga bwe kisuubirwa, ensonga gye zikoma okubeera ennungi, ekiwandiiko gye kikoma okukolebwa okuba eky’amakulu. Ekibinja ekijjuvu eky’emilembe egy’okugezesa osobola okukiraba ku links:

Ku bbeeyi, kyantwalira emitwalo nga 9 egy’okupangisa seeva ez’obusobozi obw’enjawulo okuva ku kutendekebwa n’okuva ku kwetegeka okutuuka ku mulembe. Ekintu ekikulu ekyamalamu amaanyi kyali nti tosobola kuzaala buli kimu mu bwangu. Kitwala ekiseera kiwanvu nnyo okutandika era ekiwandiiko tekikola mangu nga bwe twandiyagadde, okusinziira ku ssente za seva buli ssaawa.
Omukutu gw’obusimu YaLM 100B mu nkola. 

Okola otya okuddukanya YaLM nga tolina 200Gb GPU RAM?

Olina okwongerako deepspeed zero offload ku config. Abamanyi bye twogera, kijja kuba kyangu nnyo okukikola. Ku balala, guno si mulimu gwa makulu n’akatono. Kikulu okumanya nti offload eyinza okuba mu CPU RAM oba NVMe. Osobola okwerabira ku NVMe mu kiseera kino, kubanga. omuwendo omunene ennyo ogwa data gukolebwa era disiki tesobola kugugumira. Zero offload CPU esinga kuba ya ddala. Kituufu, ku kino olina okuba ne 200+ Gb CPU RAM mu stock, nga nayo si ya buseere. Era ekiwandiiko kimu kijja kukolebwa okumala eddakiika nga 20-40, okuva bwe kiri nti tekinnasoboka kukigeraageranya ku kaadi za vidiyo bbiri. Nga bw’olaba mu kifaananyi wansi, kaadi ya vidiyo emu yokka ye yali yeenyigidde mu mulembe guno, ate oluvannyuma okumala kimu kyakuna kyokka ku jjukira. Kisigadde okulaba lwaki GB zonna 24 tezikozesebwa,
Omukutu gw’obusimu YaLM 100B mu nkola.Well, mu kumaliriza, nja kugamba nti kisoboka okudduka ne ku RTX 3070 TI emu. Naye tewali makulu ga njawulo mu kino, kubanga. NVMe tejja kukukkiriza kukola mangu ku data ya 150 GB mu swap, nga zino ziri mu appendage ya RAM ya 96 GB.
Omukutu gw’obusimu YaLM 100B mu nkola.

Okufunza

Kya lwatu, nkyagenda okugezaako okuzuula amakubo agasinga obulungi ag’okusimbula. Naye okutuusa kati ntuuse ku kigambo nti YaLM 100b ya bbeeyi nnyo / mpola nnyo ku mirimu gyange. Ku ssente ze zimu, abantu bajja kuwandiika bingi nnyo era nga bisingako nnyo. Naye ndowooza nti kya kaseera buseera, tujja kulaba. Bw’oba ​​weetaaga obuyambi mu kutongoza, okuteekawo yalm, oba oyagala okulaba ebivuddemu ku byokulabirako byo eby’embeera, wandiika ku mail oba telegram.

pskucherov
Rate author
Add a comment

  1. Olha

    Статья на Мега актуальную тему! Спасибо.

    Reply
  2. Данила

    Крутая статья! Спасибо автору!

    Reply
  3. Дмитрий

    СПАСИБО !!!
    три дня эту информацию искал
    нет подобного о RuGPT3 и Порфириче?

    Reply