Данила (Dayfing)
Жарияланымдарға оралу
2 886 сөз15 мин

2026 жылы жергілікті LLM үшін жабдық: VRAM, жад өткізу қабілеті, кванттау

Open-weight тілдік модельді жергілікті іске қосу үшін есептеуді орындайтын құрылғыда үш нәрсеге жететін жылдам жад болуы керек: квантталған салмақтарға, контекст ұзындығы мен қатар сұраулар санына арналған KV-кэшке және орындау ортасының қорына. Жад көлемі қай модельдің сыйятынын, жад өткізу қабілеті мәтін генерациясының жылдамдығын, ал есептеу қуаты ұзын промптты оқу жылдамдығын анықтайды. Қарапайым ереже бойынша 16 ГБ GPU 8B класындағы модельдермен жақсы жұмыс істейді, 24–32 ГБ 4 биттік кванттаудағы 32B класына жетеді, ал 70B класындағы модельдерге шамамен 48 ГБ немесе одан көп керек: жұмыс станциясының картасы, екі GPU немесе бірыңғай жады бар машина.

Жад формуласы

Кез келген есеп бір қосындыдан басталады:

memory ≈ weights + KV cache + runtime overhead

weights  = parameters × bits per weight / 8
KV cache = 2 × layers × kv_heads × head_dim × bytes per element × tokens in flight

70,6 млрд параметрі бар модельдің салмақтарына 16 битте шамамен 141 ГБ, ал бір салмаққа 4,8 бит болғанда шамамен 42 ГБ керек.

KV-кэш модель контексте ұстап тұрған әр токен үшін назар механизмінің кілттері мен мәндерін сақтайды, сондықтан ол промпт пен жауаптың әр токенімен өседі. 2 көбейткіші кілттер мен мәндерді ескереді, ал қалған шамалар модельдің config.json файлынан алынады: num_hidden_layers, num_key_value_heads және head_dim. Қазіргі модельдердің көбі grouped-query attention қолданады, онда KV бастары сұрау бастарынан әлдеқайда аз.

Орындау ортасының үстеме шығыны CUDA, ROCm немесе Metal контексін және есептеу буферлерін қамтиды. llama.cpp үшін әр құрылғыға 1–2 ГиБ қарастырыңыз: оның автоматты орналастыруы әдепкі бойынша әр құрылғыда 1024 МиБ қор қалдырады. Үлкен батчтарға жадты алдын ала брондайтын серверлерге бұдан көп керек. Бірыңғай жады бар машиналарда операциялық жүйеге де орын қалдырыңыз.

KV-кэш контекст пен қатарлықпен бірге өседі

Бір токеннің құны конфигурациядан тікелей шығады:

Llama 3.1 8B:   2 × 32 layers × 8 kv_heads × 128 head_dim × 2 bytes = 128 KiB per token
Qwen3-32B:      2 × 64 layers × 8 kv_heads × 128 head_dim × 2 bytes = 256 KiB per token
Llama 3.3 70B:  2 × 80 layers × 8 kv_heads × 128 head_dim × 2 bytes = 320 KiB per token

32 768 токенде 16 биттік кэш үшін бұл 4, 8 және 10 ГиБ болады. 131 072 токенде 70B моделінің кэші 40 ГиБ-қа жетеді, яғни оның 4 биттік салмақтарымен тең.

Қатар сұраулар кэшті еселейді: әрқайсысында 16K токендік диалогы бар төрт пайдаланушыға бір 64K диалогқа керек көлем қажет. vLLM салмақтарды жүктегеннен кейін қалған жадтан KV пулын жасайды, ал llama-server бір контекст бюджетін (-c) слоттар (--parallel) арасында бөліседі. Жергілікті LLM инференс серверлері туралы нұсқаулықта әр сервер бұл пулды қалай бөлетіні түсіндірілген.

