απαιτήσεις: Έχω αναπτύξει στο παρελθόν το μοντέλο deepseek-r1:32b με το Ollama, το οποίο είναι πολύ βολικό και γρήγορο, κατάλληλο για προσωπική γρήγορη ανάπτυξη. Εάν πρόκειται για περιβάλλον παραγωγής επιχείρησης, πώς πρέπει να αναπτυχθεί; Γενικά, το vllm και το sglang χρησιμοποιούνται για ανάπτυξη και αυτό το άρθρο χρησιμοποιεί το vLLM για την ανάπτυξη του μοντέλου DeepSeek-R1.
Ollama εναντίον vLLM
Οι διαφορές είναι οι εξής:
| Διαστάσεις αντίθεσης | Ολλάμα | vLLM | | Τοποθέτηση πυρήνα | Ελαφριά εργαλεία τοπικής προσαρμογής για μεμονωμένους προγραμματιστές και πειράματα μικρής κλίμακας | Πλαίσιο συμπερασμάτων σε επίπεδο παραγωγής, εστιάζοντας σε σενάρια σε επίπεδο επιχείρησης με υψηλή ταυτοχρονία και χαμηλή καθυστέρηση | | Απαιτήσεις υλικού | Υποστηρίζει CPU και GPU, χαμηλό αποτύπωμα μνήμης (χρησιμοποιεί μοντέλο κβαντισμού από προεπιλογή) | Πρέπει να βασίζεται σε GPU NVIDIA, οι οποίες έχουν υψηλή χρήση μνήμης | | Υποστήριξη μοντέλου | Ενσωματωμένη προεκπαιδευμένη βιβλιοθήκη μοντέλων (υποστηρίζει 1700+ μοντέλα), αυτόματη λήψη ποσοτικών εκδόσεων (κυρίως int4) | Η μη αυτόματη λήψη του αρχικού αρχείου μοντέλου (π.χ. μορφή HuggingFace) υποστηρίζει ένα ευρύτερο φάσμα μοντέλων | | Δυσκολία ανάπτυξης | Εγκατάσταση με ένα κουμπί και χρήση εκτός συσκευασίας χωρίς να απαιτείται βάση προγραμματισμού | Απαιτείται περιβάλλον Python και πρόγραμμα οδήγησης CUDA και απαιτείται τεχνική εμπειρία | | Χαρακτηριστικά απόδοσης | Η ταχύτητα ενός συμπεράσματος είναι γρήγορη, αλλά η ικανότητα επεξεργασίας συγχρονισμού είναι αδύναμη | Υψηλή απόδοση, υποστήριξη για δυναμική επεξεργασία παρτίδων και χιλιάδες ταυτόχρονα αιτήματα | | Διαχείριση πόρων | Προσαρμόστε τη χρήση πόρων με ευελιξία και απελευθερώστε αυτόματα τη μνήμη βίντεο όταν είναι αδρανής | Η πληρότητα της μνήμης βίντεο είναι σταθερή και πρέπει να δεσμευτούν πόροι για την αντιμετώπιση των φορτίων αιχμής |
Μια σύντομη εισαγωγή στα vLLM
Το vLLM είναι μια γρήγορη και εύχρηστη βιβλιοθήκη συμπερασμάτων και υπηρεσιών LLM.
Το vLLM με νέους αλγόριθμους επαναπροσδιορίζει το τελευταίο επίπεδο τεχνολογίας των υπηρεσιών LLM: . Σε σύγκριση με το HuggingFace Transformers, προσφέρει έως και 24 φορές υψηλότερη απόδοση χωρίς αλλαγές στην αρχιτεκτονική του μοντέλου. Μειώνοντας κατά το ήμισυ το hashrate και αυξάνοντας την απόδοση δέκα φορές, η μελέτη συνέκρινε την απόδοση του vLLM με την πιο δημοφιλή βιβλιοθήκη LLM, το HuggingFace Transformers (HF) και το προηγούμενο HuggingFace Text Generation Inference (TGI) με απόδοση SOTA. Επιπλέον, η μελέτη χώρισε την πειραματική εγκατάσταση σε δύο τύπους: LLaMA-7B με GPU NVIDIA A10G ως υλικό. Το άλλο είναι το LLaMA-13B, με GPU NVIDIA A100 (40 GB) σε υλικό. Έκαναν δειγματοληψία μήκους εισόδου/εξόδου από το σύνολο δεδομένων ShareGPT. Τα αποτελέσματα έδειξαν ότι η απόδοση του vLLM ήταν 24 φορές υψηλότερη από το HF και 3,5 φορές υψηλότερη από το TGI.
Τεκμηρίωση vLLM:Η σύνδεση με υπερσύνδεσμο είναι ορατή. Διεύθυνση πηγαίου κώδικα:Η σύνδεση με υπερσύνδεσμο είναι ορατή. Δοκιμή απόδοσης:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Δεν χρειάζεται να καταλάβετε την εικόνα, η αγελάδα τελείωσε!
Περιβαλλοντική προετοιμασία
Αγόρασα υπηρεσίες εφαρμογών υψηλής απόδοσης Tencent Cloud και τις διαμόρφωσα ως εξής:
Το Ubuntu 20.04 Διαμόρφωση περιβάλλοντος: Ubuntu 20.04, Driver 525.105.17, Python 3.8, CUDA 12.0, cuDNN 8 Τύπος υπολογιστικής ισχύος: Βασικός τύπος GPU δύο καρτών - 2*16GB+ | 16+TFlops SP | CPU - 16 πυρήνες | ΕΜΒΟΛΟ - 64GB
Εγκαταστήστε το Conda
Δημιουργήστε ένα περιβάλλον python με το conda, επικολλήστε απευθείας το σενάριο:
Αναπτύξτε το DeepSeek-R1 χρησιμοποιώντας ένα vLLM
Δημιουργήστε ένα περιβάλλον python με conda με την ακόλουθη εντολή:
Εγκαταστήστε το vllm και το modelscope με τις ακόλουθες εντολές:
Κατεβάστε το μοντέλο DeepSeek-R1 χρησιμοποιώντας το modelscope με την ακόλουθη εντολή:
Αναφορά:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Ξεκινήστε το μοντέλο deepseek χρησιμοποιώντας το vllm με την ακόλουθη εντολή:
Εάν συναντήσετε "Το Bfloat16 υποστηρίζεται μόνο σε GPU με υπολογιστική ικανότητα τουλάχιστον 8.0. Η GPU Tesla T4 έχει υπολογιστική ικανότητα 7.5. Μπορείτε να χρησιμοποιήσετε το float16 ορίζοντας ρητά τη σημαία 'dtype' στο CLI, για παράδειγμα: --dtype=half." Προειδοποίηση, απλώς προσθέστε παραμέτρους σύμφωνα με την προειδοποίηση.
Παρατήρηση:
- --Ρυθμίσεις τανυστή-παράλληλου μεγέθους και μέτρησης GPU
- --gpu-memory-utilization ελέγχει το ποσοστό της μνήμης που χρησιμοποιείται
- --served-model-name Το όνομα μοντέλου που χρησιμοποιείται στο API
- --disable-log-requests απενεργοποιεί τα αιτήματα καταγραφής
Τεκμηρίωση εγκατάστασης vLLM Linux GPU:Η σύνδεση με υπερσύνδεσμο είναι ορατή. Παράμετροι κινητήρα:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Ελέγξτε την κατάσταση της GPU όπως φαίνεται παρακάτω:
Χρησιμοποιήστε τα τεστ Postman
Ανοιχτό πρόγραμμα περιήγησης:http://ip:8000/ Τεκμηρίωση διεπαφής:http://ip:8000/docs
Κλήση ταχυδρόμου, όπως φαίνεται στην παρακάτω εικόνα:
Συγκριτική αξιολόγηση
Κατεβάστε τον κώδικα δοκιμής με την ακόλουθη εντολή:
Η εντολή εκτελείται ως εξής:
Αποτέλεσμα: Απόδοση: 2,45 αιτήματα/s, 1569,60 συνολικά token/s, 1255,68 token/s εξόδου
(Τέλος) |