Rezo neral YaLM 100B nan pratik.

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

Nan fen mwa Jen an, Yandex te
pibliye yon rezo neral ak 100 milya paramèt yo rele YaLM 100B pou piblik la . Li se pi gwo rezo neral ki tankou GPT nan domèn piblik la. Li di sou fason yo te anseye, te montre pi bon egzanp yo ak ki sa newòn nan kapab. Men, èske li tèlman bon nan pratik ak aplikab nan kay la? Atik la an silans sou sa a, anplis, li pa tèlman fasil kouri epi tcheke li, depi apeprè 200 Gb GPU RAM nesesè. Kòmantè sa a sou Habré
revele sitiyasyon an pi byen
.

Swadizan, nan Yandex, tout moun sa yo entelijan, epi yo pa t ‘menm afiche yon fason nòmal. Pa gen okenn api pou yon modèl gwo, pa gen okenn modèl ki pare dezabiye oswa ti modèl pou moun òdinè (nan Google Colab). Yo pa bay okenn egzanp sou kouman yo mete kanpe modèl la, ki jan yo jenere tèks. Se jis ke atik la endike yon koup nan nuans pou nèrd ak sa a li. Li se ase yo pran yon gade pi pre nan ki jan bank la te fè li ak lèt ​​la “C” epi fè menm bagay la. Mwen te gen enpresyon ke modèl sa a se jis youn nan eksperyans yo echwe ki te yon pitye jete nan fatra a, kidonk li te afiche nan Open Source yo montre ki modèl gwo Yandex kreye, epi anplis, li se sous louvri!

Gen anpil kesyon sou entènèt la ki jan yo kouri yalm oswa menm eseye sou entènèt, men pa gen repons pou sa a. Mwen te pami itilizatè yo ki te poze kesyon sa yo. Epi mete sou kalkile li soti. Depi mwen reyèlman bezwen yon fason yo jenere tèks pou robo finansye. Pou yo ka predi non sèlman valè yo, men tou kòmantè sou li nan tèks, ki baze sou rapò finansye. Nan sans, li pral menm jan ak sa analis finansye yo fè, sèlman ak itilizasyon entèlijans atifisyèl. Gen de fason yo kouri yalm.
Lwe yon sèvè nan nwaj laak 200+ Gb GPU RAM oswa modifye kòd la epi kouri ak deepspeed zewo dechaj (lè GPU a sekans trete yon pati nan rezo neral la, ak rès la estoke nan CPU RAM oswa NVMe). Premye a se trè chè, apeprè 2500 rubles pou chak èdtan oswa 1.7 milyon dola pa mwa. Dezyèm enkoni a, paske kòd la nan depo a pa bay, sèlman
sijesyon nan pwoblèm nan nan depo a, ki se pa difisil fè. Ann kòmanse senp.

YaLM 100B Enstriksyon Lanse

1. Nou lwe 200 GB GPU RAM, pou egzanp isit la .

Rezo neral YaLM 100B nan pratik.

Ou bezwen omwen 200 GB memwa videyo total. 8×40 = 320 GB. Se sèlman yon sèl sa a anfòm. Mwens pase 200 enposib, plis posib. Flèch la endike CPU RAM la, nou pa gade sou li. Li ka nenpòt moun.

Nou endike yon disk sou 300 GB, se konsa ke ak yon rezèv ak de preferans yon disk vit, paske. dè dizèn de jigokte done yo pral transfere nan ak soti nan li.

Rezo neral YaLM 100B nan pratik.Lè w ap kreye sous, chwazi Ubuntu ML (Machine Learning). Sa a se obligatwa pou kat videyo yo configuré epi pa gen anyen ki bezwen enstale anplis.

Lè w ap kreye yon sèvè, gen nuans ak kota, ou ka santi ke ekipman an pa disponib, men an reyalite ou jis bezwen ogmante kota yo nan anviwònman yo. Apre sèvè a aktive (li ka pran 5-10 minit), konekte ak sèvè a atravè ssh oswa dirèkteman nan konsole entènèt la sou paj sèvè a epi egzekite kòmandman an.

nvidia-smi

Rezilta a ta dwe yon tab ak kat videyo, vèsyon chofè ak cuda. Apeprè tankou sa a.
Rezo neral YaLM 100B nan pratik.Nan header vèsyon chofè a ak ki kote. Sou bò gòch yo se nimewo yo aparèy, nan sant la se gwosè a nan memwa aparèy la. Si ou pa gen enfòmasyon sa a, Lè sa a, ou te kolekte sèvè a soti nan sous la mal. Ubuntu ML (Machine Learnong) obligatwa, jan sa dekri pi wo a.

2. Klone depo a ak YaLM

sudo git clone https://github.com/yandex/YaLM-100B/ yalm
cd yalm

Klone nan katab lakay ou pou ou pa bezwen modifye konfigirasyon docker la apre sa. Si klonaj yon lòt kote, Lè sa a,
ale isit la epi ajoute chemen an nan kote klonaj.

3. Telechaje pòs (enfòmasyon de baz fòmasyon modèl)

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

Sa a pral pran apeprè inèdtan. Nan lòd pa gaspiye tan pou gremesi, nou kreye yon nouvo koneksyon ssh ak nan paralèl nou kòmanse bati yon veso docker.

4. Enstale nvidiadocker 2

Docker nòmal pa apwopriye,
nvidia-docker2 nesesè .
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit

5. Bati yon veso pou YaLM