Кэшті екі тәсілмен кішірейтуге болады. 8 биттік кэш, llama.cpp-те -ctk q8_0 -ctv q8_0 немесе vLLM-де --kv-cache-dtype fp8, оны шамамен екі есе азайтады, ал контексті қосымша шынымен қолданатын ұзындықпен шектеу ештеңеге тұрмайды. Sliding-window, гибридті назар және multi-head latent attention бір токенге азырақ дерек сақтайды, сондықтан llama.cpp модельді жүктегенде шығаратын KV-буфер көлемін тексеріңіз.

8B, 32B және 70B модельдеріне есеп

llama.cpp кванттау құжаттамасы Llama 3.1 8B-де өлшенген бір салмаққа келетін бит санын келтіреді: Q8_0 — 8,50, Q6_K — 6,56, Q5_K_M — 5,70, Q4_K_M — 4,89, IQ4_XS — 4,46 және Q3_K_M — 4,00. Үлкен модельдерде мәндер сәл төмен: Qwen3-32B мен Llama 3.3 70B үшін жарияланған Q4_K_M файлдары шамамен 4,8 береді. Мына скрипт формуланы 32K контекст пен 1,5 ГиБ үстеме шығынға қолданады:

GiB = 2**30

def weights_gib(params, bits_per_weight):
    return params * bits_per_weight / 8 / GiB

def kv_gib(layers, kv_heads, head_dim, tokens, bytes_per_elem=2):
    return 2 * layers * kv_heads * head_dim * bytes_per_elem * tokens / GiB

models = {
    "Llama 3.1 8B": (8.03e9, 32),
    "Qwen3-32B": (32.76e9, 64),
    "Llama 3.3 70B": (70.55e9, 80),
}

for name, (params, layers) in models.items():
    kv = kv_gib(layers, 8, 128, 32768)
    for quant, bpw in (("BF16", 16.0), ("Q8_0", 8.5), ("Q4_K_M", 4.85)):
        w = weights_gib(params, bpw)
        print(f"{name:14} {quant:7} weights {w:6.1f} GiB  KV@32K {kv:5.1f} GiB  total {w + kv + 1.5:6.1f} GiB")
Llama 3.1 8B   BF16    weights   15.0 GiB  KV@32K   4.0 GiB  total   20.5 GiB
Llama 3.1 8B   Q8_0    weights    7.9 GiB  KV@32K   4.0 GiB  total   13.4 GiB
Llama 3.1 8B   Q4_K_M  weights    4.5 GiB  KV@32K   4.0 GiB  total   10.0 GiB
Qwen3-32B      BF16    weights   61.0 GiB  KV@32K   8.0 GiB  total   70.5 GiB
Qwen3-32B      Q8_0    weights   32.4 GiB  KV@32K   8.0 GiB  total   41.9 GiB
Qwen3-32B      Q4_K_M  weights   18.5 GiB  KV@32K   8.0 GiB  total   28.0 GiB
Llama 3.3 70B  BF16    weights  131.4 GiB  KV@32K  10.0 GiB  total  142.9 GiB
Llama 3.3 70B  Q8_0    weights   69.8 GiB  KV@32K  10.0 GiB  total   81.3 GiB
Llama 3.3 70B  Q4_K_M  weights   39.8 GiB  KV@32K  10.0 GiB  total   51.3 GiB

8B моделі Q4_K_M-де 12 ГБ картаға, ал Q8_0-де 16 ГБ картаға сыяды, сондықтан 16 ГБ картада көлем себебімен Q6_K-ден төмен түсудің қажеті жоқ. Q4_K_M-дегі 32B моделіне толық 32K кэшпен 32 ГБ карта керек; 24 ГБ картада ол 16K контекст пен 8 биттік кэшпен шамамен 22 ГиБ алып сыяды. Q4_K_M-дегі 70B моделіне шамамен 51 ГиБ керек: екі 32 ГБ GPU, 72 немесе 96 ГБ жұмыс станциясы картасы, не 64 ГБ немесе одан көп бірыңғай жад. 48 ГБ карта оны шамамен 8K контекспен іске қосады, ал Q8_0 үшін 96 ГБ карта немесе 128 ГБ бірыңғай жад қажет.

