నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.

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

జూన్ చివరిలో, Yandex
ప్రజలకు YaLM 100B అని పిలువబడే 100 బిలియన్ పారామితులతో న్యూరల్ నెట్‌వర్క్‌ను విడుదల చేసింది . ఇది పబ్లిక్ డొమైన్‌లో అతిపెద్ద GPT లాంటి న్యూరల్ నెట్‌వర్క్. వారు ఎలా బోధించారు, ఉత్తమ ఉదాహరణలను చూపించారు మరియు న్యూరాన్ సామర్థ్యం ఏమిటో ఇది చెబుతుంది. అయితే ఇది ఆచరణలో అంత మంచిదేనా మరియు ఇంట్లో వర్తిస్తుందా? వ్యాసం దీని గురించి నిశ్శబ్దంగా ఉంది, అంతేకాకుండా, దీన్ని అమలు చేయడం మరియు తనిఖీ చేయడం అంత సులభం కాదు, ఎందుకంటే సుమారు 200 Gb GPU RAM అవసరం. హబ్రేపై
ఈ వ్యాఖ్య పరిస్థితిని చాలా ఖచ్చితంగా వెల్లడిస్తుంది
.

యాండెక్స్‌లో, అలాంటి తెలివైన వ్యక్తులందరూ, మరియు వారు సాధారణ హౌ-టుని కూడా పోస్ట్ చేయలేదని ఆరోపించారు. పెద్ద మోడల్‌కి ఏపి లేదు, సాధారణ వ్యక్తుల కోసం (గూగుల్ కోలాబ్‌లో) రెడీమేడ్ స్ట్రిప్డ్-డౌన్ మీడియం లేదా చిన్న మోడల్ లేదు. మోడల్‌ను ఎలా సెటప్ చేయాలి, వచనాన్ని ఎలా రూపొందించాలి అనేదానికి ఉదాహరణ ఇవ్వబడలేదు. ఈ వ్యాసం మేధావుల కోసం కొన్ని సూక్ష్మ నైపుణ్యాలను సూచిస్తుంది మరియు అంతే. బ్యాంకు వారు “సి” అనే అక్షరంతో ఎలా చేశారో నిశితంగా పరిశీలించి అదే పని చేస్తే సరిపోతుంది. ఈ మోడల్ విఫలమైన ప్రయోగాలలో ఒకటి అని నేను అభిప్రాయాన్ని పొందాను, అది చెత్తబుట్టలో వేయడానికి జాలిగా ఉంది, కాబట్టి ఇది Yandex ఏ గొప్ప మోడల్‌లను సృష్టిస్తుందో చూపించడానికి ఓపెన్ సోర్స్‌లో పోస్ట్ చేయబడింది మరియు అంతేకాకుండా, ఇది ఓపెన్ సోర్స్!

