Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab - KDnuggets

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab – KDnuggets

Κόμβος πηγής: 3059535

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
Εικόνα από συγγραφέα
 

Σε αυτήν την ανάρτηση, θα εξερευνήσουμε το νέο υπερσύγχρονο μοντέλο ανοιχτού κώδικα που ονομάζεται Mixtral 8x7b. Θα μάθουμε επίσης πώς να έχουμε πρόσβαση σε αυτό χρησιμοποιώντας τη βιβλιοθήκη LLaMA C++ και πώς να εκτελούμε μεγάλα μοντέλα γλώσσας με μειωμένο υπολογισμό και μνήμη.

Mixtral 8x7b είναι ένα υψηλής ποιότητας αραιό μείγμα ειδικών (SMoE) μοντέλο με ανοιχτά βάρη, που δημιουργήθηκε από τη Mistral AI. Έχει άδεια χρήσης σύμφωνα με το Apache 2.0 και έχει καλύτερη απόδοση από το Llama 2 70B στα περισσότερα σημεία αναφοράς, ενώ έχει 6 φορές ταχύτερο συμπέρασμα. Το Mixtral ταιριάζει ή ξεπερνά το GPT3.5 στα περισσότερα τυπικά σημεία αναφοράς και είναι το καλύτερο μοντέλο ανοιχτού βάρους όσον αφορά το κόστος/απόδοση.

 

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
Εικόνα από Μείγμα ειδικών
 

Το Mixtral 8x7B χρησιμοποιεί ένα δίκτυο με αραιό μείγμα ειδικών μόνο για αποκωδικοποιητή. Αυτό περιλαμβάνει ένα μπλοκ προώθησης που επιλέγει από 8 ομάδες παραμέτρων, με ένα δίκτυο δρομολογητή να επιλέγει δύο από αυτές τις ομάδες για κάθε διακριτικό, συνδυάζοντας τις εξόδους τους επιπρόσθετα. Αυτή η μέθοδος ενισχύει τον αριθμό παραμέτρων του μοντέλου ενώ διαχειρίζεται το κόστος και τον λανθάνοντα χρόνο, καθιστώντας το εξίσου αποτελεσματικό με ένα μοντέλο 12.9B, παρόλο που έχει συνολικές παραμέτρους 46.7B.

Το μοντέλο Mixtral 8x7B διαπρέπει στον χειρισμό ενός ευρέος περιβάλλοντος 32 tokens και υποστηρίζει πολλές γλώσσες, όπως αγγλικά, γαλλικά, ιταλικά, γερμανικά και ισπανικά. Επιδεικνύει ισχυρή απόδοση στη δημιουργία κώδικα και μπορεί να προσαρμοστεί σε ένα μοντέλο που ακολουθεί τις οδηγίες, επιτυγχάνοντας υψηλές βαθμολογίες σε σημεία αναφοράς όπως το MT-Bench.

LLaMA.cpp είναι μια βιβλιοθήκη C/C++ που παρέχει μια διεπαφή υψηλής απόδοσης για μεγάλα γλωσσικά μοντέλα (LLM) που βασίζεται στην αρχιτεκτονική LLM του Facebook. Είναι μια ελαφριά και αποτελεσματική βιβλιοθήκη που μπορεί να χρησιμοποιηθεί για μια ποικιλία εργασιών, όπως δημιουργία κειμένου, μετάφραση και απάντηση ερωτήσεων. Το LLaMA.cpp υποστηρίζει ένα ευρύ φάσμα LLM, συμπεριλαμβανομένων των LLaMA, LLaMA 2, Falcon, Alpaca, Mistral 7B, Mixtral 8x7B και GPT4ALL. Είναι συμβατό με όλα τα λειτουργικά συστήματα και μπορεί να λειτουργήσει τόσο σε CPU όσο και σε GPU.

Σε αυτήν την ενότητα, θα εκτελούμε την εφαρμογή web llama.cpp στο Colab. Γράφοντας μερικές γραμμές κώδικα, θα μπορείτε να ζήσετε τη νέα υπερσύγχρονη απόδοση του μοντέλου στον υπολογιστή σας ή στο Google Colab.

Ξεκινώντας

Αρχικά, θα κατεβάσουμε το αποθετήριο GitHub llama.cpp χρησιμοποιώντας την παρακάτω γραμμή εντολών: 

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

Μετά από αυτό, θα αλλάξουμε τον κατάλογο στο αποθετήριο και θα εγκαταστήσουμε το llama.cpp χρησιμοποιώντας την εντολή «make». Εγκαθιστούμε το llama.cpp για τη GPU NVidia με εγκατεστημένο το CUDA. 

%cd llama.cpp

!make LLAMA_CUBLAS=1

Κατεβάστε το μοντέλο

Μπορούμε να κατεβάσουμε το μοντέλο από το Hugging Face Hub επιλέγοντας την κατάλληλη έκδοση του αρχείου μοντέλου `.gguf`. Περισσότερες πληροφορίες για διάφορες εκδόσεις μπορείτε να βρείτε στο TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF.

 

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
Εικόνα από TheBloke/Mixtral-8x7B-Instruct-v0.1-GGUF
 

Μπορείτε να χρησιμοποιήσετε την εντολή `wget` για να κάνετε λήψη του μοντέλου στον τρέχοντα κατάλογο. 

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