Кванттау форматтары және олардың бағасы

Кванттау салмақтарды азырақ битпен және әр блокқа арналған масштабтармен сақтайды. Ол жадты үнемдеп, генерацияны жылдамдатады, бірақ қателік қосады.

GGUF-тағы K-quants және I-quants

GGUF — llama.cpp файл форматы, оны Ollama мен LM Studio да қолданады. Q4_K_M және Q6_K сияқты K-quants салмақтарды блоктармен кванттап, сезімтал тензорларды дәлірек типте қалдырады. IQ4_XS сияқты I-quants салмақтарды тығызырақ орайды. Екі отбасы да калибрлеу мәтінінде есептелген маңыздылық матрицасынан (imatrix) ұтады, ал llama.cpp құжаттамасы олардың шығынын perplexity және Кульбак — Лейблер дивергенциясы арқылы өлшейді. GGUF CUDA, ROCm, Vulkan, Metal және CPU-да жұмыс істейді, сондықтан ең тасымалды нұсқа осы.

8 бит және FP8

Q8_0 — GGUF-тың 8 биттік типі. GPU серверлерінде кең тараған 8 биттік формат — FP8. vLLM-нің FP8 құжаттамасы бойынша FP8 есептеулері NVIDIA compute capability 8.9 немесе одан жоғары (Ada Lovelace, Hopper, Blackwell) талап етеді, ескі GPU-лар weight-only W8A16 ядроларына ауысады, ал FP8 модель жадын екі есе қысқартып, өнімділікті 1,6 есеге дейін арттырады және дәлдікке ең аз әсер етеді.

AWQ, GPTQ және 4 биттік жылжымалы үтір

AWQ және GPTQ — vLLM мен SGLang сияқты GPU серверлеріне арналған 4 биттік weight-only әдістер. Олар салмақ топтарына масштабтарды калибрлейді, активацияларды 16 битте қалдырады, әрі көптеген модель авторлары мұндай нұсқаларды өздері жариялайды, мысалы Qwen/Qwen3-32B-AWQ. Blackwell GPU-лары аппараттық FP4 математикасын қосады, ал OpenAI-дың gpt-oss модельдері сарапшы салмақтарын MXFP4 форматында сақтайды.

Сапаны қаншалық жоғалтасыз

8 биттік форматтарды әдетте BF16-дан ажырату қиын. Q6_K және Q5_K_M perplexity-ді аздап, бірақ өлшенетіндей арттырады және жад жетсе, қауіпсіз таңдау болып қала береді. 4 бит — әдеттегі ымыра: шығын өлшенеді, әрі ол ұсақ қателердің маңызы зор жерде, яғни кодта, математикада және ұзын контекстен деректі дәл алуда көбірек байқалады. 4 биттен төмен қателік тез өседі, ал кіші модельдер үлкендеріне қарағанда көбірек зардап шегеді. Бірдей жадта 4 биттегі үлкенірек модель 8 биттегі кішісінен жиі озады, бірақ мұны AI агенттерін бағалау нұсқаулығында сипатталғандай, өз тапсырмаларыңызда тексеріңіз.

Өткізу қабілеті генерация жылдамдығын, есептеу промпт жылдамдығын анықтайды

Тығыз модельмен бір токен генерациялау әр салмақты бір рет, сонымен қатар ағымдағы контекстің KV-кэшін оқиды. Батч өлшемі 1 болғанда деректі тасымалдау басым болады, сондықтан шек қарапайым есептеледі:

decode tokens/s ≤ memory bandwidth / bytes read per token
bytes read per token ≈ weight bytes (dense) or active-expert bytes (MoE) + KV cache bytes at current depth

Llama 3.3 70B Q4_K_M файлы 42,5 ГБ, сондықтан шек 1792 ГБ/с-та секундына шамамен 42 токен, 614 ГБ/с-та 14 және 256 ГБ/с-та 6 болады. 8B Q4_K_M файлы (4,9 ГБ) 448 ГБ/с-та секундына шамамен 91 токен алады. Нақты орындау орталары бұл шектерден төмен жұмыс істейді және контекст өскен сайын баяулайды: 32K-да 70B моделінің кэші әр токенге шамамен 10,7 ГБ оқуды қосады.