యాల్మ్‌ని అమలు చేయడం లేదా ఆన్‌లైన్‌లో ప్రయత్నించడం ఎలా అనే ప్రశ్నలు ఇంటర్నెట్‌లో చాలా ఉన్నాయి, కానీ దీనికి సమాధానాలు లేవు. ఈ ప్రశ్నలను అడిగిన వినియోగదారులలో నేను కూడా ఉన్నాను. మరియు దాన్ని గుర్తించడం గురించి సెట్ చేయండి. ఆర్థిక రోబోట్‌ల కోసం పాఠాలను రూపొందించడానికి నాకు నిజంగా ఒక మార్గం అవసరం కాబట్టి. తద్వారా వారు ఆర్థిక నివేదికల ఆధారంగా విలువలను మాత్రమే కాకుండా, టెక్స్ట్‌లో దానిపై వ్యాఖ్యానించగలరు. సారాంశంలో, ఆర్టిఫిషియల్ ఇంటెలిజెన్స్ వాడకంతో మాత్రమే ఆర్థిక విశ్లేషకులు ఏమి చేస్తారో అదే విధంగా ఉంటుంది. యాల్మ్ నడపడానికి రెండు మార్గాలు ఉన్నాయి.
క్లౌడ్‌లో సర్వర్‌ని అద్దెకు తీసుకోండి200+ Gb GPU RAMతో లేదా కోడ్‌ను సవరించండి మరియు డీప్‌స్పీడ్ జీరో ఆఫ్‌లోడ్‌తో రన్ చేయండి (GPU వరుసగా న్యూరల్ నెట్‌వర్క్‌లో కొంత భాగాన్ని ప్రాసెస్ చేసినప్పుడు మరియు మిగిలినది CPU RAM లేదా NVMeలో నిల్వ చేయబడినప్పుడు). మొదటిది చాలా ఖరీదైనది, గంటకు 2500 రూబిళ్లు లేదా నెలకు 1.7 మిలియన్లు. రెండవది తెలియదు, ఎందుకంటే రిపోజిటరీలోని కోడ్ అందించబడలేదు,
రిపోజిటరీ యొక్క సంచికలో సూచనలు మాత్రమే , ఇది చేయడం కష్టం కాదు. సరళంగా ప్రారంభిద్దాం.

YaLM 100B ప్రారంభ సూచనలు

1. మేము 200 GB GPU RAMని అద్దెకు తీసుకుంటాము, ఉదాహరణకు ఇక్కడ .

నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.

మీకు కనీసం 200 GB మొత్తం వీడియో మెమరీ అవసరం. 8×40 = 320 GB. ఇది మాత్రమే సరిపోతుంది. 200 కంటే తక్కువ అసాధ్యం, ఎక్కువ సాధ్యమే. బాణం CPU RAMని సూచిస్తుంది, మేము దానిని చూడము. ఆమె ఎవరైనా కావచ్చు.

మేము సుమారు 300 GB డిస్క్‌ని సూచిస్తాము, తద్వారా విడి మరియు ప్రాధాన్యంగా వేగవంతమైన డిస్క్, ఎందుకంటే. పదుల గిగాబైట్ల డేటా దానికి మరియు దాని నుండి బదిలీ చేయబడుతుంది.

నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.మూలాల్లో సృష్టించేటప్పుడు, ఉబుంటు ML (మెషిన్ లెర్నింగ్) ఎంచుకోండి. ఇది తప్పనిసరి కాబట్టి వీడియో కార్డ్‌లు కాన్ఫిగర్ చేయబడతాయి మరియు అదనంగా ఏమీ ఇన్‌స్టాల్ చేయవలసిన అవసరం లేదు.

సర్వర్‌ను సృష్టించేటప్పుడు, కోటాలతో సూక్ష్మ నైపుణ్యాలు ఉన్నాయి, పరికరాలు అందుబాటులో లేవని మీరు భావించవచ్చు, కానీ వాస్తవానికి మీరు సెట్టింగులలో కోటాలను పెంచాలి. సర్వర్ సక్రియం అయిన తర్వాత (దీనికి 5-10 నిమిషాలు పట్టవచ్చు), సర్వర్‌కు ssh ద్వారా లేదా నేరుగా సర్వర్ పేజీలోని వెబ్ కన్సోల్‌లో కనెక్ట్ చేసి, ఆదేశాన్ని అమలు చేయండి.

nvidia-smi

ఫలితంగా వీడియో కార్డ్‌లు, డ్రైవర్ వెర్షన్ మరియు కుడాతో కూడిన పట్టిక ఉండాలి. ఇంచుమించు ఇలా.
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.డ్రైవర్ వెర్షన్ హెడర్‌లో మరియు ఎక్కడ. ఎడమ వైపున పరికర సంఖ్యలు ఉన్నాయి, మధ్యలో పరికరం మెమరీ పరిమాణం ఉంటుంది. మీకు ఈ సమాచారం లేకుంటే, మీరు తప్పు మూలం నుండి సర్వర్‌ని సేకరించారు. పైన వివరించిన విధంగా ఉబుంటు ML (మెషిన్ లెర్నాంగ్) అవసరం.