cd yalm
sudo chmod +x ./docker/*
sudo bash ./docker/build.sh

Li la tou sou yon èdtan.

Hack lavi. Ou ka telechaje pòs, enstale docker epi konstwi yon veso sou yon sèvè bon mache ak yon sèl kat videyo. Li pral menm bagay la tou nan tan, kidonk, ou ka sove yon ti kras. Apre asanble sou yon sèvè bon mache, nou efase li, epi kreye yon sèvè konba lè l sèvi avèk yon disk ki soti nan yon sèvè bon mache. Lè sa a, ou pa pral peye anplis tan pou tann pou asanble a ak ponpe soti pòs.

6. Prepare kontni

6.1 Pwen kontwòl

Apre telechaje pòs yo fini, ou bezwen glise yo nan konfigirasyon yo. Gen de fason, paramèt kòrèk oswa pòs transfè. Tout kote li espere ke pòs yo pral nan anyè prensipal la nan pwojè a, respektivman, sa ki te telechaje yo dwe transfere nan katab la telechaje pi wo a. Lè ou nan katab la yalm egzekite

mv ./download/yalm100b_checkpoint ./

Oswa chanje chemen yo nan dosye yo nan dosye egzanp yo
https://github.com/yandex/YaLM-100B/blob/c91b7d7fe8dbf39c9e307d6d324446d0df136a23/examples/generate_interactive.sh#L8-L9

6.2 Kat videyo

Nou tcheke si kat videyo yo byen mete. Si ou gen uit kat videyo, Lè sa a, pa gen anyen yo bezwen chanje. Si nimewo a diferan, Lè sa a, nou chanje liy sa yo
Rezo neral YaLM 100B nan pratik.Nan dezyèm liy lan, nimewo yo nan aparèy yo itilize (ou ka gade yo nan nvidia-smi, ki ou te deja lanse). Nan katriyèm lan, nimewo yo.

7. Kouri veso docker la

Lè ou nan katab la yalm, egzekite lòd la

sudo bash ./docker/run.sh

Si tout bagay anfòm, yo pral mennen w nan yon veso kote ou bezwen ale nan katab yalm nan anyè lakay ou.

cd ~/yalm

8. Kouri egzanp lan nan YaLM 100B

Nou pare pou lanse youn nan egzanp yo. Yo dekri
isit la .

chmod +x ./examples/generate_interactive.sh
./examples/generate_interactive.sh

Pran pasyans, li rete tann yon lòt 10-15 minit jiskaske yo kreye modèl GPT ak pwa yo nan pòs yo chaje.
Rezo neral YaLM 100B nan pratik.

Lè konstriksyon an fini, MegatronML ap mande w antre nan yon kontèks pou jenere tèks. Fè atansyon lè w tape. Nan sèten sikonstans, yon erè rive, pwogram nan aksidan epi ou bezwen kòmanse asanble a ankò. Se poutèt sa, li pi bon yo sèvi ak egzanp ki pran tèks nan yon dosye.

9. Rezilta travay la

Rezo neral YaLM 100B nan pratik.
Rezo neral YaLM 100B nan pratik.Sanble enteresan. Natirèlman, sa yo se jis bon egzanp. Mwen te kouri tès la sou diferan echantiyon. Kòm espere, pi bon kontèks la, tèks la ki gen plis sans pral pwodwi. Ou ka wè tout seri jenerasyon eksperimantal yo nan lyen yo:

Pou pri a, li te koute m ‘apeprè 9 mil rubles pou lwe sèvè nan diferan kapasite soti nan fòmasyon ak soti nan preparasyon nan jenerasyon. Yon desepsyon patikilye te ke ou pa ka imedyatman jenere tout bagay. Li pran yon tan trè long yo kòmanse ak tèks la pa jenere osi vit ke nou ta renmen, bay pri a nan sèvè a pou chak èdtan.
Rezo neral YaLM 100B nan pratik. 

Ki jan yo kouri YaLM san 200Gb GPU RAM?

Ou bezwen ajoute deepspeed zewo offload nan konfigirasyon an. Pou moun ki konnen de sa n ap pale, li pral trè fasil fè li. Pou lòt moun, sa a se pa yon travay trivial ditou. Li enpòtan pou konnen ke dechaje ka swa nan CPU RAM oswa NVMe. Ou ka bliye sou NVMe nan moman sa a, paske. se yon gwo kantite done ke yo te trete ak disk la pa ka fè fas ak li. Zewo dechaje CPU se pi reyèl. Se vre, pou sa ou bezwen gen 200+ Gb CPU RAM nan stock, ki se tou pa bon mache. Epi yo pral pwodwi yon tèks pou apeprè 20-40 minit, paske li poko posib pou paralelize li sou de kat videyo. Kòm ou ka wè nan Ekran ki anba a, se sèlman yon kat videyo ki te enplike nan jenerasyon an, ak Lè sa a, sèlman pou yon ka nan memwa a. Li rete pou wè poukisa tout 24 GB yo pa itilize,
Rezo neral YaLM 100B nan pratik.Oke, an konklizyon, mwen pral di ke li posib yo kouri menm sou yon sèl RTX 3070 TI. Men, pa gen okenn sans patikilye nan sa a, paske. NVMe pa pral pèmèt ou byen vit trete 150 GB nan done nan swap la, ki se nan apendis la nan 96 GB nan RAM.
Rezo neral YaLM 100B nan pratik.

Rezime

Natirèlman, mwen pral toujou eseye jwenn chemen yo lansman optimal. Men, jiskaprezan mwen te rive nan konklizyon ke YaLM 100b twò chè / twò dousman pou travay mwen yo. Pou menm lajan an, moun pral ekri pi plis ak pi byen. Men mwen panse se tanporè, nap wè. Si w bezwen èd ak lanse, mete kanpe yalm, oswa ou vle wè rezilta yo sou egzanp kontèks ou a, ekri nan lapòs la oswa telegram.

pskucherov
Rate author
Add a comment

  1. Olha

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

    Reply
  2. Данила

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

    Reply
  3. Дмитрий

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

    Reply