llama.cpp кванттау кестесі бұл заңдылықты Llama 3.1 8B бар бір машинада көрсетеді: генерация F16-да секундына шамамен 29 токеннен Q8_0-де 51-ге және Q4_K_M-де 72-ге дейін өседі, ал промптты өңдеу барлық типтерде секундына шамамен 700-ден 920 токенге дейінгі аралықта қалады.

Промптты өңдеу жүздеген токендік батчтармен жүреді, сондықтан салмақты әр оқу көп токенге қызмет етеді, ал шектеу матрицалық өнімділікке ауысады. Жұмыс көлемі шамамен 2 × parameters × prompt tokens операция, яғни 32B моделінде 8000 токендік промпт үшін шамамен 5 × 10^14. Бұл retrieval-augmented generation-да бірінші токенге дейінгі уақытты анықтайды, мұнда промпт pgvector гибридті іздеу схемасындағыдай табылған үзінділерді алып жүреді, сондай-ақ үлкен файлдар жіберетін код агенттерінде де. Екі сипаттаманы да қараңыз: NVIDIA DGX Spark-та 273 ГБ/с кезінде генерация шегі қарапайым, бірақ NVIDIA оның GB10 чипін сиретілген FP4 есептеуінде 1 PFLOP-қа дейін бағалайды.

Батчинг бір салмақ оқуымен көп тізбекке қызмет етеді, сондықтан сервердің өткізу қабілеті есептеу немесе кэш таусылғанша өседі. Ал агент циклдері үшін бір сұраудың кідірісі маңызды, өйткені әр қадам алдыңғы шақыруды күтеді; бұл туралы production AI агентінің архитектурасы туралы нұсқаулықта айтылған.

Mixture-of-experts (MoE) модельдері бұл шектеулерді бөледі: жад параметрлердің жалпы санымен, ал генерация жылдамдығы белсенді параметрлермен анықталады. gpt-oss-120b моделінде 117 млрд параметр бар, оның 5,1 млрд белсенді, әрі оның модель картасында бір 80 ГБ GPU-ға сыятыны айтылған; оның MXFP4 GGUF файлы 63,4 ГБ. gpt-oss-20b 16 ГБ шегінде жұмыс істейді. Сондықтан көлемі үлкен, бірақ өткізу қабілеті орташа машиналар пайдалы болып қала береді.

Мүмкіндіктер бойынша жабдық нұсқалары

VRAM кластары бойынша NVIDIA GPU-лары

NVIDIA GPU-ларының орындау орталары тарапынан қолдауы ең кең, өйткені vLLM, SGLang, TensorRT-LLM және llama.cpp CUDA-ны эталондық платформа деп санайды. Алдымен көлемді, содан кейін класс ішіндегі өткізу қабілетін салыстырыңыз: 16 ГБ GeForce карталары бірдей модельдерді іске қосады, бірақ RTX 5080-нің өткізу қабілеті RTX 5060 Ti-дан екі еседен астам жоғары. RTX PRO 6000 Blackwell 8 биттегі 70B моделін бір картаға сыйғызады. GeForce RTX 50 карталары NVLink-ті қолдамайды, сондықтан бірнеше GPU арасындағы алмасу PCIe арқылы жүреді.

Бірыңғай жад: Apple Silicon, Ryzen AI Max, DGX Spark

