Brezplačno izvajanje Mixtral 8x7b v storitvi Google Colab - KDnuggets

Brezplačno izvajanje Mixtral 8x7b v storitvi Google Colab – KDnuggets

Izvorno vozlišče: 3059535

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
Slika avtorja
 

V tej objavi bomo raziskali nov najsodobnejši odprtokodni model, imenovan Mixtral 8x7b. Naučili se bomo tudi, kako dostopati do njega s pomočjo knjižnice LLaMA C++ in kako zagnati velike jezikovne modele z zmanjšano porabo računalnika in pomnilnika.

Mixtral 8x7b je visokokakovosten model redke mešanice strokovnjakov (SMoE) z odprtimi utežmi, ki ga je ustvaril Mistral AI. Licenciran je pod Apache 2.0 in prekaša Llamo 2 70B pri večini meril uspešnosti, hkrati pa ima 6-krat hitrejše sklepanje. Mixtral se ujema ali premaga GPT3.5 na večini standardnih meril uspešnosti in je najboljši odprti model glede na ceno/zmogljivost.

 

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
Slika iz Mešanica strokovnjakov
 

Mixtral 8x7B uporablja redko omrežje mešanice strokovnjakov samo za dekoder. To vključuje krmilni blok, ki izbira med 8 skupinami parametrov, pri čemer omrežje usmerjevalnika izbere dve od teh skupin za vsak žeton, pri čemer njune izhode aditivno združi. Ta metoda izboljša število parametrov modela, hkrati pa upravlja stroške in zakasnitev, zaradi česar je enako učinkovit kot model 12.9B, čeprav ima skupne parametre 46.7B.

Model Mixtral 8x7B se odlikuje po obvladovanju širokega konteksta 32k žetonov in podpira več jezikov, vključno z angleščino, francoščino, italijanščino, nemščino in španščino. Dokazuje visoko zmogljivost pri ustvarjanju kode in ga je mogoče natančno prilagoditi v model, ki sledi navodilom, ter dosega visoke rezultate na merilih uspešnosti, kot je MT-Bench.

LLaMA.cpp je knjižnica C/C++, ki zagotavlja visoko zmogljiv vmesnik za velike jezikovne modele (LLM), ki temeljijo na Facebookovi arhitekturi LLM. Je lahka in učinkovita knjižnica, ki jo je mogoče uporabiti za različne naloge, vključno z ustvarjanjem besedila, prevajanjem in odgovarjanjem na vprašanja. LLaMA.cpp podpira široko paleto LLM-jev, vključno z LLaMA, LLaMA 2, Falcon, Alpaca, Mistral 7B, Mixtral 8x7B in GPT4ALL. Združljiv je z vsemi operacijskimi sistemi in lahko deluje tako na CPE kot GPU.

V tem razdelku bomo izvajali spletno aplikacijo llama.cpp na Colabu. Če napišete nekaj vrstic kode, boste lahko izkusili novo najsodobnejšo zmogljivost modela na vašem računalniku ali v storitvi Google Colab.

Začetek

Najprej bomo s spodnjo ukazno vrstico prenesli repozitorij llama.cpp GitHub: 

!git clone --depth 1 https://github.com/ggerganov/llama.cpp.git

Po tem bomo spremenili imenik v repozitorij in namestili llama.cpp z ukazom `make`. Nameščamo llama.cpp za NVidia GPE z nameščeno CUDA. 

%cd llama.cpp

!make LLAMA_CUBLAS=1

Prenesite model

Model lahko prenesemo iz središča Hugging Face Hub tako, da izberemo ustrezno različico datoteke modela `.gguf`. Več informacij o različnih različicah najdete v TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF.

 

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
Slika iz TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF
 

Za prenos modela v trenutni imenik lahko uporabite ukaz `wget`. 

!wget https://huggingface.co/TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF/resolve/main/mixtral-8x7b-instruct-v0.1.Q2_K.gguf

Zunanji naslov za strežnik LLaMA

Ko zaženemo strežnik LLaMA, nam bo dal IP lokalnega gostitelja, ki je za nas v Colabu neuporaben. Potrebujemo povezavo s proxyjem lokalnega gostitelja z uporabo vrat proxy jedra Colab. 

Po zagonu spodnje kode boste dobili globalno hiperpovezavo. To povezavo bomo kasneje uporabili za dostop do naše spletne aplikacije. 

from google.colab.output import eval_js
print(eval_js("google.colab.kernel.proxyPort(6589)"))

 

https://8fx1nbkv1c8-496ff2e9c6d22116-6589-colab.googleusercontent.com/

Zagon strežnika

Če želite zagnati strežnik LLaMA C++, morate ukazu strežnika posredovati lokacijo datoteke modela in pravilno številko vrat. Pomembno je zagotoviti, da se številka vrat ujema s tisto, ki smo jo sprožili v prejšnjem koraku za vrata proxy.  

%cd /content/llama.cpp

!./server -m mixtral-8x7b-instruct-v0.1.Q2_K.gguf -ngl 27 -c 2048 --port 6589

 

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
 

Do spletne aplikacije za klepet lahko dostopate tako, da v prejšnjem koraku kliknete hiperpovezavo proxy vrat, ker strežnik ne deluje lokalno.

Spletna aplikacija LLaMA C++

Preden začnemo uporabljati chatbota, ga moramo prilagoditi. V razdelku za poziv zamenjajte »LLaMA« z imenom vašega modela. Poleg tega spremenite uporabniško ime in ime bota, da boste razlikovali med ustvarjenimi odgovori.

 

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
 

Začnite klepet tako, da se pomaknete navzdol in vnesete v razdelek za klepet. Postavite tehnična vprašanja, na katera drugi odprtokodni modeli niso pravilno odgovorili. 

 

Zagon Mixtral 8x7b v storitvi Google Colab brezplačno
 

Če naletite na težave z aplikacijo, jo lahko poskusite zagnati sami z mojo Google Colab: https://colab.research.google.com/drive/1gQ1lpSH-BhbKN-DdBmq5r8-8Rw8q1p9r?usp=sharing

Ta vadnica ponuja izčrpen vodnik o tem, kako zagnati napredni odprtokodni model Mixtral 8x7b v storitvi Google Colab z uporabo knjižnice LLaMA C++. V primerjavi z drugimi modeli Mixtral 8x7b zagotavlja vrhunsko zmogljivost in učinkovitost, zaradi česar je odlična rešitev za tiste, ki želijo eksperimentirati z velikimi jezikovnimi modeli, vendar nimajo obsežnih računalniških virov. Z lahkoto ga lahko zaženete na prenosnem računalniku ali v brezplačnem računalniku v oblaku. Je uporabniku prijazen in lahko celo uvedete svojo aplikacijo za klepet, da jo lahko drugi uporabljajo in eksperimentirajo.

Upam, da vam je bila ta preprosta rešitev za izvajanje velikega modela v pomoč. Vedno iščem preproste in boljše možnosti. Če imate še boljšo rešitev, mi prosim sporočite in naslednjič jo bom obravnaval.
 
 

Abid Ali Awan (@1abidaliawan) je certificiran strokovnjak za podatkovne znanstvenike, ki rad gradi modele strojnega učenja. Trenutno se osredotoča na ustvarjanje vsebin in pisanje tehničnih blogov o strojnem učenju in tehnologijah podatkovne znanosti. Abid ima magisterij iz tehnološkega managementa in diplomo iz telekomunikacijskega inženiringa. Njegova vizija je zgraditi izdelek AI z uporabo grafične nevronske mreže za študente, ki se borijo z duševnimi boleznimi.

Časovni žig:

Več od KDnuggets