See NLP pilvekursus näitab, kuidas juurutada ja kasutada Mistral 7b genereerivat AI-mudelit NVIDIA A10 GPU-l AWSis.
Mistral 7b mudel edestab LLaMA 3 7b mudelit kõigis võrdlusuuringutes ja LLaMA 3 13b mudelit paljudes võrdlusuuringutes. Tegelikult on see isegi võrdne LLaMA 1 34b mudeliga.
Selle kasutuselevõtuks ja kasutamiseks on vaja vähemalt 15 GB VRAMi, mistõttu on vaja A10 GPU-d, millel on vähemalt 24 GB VRAMi.
Kursuse ülesehitus on järgmine:
Tere, siin on Julien Sainas NLP Cloudist.
Täna vaatame, kuidas kasutada Mistral 7b generatiivset mudelit AWS A10 GPUHere we go.
Mistral 7b on tipptasemel generatiivne mudel, mille on välja andnud prantsuse ettevõte Mistral AI.
See mudel ilmus septembris 2023 ja edestab Lama 2 7b kõigis ametlikes võrdlusnäitajates.
Veelgi huvitavam on see, et see edestab ka Lama 2 13b paljudes võrdlusnäitajates ja on võrdne Lama 1 34b-ga.
Mistral AI andis selle mudeli välja Apache litsentsiga, mis võimaldab teil seda mudelit kasutada nii, nagu te soovite.
Meeskond avaldas nii alusmudeli kui ka peenhäälestatud vestlusversiooni.
Me võtame täna selles videos kasutusele vestlusversiooni.
Mistral 7b vajab vähemalt 14 gigat virtuaalset mälu ja suure konteksti korral rohkem.
Nii et me kasutame seda A10 NVIDIA GPU-d AWSis, kuna sellel GPU-l on 24 gigat virtuaalset mälu ja see on üsna kuluefektiivne.
Kõige lihtsam viis Mistral 7b kasutuselevõtuks on kasutada raamistikku Hugging Face ja järgida Mistral AI ametlikke juhiseid.
Esimese sammuna peame valima õige AWS-i masina.
AWSis on tohutult masinaid, nii et parim nõuanne, mida ma saan teile anda, on alustada sellest instantsitüüpide lehest ja seejärel minna vasakul pool kiirendatud arvutustehnoloogiasse.
Siin on nimekiri kõigist AWSi pakutavatest kiirendatud riistvarainstantsidest, millest me täna tahame G5-d.
Nagu siin näha, on G5-s A10 GPU, mida me tahame.
G5-lahendusi on mitmeid erinevaid.
Mõnel on ainult üks GPU, mõnel neli või kaheksa GPUd.
Meile piisab ühest GPU-st, sest ühel GPU-l on piisavalt virtuaalset mälu, kuid me peame olema väga ettevaatlikud, kui palju mälu instantsil on, sest kui me käivitame Mistral 7b mudeli, vajame ajutiselt veidi mälu mudeli laadimiseks.
Seepärast valime täna G5 4X suure instantsi, sest 64 gigast peaks piisama.
Nüüd ma lülitun oma AWS-i konsooli ja vajutan Launch Instance.
Nimetagem seda katse A10 Mistral.
Me valime Ubuntu OS-i, kuid siin on üks trikk.
Me ei taha valida standardset Ubuntu OS-i, sest peame käsitsi paigaldama NVIDIA draiverid, mis on väga valus.
Me valime siin Deep Learning AMI GPU PyTorch serveri, mis on palju parem, sest see AMI on varustatud Ubuntu pluss NVIDIA draiverid pluss CUDA tööriistakomplekt pluss PyTorch ja muud asjad, mis on kõik asjad, mida me täna oma testide jaoks vajame.
Siinkohal valime G5 4X suure instantsi.
Kui teil ei ole võtmepaari, peate selle looma.
Kui teete seda esimest korda ja ei ole päris kindel, kuidas VS Code'i oma AWS-i instantsiga ühendada, siis soovitan vaadata meie spetsiaalset videot VS Code'i kaugarenduskeskkonna kohta AWS-is.
Teisi porte pole vaja avada ja ma soovitan lisada võib-olla 100 gigat kettale.
Teoreetiliselt peaks mudel võtma vaid 20 gigat kõvakettale, kuid alati on parem, kui seda on rohkem, sest meil on vaja paigaldada raamatukogusid võib-olla, nii et siin oleme kindlad.
Vajutame nupule Launch Instance.
Hea, see on loodud.
Kui teil on kvoodiprobleem, sest võib-olla käivitate 8N GPU-d esimest korda, siis soovitan teil pöörduda AWS-i toe poole.
Ma võtan nüüd avaliku IP siin, ja nüüd ma lülitan VS Code'ile.
Vasakpoolses allosas peate ühendama praeguse akna peremehega ja kõigepealt peate konfigureerima oma peremehed.
Siin on see IP-aadress, mille ma just AWSist välja otsisin, ja see on minu SSH-võti.
Ma salvestan faili ja teen sama asja uuesti ning seekord klõpsan Mistral 7B.
Ma tahan uue sõrmejälje vastu võtta.
Täiuslik.
Nüüd oleme meie 8N GPU masinaga.
Kontrollime kõigepealt, kas GPU on saadaval koos õigete draiveritega.
Koos NVIDIA SMI-ga täiuslik.
Ma näen, et mul on siin 8N GPU ja et see on tühi, nii et mul on täna peaaegu 24 gigat VRAMi minu mudelile.
Loen testkataloogi, mille avan VS Code'iga, ja nüüd loen testfaili.
Võib-olla nimetame seda infer.py.
Mida me peaksime siis sellesse infer.py faili panema? Lihtne.
Läheme meie Mistrali tehisintellekti mudeli juurde, mis on "Hugging Face".
Kui see on esimene kord, kui te laadite mudeli alla Hugging Face'ile, siis põhimõtteliselt saate minna siia mudelite juurde ja teil on saadaval hulgaliselt mudeleid.
Võite klõpsata siin ja sisestada Mistral 7B.
Nagu näete, oli Mistral juba nimekirja tipus, sest see on tänapäeval väga trendikas.
Ma valin Instruct-mudeli, sest sellega on täna naljakam mängida, ja siinkohal järgin ma lihtsalt Mistrali AI-meeskonna juhiseid.
Nii et ma lihtsalt kopeerin-kleebin koodi VS Code'isse.
See ei tööta sellisena, sest enne seda tuleb paigaldada Transformersi raamatukogu.
Nii et kuna see Mistral 7B mudel on just lisatud Transformersi, siis ei ole see veel PyPy paketis saadaval, kuid see ei ole probleem.
Me paigaldame Transformersi otse GitHubi repositooriumist.
Hea.
Nüüd on Transformers õigesti paigaldatud.
Viimane asi, mida meil on vaja teha, on kasutada mudeli 16 ujukomaja versiooni, sest kui me kasutame mudeli vaikimisi versiooni, mis on ujukomaja 32, on see meie A10 GPU jaoks liiga suur ja enamasti ei ole erinevus FP16 ja FP32 vahel sellise mudeli puhul absoluutselt märgatav.
Seega peame täna importima Torchi ja lisama mudeli laadimisel selle parameetri, Torch dtype.
Hea.
Nüüd proovime käivitada järeldusskripti.
Hea.
Nii et meil on korralik retsept majoneesi kohta.
Võib-olla saame proovida midagi muud.
Küsime mudelilt, kuidas paigaldada Transformersi Linuxi serverisse.
Me saame selle eemaldada.
Hea.
Nii et CSS, ma ei ole kindel, miks.
See kõlab õigesti, välja arvatud CSS-märgistus siin.
Ma ei ole kindel, miks see detail on olemas, aga ma arvan, et sellest piisab, et näidata, et tegemist on kena 7B mudeliga, ja nüüd te teate, kuidas seda kasutada, nii et nüüd on teie kord.
Nüüd teate, kuidas Mistral 7B mudelit oma serveris kasutusele võtta.
Nagu näete, ei ole see tingimata keeruline, eriti kuna me kasutame täna ainult ühte GPU-d.
Kui teil ei ole A10 GPU-d, millel on piisavalt virtuaalset mälu, võite vajada mitut väiksemat GPU-d.
Sellisel juhul peate oma mudeli jagama mitmele väiksemale GPU-le.
See on veidi keerulisem ja me vajame selle jaoks veel ühte spetsiaalset videot.
Ilusat päeva.