Бірыңғай жады бар жүйелер CPU мен GPU-ға ортақ LPDDR пулын береді: модельге тұтынушылық GPU-лардан әлдеқайда көп жад, бірақ жылдам GDDR7 картасына қарағанда төменірек өткізу қабілеті, Apple-дың ең жоғары чипінен басқа. Mac Studio үшін Apple 96 ГБ-тан басталатын M5 Ultra ұсынады, 512 ГБ конфигурациясы қазан айының соңында шығатынын хабарлайды және Thunderbolt 5 пен RDMA арқылы кластерлеуді қолдайды; орындау орталарының ішінде Metal-дағы llama.cpp және MLX бар. AMD-дің Ryzen AI Max+ 395 процессоры 256 биттік LPDDR5x-8000 интерфейсін қолданады, бұл 256 ГБ/с береді, ал Ryzen AI Max+ PRO 495 LPDDR5x-8533-ке көшеді, әрі OEM жүйелері 2026 жылдың үшінші тоқсанына жарияланған; llama.cpp екеуінде де ROCm немесе Vulkan арқылы жұмыс істейді. NVIDIA DGX Spark CUDA стекін қолданады және құрылғыларды біріктіруге арналған 200 Гбит/с ConnectX-7 порты бар.

Шек формуласы бойынша бұл машиналар тығыз 70B модельдерін секундына бірнеше токеннен бірнеше ондаған токенге дейінгі жылдамдықпен, ал MoE модельдерін әлдеқайда жылдам іске қосады. Олардың GPU-лары 575 Вт картаға қарағанда әлдеқайда аз қуат бюджетінде жұмыс істейді, сондықтан бірінші токенге дейінгі уақытты нақты промпттармен өлшеңіз.

Платформа Модельге арналған жад Өткізу қабілеті Қуат 32K контекстегі тығыз модель
GeForce RTX 5060 Ti 16 GB 16 ГБ GDDR7 448 ГБ/с 180 Вт Q8_0-дегі 8B
GeForce RTX 5070 Ti / 5080 16 ГБ GDDR7 896 / 960 ГБ/с 300 / 360 Вт Q8_0-дегі 8B
GeForce RTX 5090 32 ГБ GDDR7 1792 ГБ/с 575 Вт Q4_K_M-дегі 32B
RTX PRO 4000 / 4500 Blackwell 24 / 32 ГБ GDDR7 ECC 672 / 896 ГБ/с 145 / 200 Вт 4 биттегі 32B
RTX PRO 5000 Blackwell 48 немесе 72 ГБ GDDR7 ECC 1344 ГБ/с 300 Вт Q8_0-дегі 32B, 72 ГБ-та Q4_K_M-дегі 70B
RTX PRO 6000 Blackwell 96 ГБ GDDR7 ECC 1792 ГБ/с 600 Вт немесе 300 Вт (Max-Q) Q8_0-дегі 70B
DGX Spark 128 ГБ LPDDR5x 273 ГБ/с 240 Вт қуат блогы Q8_0-дегі 70B
Ryzen AI Max+ 395 128 ГБ, графикаға 96 ГБ-қа дейін 256 ГБ/с 45–120 Вт Q6_K-дегі 70B
Ryzen AI Max+ PRO 495 192 ГБ, графикаға 160 ГБ-қа дейін шамамен 273 ГБ/с 45–120 Вт Q8_0-дегі 70B
Mac Studio, M5 Max 128 ГБ-қа дейін 614 ГБ/с-қа дейін жүйе максимумы 480 Вт Q8_0-дегі 70B
Mac Studio, M5 Ultra 512 ГБ-қа дейін 1,2 ТБ/с жүйе максимумы 480 Вт BF16-дағы 70B

Соңғы баған жоғарыдағы бір пайдаланушыға арналған есептерден шығады. Кесте баға мен сапа арақатынасын емес, мүмкіндіктерді сипаттайды.

Бірнеше GPU және CPU-ға жүктеу

Екі GPU көлемді екі есе арттырады, бірақ жылдамдық бөлу тәсіліне байланысты. llama.cpp-тің әдепкі режимі болып табылатын қабаттар бойынша бөлуде әр GPU қабаттардың бір бөлігін және олардың KV-кэшін сақтайды, ал батч 1 болғанда GPU-лар кезекпен жұмыс істейді: көлем көбірек, генерация жылдамдығы сол қалпы. Әр токенге PCIe арқылы тек шағын активациялар өтеді, сондықтан x8 немесе x4 байланыстары жеткілікті. Тензорлық параллелизмде (vLLM-де --tensor-parallel-size 2) екі GPU әр қабаттың өз үлесін бір мезгілде оқиды, бұл шекті көтереді, бірақ әр қабат PCIe арқылы синхрондалады. vLLM тензорлық параллелизмі бірдей GPU-ларға арналған, ал GPU саны модельдің назар бастарының санын бөлуі тиіс.