2. YaLMతో రిపోజిటరీని క్లోన్ చేయండి

సుడో గిట్ క్లోన్ https://github.com/yandex/YaLM-100B/ యాల్మ్
సిడి యాల్మ్

మీ హోమ్ ఫోల్డర్‌కి క్లోన్ చేయండి, తద్వారా మీరు డాకర్ కాన్ఫిగరేషన్‌ను సవరించాల్సిన అవసరం లేదు. మరెక్కడైనా క్లోన్ చేయబడితే,
ఇక్కడకు వెళ్లి , క్లోన్ చేసిన చోటికి మార్గాన్ని జోడించండి.

3. చెక్‌పోస్టులను డౌన్‌లోడ్ చేయండి (ప్రాథమిక నమూనా శిక్షణ సమాచారం)

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

దీనికి గంట సమయం పడుతుంది. సమయాన్ని వృథా చేయకుండా ఉండటానికి, మేము కొత్త ssh కనెక్షన్‌ని సృష్టిస్తాము మరియు సమాంతరంగా మేము డాకర్ కంటైనర్‌ను నిర్మించడాన్ని ప్రారంభిస్తాము.

4. ఎన్విడియాను ఇన్‌స్టాల్ చేయండిడాకర్ 2

సాధారణ డాకర్ తగినది కాదు,
nvidia-docker2 అవసరం .
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit

5. YaLM కోసం కంటైనర్‌ను నిర్మించడం