Εξωτερική διεύθυνση για τον διακομιστή LLaMA

Όταν εκτελούμε τον διακομιστή LLaMA, θα μας δώσει μια τοπική διεύθυνση IP που είναι άχρηστη για εμάς στο Colab. Χρειαζόμαστε τη σύνδεση με τον διακομιστή μεσολάβησης localhost χρησιμοποιώντας τη θύρα διακομιστή μεσολάβησης πυρήνα Colab. 

Αφού εκτελέσετε τον παρακάτω κώδικα, θα λάβετε τον καθολικό υπερσύνδεσμο. Θα χρησιμοποιήσουμε αυτόν τον σύνδεσμο για να αποκτήσουμε πρόσβαση στην εφαρμογή web μας αργότερα. 

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

 

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

Εκτέλεση του διακομιστή

Για να εκτελέσετε τον διακομιστή LLaMA C++, πρέπει να δώσετε στην εντολή διακομιστή τη θέση του αρχείου μοντέλου και τον σωστό αριθμό θύρας. Είναι σημαντικό να βεβαιωθείτε ότι ο αριθμός θύρας ταιριάζει με αυτόν που ξεκινήσαμε στο προηγούμενο βήμα για τη θύρα διακομιστή μεσολάβησης.  

%cd /content/llama.cpp

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

 

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
 

Η πρόσβαση στην εφαρμογή web συνομιλίας είναι δυνατή κάνοντας κλικ στον υπερσύνδεσμο της θύρας διακομιστή μεσολάβησης στο προηγούμενο βήμα, καθώς ο διακομιστής δεν εκτελείται τοπικά.

LLaMA C++ Webapp

Πριν αρχίσουμε να χρησιμοποιούμε το chatbot, πρέπει να το προσαρμόσουμε. Αντικαταστήστε το "LLaMA" με το όνομα του μοντέλου σας στην ενότητα προτροπής. Επιπλέον, τροποποιήστε το όνομα χρήστη και το όνομα του bot για να κάνετε διάκριση μεταξύ των απαντήσεων που δημιουργούνται.

 

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
 

Ξεκινήστε τη συνομιλία κάνοντας κύλιση προς τα κάτω και πληκτρολογώντας στην ενότητα συνομιλίας. Μη διστάσετε να κάνετε τεχνικές ερωτήσεις που άλλα μοντέλα ανοιχτού κώδικα δεν έχουν απαντήσει σωστά. 

 

Δωρεάν εκτέλεση Mixtral 8x7b στο Google Colab
 

Εάν αντιμετωπίζετε προβλήματα με την εφαρμογή, μπορείτε να δοκιμάσετε να την εκτελέσετε μόνοι σας χρησιμοποιώντας το Google Colab μου: https://colab.research.google.com/drive/1gQ1lpSH-BhbKN-DdBmq5r8-8Rw8q1p9r?usp=sharing

Αυτό το σεμινάριο παρέχει έναν περιεκτικό οδηγό σχετικά με τον τρόπο εκτέλεσης του προηγμένου μοντέλου ανοιχτού κώδικα, Mixtral 8x7b, στο Google Colab χρησιμοποιώντας τη βιβλιοθήκη LLaMA C++. Σε σύγκριση με άλλα μοντέλα, το Mixtral 8x7b προσφέρει ανώτερη απόδοση και αποδοτικότητα, καθιστώντας το μια εξαιρετική λύση για όσους θέλουν να πειραματιστούν με μεγάλα μοντέλα γλώσσας, αλλά δεν διαθέτουν εκτεταμένους υπολογιστικούς πόρους. Μπορείτε να το εκτελέσετε εύκολα στον φορητό υπολογιστή σας ή σε ένα δωρεάν υπολογιστικό cloud. Είναι φιλικό προς το χρήστη και μπορείτε ακόμη και να αναπτύξετε την εφαρμογή συνομιλίας σας για να τη χρησιμοποιούν και να πειραματίζονται άλλοι.

Ελπίζω να βρήκατε χρήσιμη αυτή την απλή λύση για την εκτέλεση του μεγάλου μοντέλου. Πάντα ψάχνω για απλές και καλύτερες επιλογές. Αν έχετε ακόμα καλύτερη λύση, ενημερώστε με και θα την καλύψω την επόμενη φορά.
 
 

Αμπίντ Αλί Αουάν (@1abidaliawan) είναι πιστοποιημένος επαγγελματίας επιστήμονας δεδομένων που λατρεύει την κατασκευή μοντέλων μηχανικής μάθησης. Επί του παρόντος, εστιάζει στη δημιουργία περιεχομένου και στη σύνταξη τεχνικών ιστολογίων για τη μηχανική μάθηση και τις τεχνολογίες επιστήμης δεδομένων. Ο Abid είναι κάτοχος μεταπτυχιακού τίτλου στη Διοίκηση Τεχνολογίας και πτυχίου στη Μηχανική Τηλεπικοινωνιών. Το όραμά του είναι να δημιουργήσει ένα προϊόν τεχνητής νοημοσύνης χρησιμοποιώντας ένα νευρωνικό δίκτυο γραφημάτων για μαθητές που παλεύουν με ψυχικές ασθένειες.

Σφραγίδα ώρας:

Περισσότερα από KDnuggets