CPU-ға жүктеу қабаттардың бір бөлігін жүйелік жадта қалдырады, оларды процессор орындайды. Бір токенге кететін уақыт қосындыға айналады: GPU-дағы байттар VRAM өткізу қабілетіне бөлінеді, оған CPU-дағы байттардың RAM өткізу қабілетіне бөліндісі қосылады. Екі арналы DDR5-6000 теориялық түрде 96 ГБ/с береді (2 арна × 8 байт × 6000 MT/s), ал арналар мен жиіліктердің қалай үйлесетіні DDR5 жады туралы нұсқаулықта талданған. GPU-да 24 ГБ, RAM-да 18,5 ГБ орналасқан 70B Q4_K_M моделі секундына 5 токеннен аспайды. Жүктеу жылдамдық мәселесін емес, көлем мәселесін шешеді.

MoE модельдері әлдеқайда жақсы жүктеледі. --cpu-moe және --n-cpu-moe N сарапшы салмақтарын RAM-да ұстайды, ал назар мен KV-кэш GPU-да қалады, әрі әр токенге тек белсенді сарапшылар оқылады. -ngl берілмесе, llama.cpp-тің жаңа жинақтары қабаттар санын өзі таңдайды (--fit әдепкі бойынша қосулы); қайталанатын нәтиже керек болса, оны анық көрсетіңіз. Төмендегі командалар ішінара жүктелген тығыз модельді, сарапшылары RAM-дағы MoE моделін және үлкенірек GPU-ға басымдық берілген қабаттар бойынша бөлуді көрсетеді:

llama-server -m Llama-3.3-70B-Instruct-Q4_K_M.gguf -c 16384 -ngl 48 -fa on

llama-server -hf ggml-org/gpt-oss-120b-GGUF -c 32768 -ngl all --n-cpu-moe 24 -fa on

llama-server -m Qwen_Qwen3-32B-Q8_0.gguf -c 32768 -ngl all --split-mode layer --tensor-split 3,2

Қуат, салқындату, PCIe желілері және жүйелік жад

GeForce RTX 5090 үшін NVIDIA 575 Вт графикалық қуатты және жүйеге қажет 1000 Вт қуатты көрсетеді. RTX PRO 6000-тің 300 Вт Max-Q нұсқасы 600 Вт модельмен бірдей жад көлемін сақтайды, бұл бір корпусқа бірнеше карта орнатқанда маңызды. Генерация жадты күтетіндіктен, nvidia-smi -pl арқылы төмендетілген шекті сынап көріңіз және генерация жылдамдығы әрең өзгеретін мәнді қалдырыңыз.

Инференс — ұзақ жүктеме, ал көрші слоттардағы ашық салқындатқышы бар екі карта бір-біріне ыстық ауа береді. Жиіліктерді, температураны және қуатты 30 минуттық сынақ кезінде тексеріңіз.

GeForce RTX 50 және RTX PRO Blackwell карталары PCIe 5.0 x16 қолданады. Тұтынушылық жұмыс үстелі платформалары әдетте бір x16 графикалық байланыс береді, кейбір платалар оны x8/x8-ге бөледі, ал чипсет слоты жиі x4 режимінде жұмыс істейді. Қабаттар бойынша бөлу бұған төзеді; тензорлық параллелизм мен модельдерді жүктеуге x8 және одан кеңі жақсы, мұны жұмыс станциясы платформалары береді. GPU бос тұрғанда көрсетілетін байланыс буыны төмендеуі мүмкін, сондықтан оны жүктеме кезінде тексеріңіз.