cd యాల్మ్
సుడో chmod +x ./docker/*
sudo bash ./docker/build.sh

ఇది కూడా దాదాపు గంట సమయం.

లైఫ్ హ్యాక్. మీరు చెక్‌పాయింట్‌లను డౌన్‌లోడ్ చేసుకోవచ్చు, డాకర్‌ని ఇన్‌స్టాల్ చేయవచ్చు మరియు ఒక వీడియో కార్డ్‌తో చౌక సర్వర్‌లో కంటైనర్‌ను నిర్మించవచ్చు. ఇది సమయం లో అదే ఉంటుంది, కాబట్టి మీరు కొద్దిగా సేవ్ చేయవచ్చు. చౌక సర్వర్‌లో అసెంబ్లీ చేసిన తర్వాత, మేము దానిని తొలగిస్తాము మరియు చౌక సర్వర్ నుండి డిస్క్‌ని ఉపయోగించి పోరాట సర్వర్‌ను సృష్టిస్తాము. అప్పుడు మీరు అసెంబ్లీ కోసం వేచి ఉండటానికి మరియు చెక్‌పాయింట్‌లను పంపింగ్ చేయడానికి సమయాన్ని ఎక్కువగా చెల్లించరు.

6. కంటెంట్‌ని సిద్ధం చేయండి

6.1 తనిఖీ కేంద్రాలు

చెక్‌పాయింట్‌ల డౌన్‌లోడ్ ముగిసిన తర్వాత, మీరు వాటిని కాన్ఫిగర్‌లలోకి జారుకోవాలి. రెండు మార్గాలు ఉన్నాయి, సరైన పారామితులు లేదా బదిలీ తనిఖీ కేంద్రాలు. ప్రతిచోటా చెక్‌పాయింట్లు ప్రాజెక్ట్ యొక్క ప్రధాన డైరెక్టరీలో వరుసగా ఉంటాయని అంచనా వేయబడింది, డౌన్‌లోడ్ చేయబడినది పైన ఉన్న డౌన్‌లోడ్ ఫోల్డర్ నుండి బదిలీ చేయబడాలి. యాల్మ్ ఫోల్డర్ ఎగ్జిక్యూట్‌లో ఉండటం

mv ./download/yalm100b_checkpoint ./

లేదా ఉదాహరణ ఫైల్‌లలోని ఫైల్‌లకు మార్గాలను మార్చండి
https://github.com/yandex/YaLM-100B/blob/c91b7d7fe8dbf39c9e307d6d324446d0df136a23/examples/generate_interactive.sh#L9-L8-

6.2 వీడియో కార్డ్‌లు

వీడియో కార్డ్‌లు సరిగ్గా సెట్ చేయబడి ఉన్నాయని మేము తనిఖీ చేస్తాము. మీకు ఎనిమిది వీడియో కార్డ్‌లు ఉంటే, ఏమీ మార్చాల్సిన అవసరం లేదు. సంఖ్య భిన్నంగా ఉంటే, మేము ఈ పంక్తులను
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.రెండవ పంక్తిలో, ఉపయోగించిన పరికరాల సంఖ్యలను మారుస్తాము (మీరు వాటిని ఇప్పటికే ప్రారంభించిన nvidia-smiలో చూడవచ్చు). నాల్గవది, వారి సంఖ్య.

7. డాకర్ కంటైనర్‌ను అమలు చేయండి

యాల్మ్ ఫోల్డర్‌లో ఉన్నందున, ఆదేశాన్ని అమలు చేయండి

sudo bash ./docker/run.sh

ప్రతిదీ సరిగ్గా ఉంటే, మీరు మీ హోమ్ డైరెక్టరీలోని యాల్మ్ ఫోల్డర్‌కు వెళ్లవలసిన కంటైనర్‌కు తీసుకెళ్లబడతారు.

cd ~/yalm

8. YaLM 100B నుండి ఉదాహరణను అమలు చేయండి

మేము ఉదాహరణలలో ఒకదాన్ని ప్రారంభించటానికి సిద్ధంగా ఉన్నాము. అవి ఇక్కడ
వివరించబడ్డాయి .

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

ఓపికపట్టండి, GPT మోడల్ సృష్టించబడే వరకు మరియు చెక్‌పాయింట్‌ల నుండి బరువులు లోడ్ అయ్యే వరకు మరో 10-15 నిమిషాలు వేచి ఉండండి.
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.

బిల్డ్ పూర్తయినప్పుడు, MegatronML వచనాన్ని రూపొందించడానికి సందర్భాన్ని నమోదు చేయమని మిమ్మల్ని అడుగుతుంది. మీరు టైప్ చేసేటప్పుడు జాగ్రత్తగా ఉండండి. కొన్ని పరిస్థితులలో, లోపం ఏర్పడుతుంది, ప్రోగ్రామ్ క్రాష్ అవుతుంది మరియు మీరు మళ్లీ అసెంబ్లీని ప్రారంభించాలి. అందువల్ల, ఫైల్ నుండి టెక్స్ట్ తీసుకునే ఉదాహరణలను ఉపయోగించడం మంచిది.

9. పని యొక్క ఫలితాలు

నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.ఆసక్తికరంగా కనిపిస్తోంది. వాస్తవానికి, ఇవి మంచి ఉదాహరణలు మాత్రమే. నేను వివిధ నమూనాలపై పరీక్షను నిర్వహించాను. ఊహించిన విధంగా, సందర్భం ఎంత మెరుగ్గా ఉంటే అంత అర్థవంతమైన వచనం రూపొందించబడుతుంది. ప్రయోగాత్మక తరాల పూర్తి సెట్‌ను లింక్‌లలో చూడవచ్చు:

ధర కోసం, శిక్షణ నుండి మరియు తయారీ నుండి తరానికి వివిధ సామర్థ్యాల సర్వర్‌లను అద్దెకు తీసుకోవడానికి నాకు 9 వేల రూబిళ్లు ఖర్చయ్యాయి. ఒక నిర్దిష్ట నిరాశ ఏమిటంటే, మీరు తక్షణమే ప్రతిదీ సృష్టించలేరు. ఇది ప్రారంభించడానికి చాలా సమయం పడుతుంది మరియు గంటకు సర్వర్ ధరను బట్టి టెక్స్ట్ మనం కోరుకున్నంత త్వరగా ఉత్పత్తి చేయదు.
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది. 

200Gb GPU RAM లేకుండా YaLMని ఎలా రన్ చేయాలి?

మీరు కాన్ఫిగరేషన్‌కి డీప్‌స్పీడ్ జీరో ఆఫ్‌లోడ్‌ని జోడించాలి. మనం ఏమి మాట్లాడుతున్నామో తెలిసిన వారికి, దీన్ని చేయడం చాలా సులభం అవుతుంది. ఇతరులకు, ఇది అస్సలు చిన్న పని కాదు. ఆఫ్‌లోడ్ CPU RAM లేదా NVMeలో ఉండవచ్చని తెలుసుకోవడం ముఖ్యం. మీరు ప్రస్తుతం NVMe గురించి మరచిపోవచ్చు, ఎందుకంటే. చాలా పెద్ద మొత్తంలో డేటా ప్రాసెస్ చేయబడుతోంది మరియు డిస్క్ దానిని భరించలేదు. జీరో ఆఫ్‌లోడ్ CPU మరింత వాస్తవమైనది. నిజమే, దీని కోసం మీరు స్టాక్‌లో 200+ Gb CPU RAMని కలిగి ఉండాలి, ఇది కూడా చౌక కాదు. మరియు ఒక టెక్స్ట్ సుమారు 20-40 నిమిషాల పాటు రూపొందించబడుతుంది, ఎందుకంటే దీన్ని రెండు వీడియో కార్డ్‌లలో సమాంతరంగా చేయడం ఇంకా సాధ్యం కాలేదు. దిగువ స్క్రీన్‌షాట్‌లో మీరు చూడగలిగినట్లుగా, తరంలో ఒక వీడియో కార్డ్ మాత్రమే పాల్గొంటుంది, ఆపై మెమరీలో పావు వంతు మాత్రమే. మొత్తం 24 GB ఎందుకు ఉపయోగించబడదో చూడాల్సి ఉంది,
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.సరే, ముగింపులో, ఒక RTX 3070 TIలో కూడా అమలు చేయడం సాధ్యమవుతుందని నేను చెబుతాను. కానీ ఇందులో ప్రత్యేక భావం లేదు, ఎందుకంటే. 96 GB RAM అనుబంధంలో ఉన్న స్వాప్‌లో 150 GB డేటాను త్వరగా ప్రాసెస్ చేయడానికి NVMe మిమ్మల్ని అనుమతించదు.
నాడీ నెట్‌వర్క్ YaLM 100B ఆచరణలో ఉంది.

సంక్షిప్తం

అయితే, నేను ఇప్పటికీ సరైన ప్రయోగ మార్గాలను కనుగొనడానికి ప్రయత్నిస్తాను. కానీ ఇప్పటివరకు నేను YaLM 100b చాలా ఖరీదైనది / నా పనులకు చాలా నెమ్మదిగా ఉందని నిర్ధారణకు వచ్చాను. అదే డబ్బు కోసం, ప్రజలు చాలా ఎక్కువ మరియు మెరుగ్గా వ్రాస్తారు. కానీ ఇది తాత్కాలికమని నేను భావిస్తున్నాను, చూద్దాం. మీకు లాంచ్ చేయడంలో, యాల్మ్‌ని సెటప్ చేయడంలో లేదా మీ సందర్భోచిత ఉదాహరణలలో ఫలితాలను చూడాలనుకుంటే, మెయిల్ లేదా టెలిగ్రామ్‌కు వ్రాయండి.

pskucherov
Rate author
Add a comment

  1. Olha

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

    Reply
  2. Данила

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

    Reply
  3. Дмитрий

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

    Reply