Krav: Jag har tidigare implementerat deepseek-r1:32b-modellen med Ollama, som är mycket bekväm och snabb, lämplig för personlig snabb installation. Om det är en företagsmiljö, hur bör den implementeras? Generellt används vllm och sglang för distribution, och denna artikel använder vLLM för att distribuera DeepSeek-R1-modellen.
Ollama vs. vLLM
Skillnaderna är följande:
| Kontrastdimensioner | Ollama | vLLM | | Kärnplacering | Lättviktslokaliseringsverktyg för enskilda utvecklare och småskaliga experiment | Produktionsnivå-inferensramverk, med fokus på företagsnivåscenarier med hög samtidighet och låg latens | | Maskinvarukrav | Stöder CPU och GPU, låg minnesanvändning (använder kvantiseringsmodell som standard) | Man måste förlita sig på NVIDIA-GPU:er, som har hög minnesanvändning | | Modellstöd | Inbyggt förtränat modellbibliotek (stöder 1700+ modeller), automatisk nedladdning av kvantitativa versioner (främst int4) | Manuell nedladdning av originalmodellfilen (t.ex. HuggingFace-format) stöder ett bredare utbud av modeller | | Svårighetsgrad vid utplacering | Enknappsinstallation och direkt användning utan programmeringsbas | Python-miljö och CUDA-drivrutin krävs, och teknisk erfarenhet krävs | | Prestandaegenskaper | Hastigheten för enkel inferens är snabb, men samtidighetsbearbetningsförmågan är svag | Hög genomströmning, stöd för dynamisk batchbearbetning och tusentals samtidiga förfrågningar | | Resursförvaltning | Justera resursanvändningen flexibelt och frigör automatiskt videominnet när det är inaktivt | Videominnesbeläggningen är fast och resurser måste reserveras för att klara av toppbelastningar |
En kort introduktion till vLLM:er
vLLM är ett snabbt och lättanvänt bibliotek med LLM-inferens och tjänster.
vLLM med nya algoritmer omdefinierar den senaste teknologinivån för LLM-tjänster: . Jämfört med HuggingFace Transformers erbjuder den upp till 24 gånger högre genomströmning utan några förändringar i modellarkitekturen. Genom att halvera hashhastigheten och öka genomströmningen tiofalt jämförde studien vLLM:s genomströmning med det mest populära LLM-biblioteket, HuggingFace Transformers (HF), och den tidigare HuggingFace Text Generation Inference (TGI) med SOTA-genomströmning. Dessutom delade studien in den experimentella uppsättningen i två typer: LLaMA-7B med NVIDIA A10G GPU som hårdvara; Den andra är LLaMA-13B, med NVIDIA A100 GPU (40GB) på hårdvara. De provtog in- och utdatalängder från ShareGPT-datasetet. Resultaten visade att genomströmningen av vLLM var 24 gånger högre än HF och 3,5 gånger högre än TGI.
vLLM-dokumentation:Inloggningen med hyperlänken är synlig. Källkodsadress:Inloggningen med hyperlänken är synlig. Prestandatestning:Inloggningen med hyperlänken är synlig.
Du behöver inte förstå situationen, kon är klar!
Miljöförberedelse
Jag köpte Tencent Clouds högpresterande applikationstjänster och konfigurerade dem enligt följande:
Ubuntu 20.04 Miljökonfiguration: Ubuntu 20.04, drivrutin 525.105.17, Python 3.8, CUDA 12.0, cuDNN 8 Datorkraftstyp: Tvåkorts GPU-grundtyp - 2*16GB+ | 16+TFlops SP | CPU - 16 kärnor | RAM - 64GB
Installera Conda
Skapa en Python-miljö med Conda, klistra in skriptet direkt:
Distribuera DeepSeek-R1 med en vLLM
Skapa en pythonmiljö med conda med följande kommando:
Installera vllm och modelscope med följande kommandon:
Ladda ner DeepSeek-R1-modellen med modelscope med följande kommando:
Hänvisning:Inloggningen med hyperlänken är synlig.
Starta deepseek-modellen med vllm med följande kommando:
Om du stöter på "Bfloat16 stöds endast på GPU:er med en beräkningskapacitet på minst 8,0. Ditt Tesla T4-grafikkort har beräkningskapacitet 7,5. Du kan använda float16 istället genom att explicit sätta flaggan 'dtype' i CLI, till exempel: --dtype=halv." Varning, lägg bara till parametrar enligt varningen.
Anmärkning:
- --tensor-parallell-storlek och GPU-räkningsinställningar
- --gpu-minnesanvändning styr andelen minne som används
- --served-model-name Modellnamnet som används i API:et
- --inaktivera-loggförfrågningar inaktiverar loggförfrågningar
vLLM Linux GPU-installationsdokumentation:Inloggningen med hyperlänken är synlig. Motorparametrar:Inloggningen med hyperlänken är synlig.
Kolla in GPU-statusen nedan:
Använd Postman-tester
Webbläsare öppen:http://ip:8000/ Gränssnittsdokumentation:http://ip:8000/docs
Brevbärarens rop, som visas i följande bild:
Riktmärkning
Ladda ner testkoden med följande kommando:
Kommandot utförs enligt följande:
Resultat: Genomströmning: 2,45 förfrågningar/s, totalt 1569,60 tokens/s, 1255,68 utmatningstokens/s
(Slut) |