Жүйелік жад сіз жүктейтін ең үлкен модель файлынан кем болмауы керек, оған ОЖ-ға орын қосылады, ал қабаттарды жүктесеңіз, әлдеқайда көп болуы тиіс. Модель файлдары 5 ГБ-тан 100 ГБ-тан асатын көлемге дейін жетеді, сондықтан жылдам жинақтағыш жүктеу уақытын қысқартады; бұл сценарий NVMe SSD таңдау нұсқаулығында қарастырылған.

nvidia-smi --query-gpu=name,pcie.link.gen.current,pcie.link.width.current,power.draw,memory.used --format=csv -l 1

nvidia-smi dmon -s pucvmt -d 1

sudo nvidia-smi -pl 450

Өз жылдамдығыңызды өлшеңіз

Жарияланған сандар сіздің модель файлыңызға, контексіңізге, драйверіңізге және орындау ортасының нұсқасына сирек сәйкес келеді, сондықтан өзіңіз өлшеп, шек формуласымен салыстырыңыз. llama-bench құралында -p промпт ұзындығын, -n генерацияланатын токендер санын береді, ал -d KV-кэшті берілген тереңдікке дейін алдын ала толтырып, диалог өскен сайын жылдамдықтың қалай төмендейтінін көрсетеді. Екінші команда 16 биттік және 8 биттік кэшті салыстырады:

llama-bench -m Qwen_Qwen3-32B-Q4_K_M.gguf -p 512,4096 -n 128 -d 0,16384 -fa on -r 3 -o md

llama-bench -m Qwen_Qwen3-32B-Q4_K_M.gguf -p 4096 -n 128 -d 16384 -ctk f16,q8_0 -ctv f16,q8_0 -fa on

Содан кейін қатар жүктемені тексеріңіз. vllm bench serve OpenAI-мен үйлесімді endpoint-термен жұмыс істейді және бірінші токенге дейінгі уақытты, бір шығыс токенге кететін уақытты, токендер арасындағы кідірісті және жалпы өткізу қабілетін көрсетеді:

vllm serve Qwen/Qwen3-32B-AWQ --max-model-len 32768

vllm bench serve --backend openai --base-url http://127.0.0.1:8000 --model Qwen/Qwen3-32B-AWQ --dataset-name random --random-input-len 4096 --random-output-len 256 --num-prompts 200 --max-concurrency 8

Бір ағынның өлшенген жылдамдығын шекке бөліңіз. Қатынас әдеттен тыс төмен болса, CPU-ға байқаусыз жүктелген қабаттарды, ені қысқарған PCIe байланысын, троттлингті немесе баяу backend-ті іздеңіз.

Таңдау чеклисі

  • config.json файлынан параметрлер, қабаттар, KV бастарының саны мен бас өлшемін жазып алыңыз.
  • Кванттауды таңдаңыз: сыйса 8 бит, содан кейін Q6_K немесе Q5_K_M, одан кейін 4 бит, ал одан төменін тек тексергеннен кейін.
  • Контекст пен қатар сұраулар санын белгілеп, KV-кэшті есептеңіз және 8 биттік кэштің қолайлы екенін шешіңіз.
  • Әр құрылғыға 1–2 ГиБ, ал бірыңғай жадта ОЖ-ға қор қосыңыз.
  • Генерация шегі сізге қажетті жылдамдықтан төмен платформалардан бас тартыңыз.
  • RAG немесе код агенттерінің ұзын промпттары үшін есептеуді ескеріп, бірінші токенге дейінгі уақытты өлшеңіз.
  • MoE үшін жадты параметрлердің жалпы санымен, ал жылдамдықты белсенділерімен есептеңіз.
  • Екінші GPU сатып алмас бұрын қуатты, салқындатуды, PCIe желілерін, RAM мен жинақтағышты тексеріңіз.
  • Өлшеу жүргізіп, жабдық қоспас бұрын шекпен арадағы алшақтықты қысқартыңыз.

Басқа жарияланымдар