Zahteve: Prej sem uporabljal model deepseek-r1:32b z Ollama, ki je zelo priročen in hiter, primeren za osebno hitro uporabo. Če gre za produkcijsko okolje za podjetja, kako naj ga namestimo? Na splošno se za uvajanje uporabljata vllm in sglang, ta članek pa uporablja vLLM za uvajanje modela DeepSeek-R1.
Ollama proti vLLM
Razlike so naslednje:
| Dimenzije kontrasta | Ollama | vLLM | | Pozicioniranje jedra | Lahka lokalizacijska orodja za posamezne razvijalce in manjše eksperimente | Sklepni okvir na produkcijski ravni, osredotočen na scenarije na ravni podjetja z visoko sočasnostjo in nizko zakasnitvijo | | Strojne zahteve | Podpira CPU in GPU, nizka pomnilniška poraba (privzeto uporablja kvantizacijski model) | Zanašati se je na NVIDIA grafične kartice, ki imajo veliko porabo pomnilnika | | Podpora modelom | Vgrajena knjižnica vnaprej treniranih modelov (podpira 1700+ modelov), samodejni prenos kvantitativnih različic (predvsem int4) | Ročni prenos izvirne datoteke modela (npr. format HuggingFace) podpira širši nabor modelov | | Težavnost uvedbe | Namestitev z enim gumbom in uporaba takoj iz škatle brez potrebe po programski osnovi | Potrebno je Python okolje in gonilnik CUDA, prav tako tehnične izkušnje | | Značilnosti zmogljivosti | Hitrost enojne inference je hitra, vendar je sposobnost sočasnega procesiranja šibka | Visoka prepustnost, podpora dinamičnemu serijskemu procesiranju in tisoči sočasnih zahtevkov | | Upravljanje virov | Prilagodljivo prilagajanje uporabe virov in samodejno sprostitev video pomnilnika v mirovanju | Zasedenost video pomnilnika je fiksna, viri pa morajo biti rezervirani za obvladovanje vršnih obremenitev |
Kratek uvod v vLLM
vLLM je hitra in enostavna za uporabo knjižnica sklepanja in storitev LLM.
vLLM z novimi algoritmi na novo opredeljuje najnovejšo tehnološko raven LLM storitev: . V primerjavi z HuggingFace Transformers ponuja do 24-krat večjo prepustnost brez kakršnihkoli sprememb arhitekture modela. S prepolovico hashrate in desetkratnim povečanjem prepustnosti je študija primerjala prepustnost vLLM z najbolj priljubljeno knjižnico LLM, HuggingFace Transformers (HF), in prejšnjo HuggingFace Text Generation Inference (TGI) s SOTA prepustnostjo. Poleg tega je študija eksperimentalno postavitev razdelila na dve vrsti: LLaMA-7B z NVIDIA A10G GPU kot strojno opremo; Drugi je LLaMA-13B, z NVIDIA A100 grafično kartico (40GB) na strojni opremi. Vzeli so vzorce dolžin vhodnih in izhodnih podatkov iz ShareGPT podatkovnega nabora. Rezultati so pokazali, da je bila prepustnost vLLM 24-krat višja od HF in 3,5-krat višja od TGI.
vLLM dokumentacija:Prijava do hiperpovezave je vidna. Naslov izvorne kode:Prijava do hiperpovezave je vidna. Testiranje zmogljivosti:Prijava do hiperpovezave je vidna.
Ni ti treba razumeti slike, krava je končana!
Okoljska priprava
Kupil sem visokozmogljive aplikacijske storitve Tencent Cloud in jih konfiguriral na naslednji način:
Ubuntu 20.04 Konfiguracija okolja: Ubuntu 20.04, gonilnik 525.105.17, Python 3.8, CUDA 12.0, cuDNN 8 Tip računske moči: Osnovni tip GPU z dvema karticama - 2*16GB+ | 16+TFlops SP | CPU - 16 jeder | RAM - 64GB
Namestite Condo
Ustvari python okolje s condo, prilepi skripto neposredno:
Namestitev DeepSeek-R1 z uporabo vLLM
Ustvarite python okolje s condo z naslednjim ukazom:
Namestite vllm in modelscope z naslednjimi ukazi:
Prenesite model DeepSeek-R1 z uporabo modelscope z naslednjim ukazom:
Referenčni:Prijava do hiperpovezave je vidna.
Začnite model deepseek z uporabo vllm z naslednjim ukazom:
Če naletite na "Bfloat16", je podprt samo na grafičnih karticah z računsko zmogljivostjo vsaj 8.0. Vaša Tesla T4 grafična kartica ima računalniško zmogljivost 7,5. Namesto tega lahko uporabite float16 z eksplicitno nastavitvijo zastavice 'dtype' v CLI, na primer: --dtype=half." Opozorilo, samo dodajte parametre glede na opozorilo.
Pripombo:
- --nastavitve velikosti tenzorja in števila GPU
- --GPU-Izraba pomnilnika nadzoruje odstotek uporabljenega pomnilnika
- --served-model-name Ime modela, uporabljeno v API-ju
- --disable-log-requests onemogoči zahteve za beleženje
Dokumentacija za namestitev vLLM Linux GPU:Prijava do hiperpovezave je vidna. Parametri motorja:Prijava do hiperpovezave je vidna.
Preverite stanje grafične kartice, kot je prikazano spodaj:
Uporabite teste poštarja
Odprt brskalnik:http://ip:8000/ Dokumentacija vmesnika:http://ip:8000/docs
Poštarski klic, kot je prikazano na naslednji sliki:
Benchmarking
Prenesite testno kodo z naslednjim ukazom:
Ukaz se izvede na naslednji način:
Rezultat: Prepustnost: 2,45 zahtev/s, 1569,60 skupaj žetonov/s, 1255,68 izhodnih žetonov/s
(Konec) |