مرکزی مواد پر جائیں
اے آئی ٹیوٹوریلز

دو NVIDIA DGX Spark سسٹمز پر GLM-5.3 Flash EXL3 چلائیں

دو NVIDIA GB10 DGX Spark سسٹمز پر GLM-5.3 Flash EXL3 انسٹال، کنفیگر، لانچ، ٹیسٹ اور ٹیون کرنے کا طریقہ سیکھیں۔ اس ٹیوٹوریل میں دو نوڈ کا رن ٹائم، DFlash2 speculative decoding، fp8 MLA KV cache، OpenAI-compatible requests، prefix caching، بینچ مارکنگ، اختیاری ablation اور اہم کنفیگریشن پابندیاں شامل ہیں۔

دو NVIDIA DGX Spark سسٹمز پر GLM-5.3 Flash EXL3 چلائیں

جائزہ

2x DGX Sparks کے لیے GLM-5.3 Flash EXL3 دو NVIDIA GB10 سسٹمز پر GLM-5.3 Flash کی 4 bpw EXL3/TR3 کوانٹائزیشن چلانے کے لیے ایک ڈپلائمنٹ ترکیب اور vLLM اوورلے ہے۔ یہ پورٹ 8888 پر OpenAI سے مطابقت رکھنے والی API فراہم کرتا ہے اور ماڈل کو شناخت کنندہ GLM-5.3-Flash-EXL3 کے تحت چلاتا ہے۔

یہ ترکیب ٹینسر پیراlelism استعمال کرتی ہے، جس میں ہر مشین پر ایک رینک ہوتا ہے۔ اس میں پیک شدہ EXL3 روٹڈ ایکسپرٹس، مقامی sm_121a کرنلز، fp8 sparse-MLA KV کیش، CUDA گرافس، اور سات ڈرافٹ ٹوکنز کے ساتھ DFlash2 speculative decoding شامل ہیں۔

پہلے سے طے شدہ چیک پوائنٹ Mia-AiLab/GLM-5.3-Flash-EXL3-TR3-4bpw ہے، جو حوالہ دیے گئے Brandon Music snapshot کی عوامی طور پر دستیاب byte-identical mirror ہے۔ اس میں 120 shards میں تقریباً 164 GiB ڈیٹا شامل ہے۔ ماڈل repository کا اپنا لائسنس ہے، جبکہ serving scripts اور overlay MIT لائسنس کے تحت ہیں۔

اوورلے کیوں ضروری ہے

معیاری ARM64 GLM-5.3 vLLM image اس چیک پوائنٹ کو لوڈ کر سکتی ہے، لیکن پہلے forward pass پر ناکام ہو جاتی ہے، کیونکہ GLM-5.3 Flash NoPE MLA استعمال کرتا ہے جبکہ دستیاب SM12x sparse-MLA backend مختلف packed geometry کا تقاضا کرتا ہے۔ اوورلے 512-dimensional NoPE latent کو FLASHINFER_MLA_SPARSE_SM120 کے لیے درکار geometry میں pad کرتا ہے، بغیر QK dot product تبدیل کیے۔

یہ ایک فعال EXL3 quantization method بھی رجسٹر کرتا ہے۔ اس سے routed experts کو BF16 میں پھیلانے کے بجائے ان کی packed trellis، SUH، SVH، اور MCG representation برقرار رہتی ہے۔ fused path فعال ہونے پر ہر layer ایک exllamav3_ext.exl3_moe launch استعمال کرتی ہے۔

اوورلے DFlash2 کے لیے GLM-specific integration بھی فراہم کرتا ہے، جس میں EAGLE3 auxiliary hidden-state capture، target MLA KV slots کا اشتراک کرنے والی draft sliding-window attention، اور speculative draft block کے اندر non-causal attention شامل ہیں۔

اہم خصوصیات

  • OpenAI سے مطابقت رکھنے والی سروس: vLLM head node پر /v1/chat/completions اور متعلقہ endpoints فراہم کرتا ہے۔
  • دو-node tensor parallelism: ڈپلائمنٹ --nnodes 2 اور --tensor-parallel-size 2 استعمال کرتی ہے۔
  • کمپیکٹ EXL3 weights: 4 bpw چیک پوائنٹ ڈاؤن لوڈ کے لیے تقریباً 164 GiB ہے اور حوالہ دیے گئے quality panel میں اسے 176 GB بتایا گیا ہے۔
  • DFlash2 speculative decoding: پہلے سے طے شدہ draft model incoai/GLM-5.3-Flash-DFlash2 ہے، جس میں k=7 ہے۔
  • طویل context: پہلے سے طے شدہ زیادہ سے زیادہ model length 900,000 tokens ہے، جسے دستاویزی memory configuration کے تحت 982,612 tokens کے طور پر رپورٹ کیے گئے fp8 MLA pool کی پشت پناہی حاصل ہے۔
  • ملٹی موڈل سپورٹ: image اور video inputs فعال ہیں، جبکہ ہر prompt کے لیے پہلے سے طے شدہ حد چار images اور ایک video ہے۔
  • Tool اور reasoning parsing: launcher automatic tool selection اور GLM-compatible tool-call اور reasoning parsers فعال کرتا ہے۔
  • Prefix caching: block-aligned prefixes کو دوبارہ استعمال کیا جا سکتا ہے، جب متعلقہ hashes cache میں موجود رہیں۔
  • اختیاری refusal-direction ablation: ABLIT=1 load time پر منتخب native BF16 output-projection weights میں memory کے اندر ترمیم کرتا ہے۔

ہارڈویئر اور سافٹ ویئر کے تقاضے

یہ ترکیب خاص طور پر دستاویزی CX7 fabric کے ذریعے منسلک دو NVIDIA GB10 DGX Spark-class سسٹمز کے لیے تیار کی گئی ہے۔ یہ عمومی single-GPU deployment نہیں ہے۔

  • دو NVIDIA GB10 systems، جن میں ابتدائی setup کے لیے فی node تقریباً 180 GiB خالی storage ہو۔
  • دونوں systems پر sudo کے بغیر Docker دستیاب ہو۔
  • head node سے worker تک passwordless SSH ہو۔
  • head پر hf یا huggingface-cli، curl، اور rsync نصب ہوں۔
  • دونوں machines پر درست CX7 network interfaces اور RDMA devices موجود ہوں۔
  • ایسی Hugging Face cache location موجود ہو جو 120-shard checkpoint اور تقریباً 2.3 GiB DFlash2 model رکھ سکے۔

Repository کی CX7 interface اور HCA settings برقرار رکھیں، الا یہ کہ آپ کی physical cabling مختلف ہو۔ README خبردار کرتا ہے کہ NCCL 10.0.0.x loopback aliases استعمال نہیں کر سکتا اور اگر fabric pins غلط ہوں تو ncclCommInitRank کے دوران hang ہو سکتا ہے۔

ڈپلائمنٹ نصب اور configure کریں

1. Repository clone کریں

git clone https://github.com/MiaAI-Lab/GLM-5.3-Flash-EXL3-2x-DGX-Sparks.git
cd GLM-5.3-Flash-EXL3-2x-DGX-Sparks

2. Environment file بنائیں

cp .env.example .env

اگر machines ترکیب کے default addresses یا account names استعمال نہیں کرتیں تو .env میں ترمیم کریں۔ اہم ترین settings یہ ہیں:

  • HEAD_IP=10.0.0.1 head node اور vLLM master کے لیے۔
  • WORKER_IP=10.0.0.2 دوسرے Spark کے لیے۔
  • WORKER_USER جب nodes کے درمیان SSH account مختلف ہو۔
  • WORKER_HOME جب worker کا home یا Hugging Face cache location مختلف ہو۔
  • PORT=8888 API listener کے لیے۔

اگر .env موجود نہ ہو تو launcher اسے .env.example سے خودکار طور پر بناتا ہے۔ command سے پہلے براہِ راست فراہم کی گئی values فائل میں موجود values پر ترجیح رکھتی ہیں۔

3. اختیاری طور پر weights stage کریں

./download.sh

یہ command EXL3 checkpoint اور DFlash2 model کو head node کی Hugging Face cache میں ڈاؤن لوڈ کرتی ہے۔ یہ Docker نہیں چلاتی، worker سے connect نہیں کرتی، اور files synchronize نہیں کرتی۔ اسے اس وقت استعمال کریں جب آپ worker کے تیار ہونے سے پہلے تقریباً 164 GiB model download مکمل کرنا چاہتے ہوں۔

cached files کو واضح طور پر refresh کرنے کے لیے چلائیں:

REFRESH_WEIGHTS=1 ./download.sh

غیر ضروری طور پر ریفریش کرنے سے گریز کریں۔ download.sh اور start.sh دونوں پہلے سے مکمل ریپوزٹریز کو چھوڑ دیتے ہیں۔

4. دونوں رینکس اور API شروع کریں

./start.sh

اسٹارٹ اپ اسکرپٹ درج ذیل مراحل انجام دیتی ہے:

  1. دونوں نوڈز پر Docker، SSH اور دستیاب ڈسک اسپیس چیک کرتی ہے۔
  2. ہیڈ پر عوامی ghcr.io/miaai-lab/glm-5.3-flash-2x-dgx-sparks:exl3 امیج حاصل کرتی ہے۔
  3. جب ڈائجسٹ تبدیل ہو جائے تو کنٹینر امیج کو ورکر منتقل کرتی ہے۔
  4. غائب ماڈل فائلوں کو ہیڈ کے Hugging Face کیش میں ڈاؤن لوڈ کرتی ہے۔
  5. rsync کے ذریعے کیش کو ورکر کے ساتھ ہم وقت ساز کرتی ہے۔
  6. ورکر پر رینک 1 کو ہیڈ لیس موڈ میں شروع کرتی ہے۔
  7. ہیڈ پر رینک 0 اور OpenAI-compatible API شروع کرتی ہے۔
  8. ہیلتھ اینڈ پوائنٹ کو اس وقت تک پول کرتی ہے جب تک ماڈل لوڈنگ اور وارم اپ مکمل نہ ہو جائیں۔

ڈیفالٹ readiness ٹائم آؤٹ 3,600 سیکنڈ ہے، کیونکہ وزن لوڈ کرنے اور CUDA گرافس کیپچر کرنے میں خاصا وقت لگ سکتا ہے۔

5. اسٹیٹس اور لاگز چیک کریں

./start.sh status
./start.sh logs
./start.sh logs worker

دونوں کنٹینرز کو اس کمانڈ سے روکیں:

./start.sh stop

آپ ./stop.sh بھی استعمال کر سکتے ہیں۔

بنیادی چیٹ درخواست بھیجیں

ہیڈ نوڈ پر بنیادی API URL http://127.0.0.1:8888/v1 ہے۔ دستاویزی LAN پتوں کے ساتھ دیگر مشینیں http://10.0.0.1:8888/v1 استعمال کر سکتی ہیں۔

curl -s http://127.0.0.1:8888/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "GLM-5.3-Flash-EXL3",
    "messages": [
      {"role": "user", "content": "Explain tensor parallelism briefly."}
    ],
    "chat_template_kwargs": {
      "enable_thinking": false
    }
  }'

درخواست کی model قدر فراہم کردہ نام سے مماثل ہونی چاہیے، جو ڈیفالٹ طور پر GLM-5.3-Flash-EXL3 ہے۔ سوچنے کا عمل ڈیفالٹ طور پر فعال ہے۔ اسے غیر فعال کرنے کے لیے، اوپر دکھائے گئے مطابق JSON درخواست کی ٹاپ لیول پر chat_template_kwargs رکھیں۔

خام HTTP کے ذریعے لفظی نیسٹڈ extra_body آبجیکٹ نہ بھیجیں۔ OpenAI Python SDK میں extra_body ایک SDK آپشن ہے، جس کے مواد کو ٹاپ لیول درخواست میں ضم کر دیا جاتا ہے۔

چیک پوائنٹ کی جنریشن کنفیگریشن temperature=1.0 اور top_p=0.95 فراہم کر سکتی ہے۔ مختلف رویہ درکار ہو تو ہر درخواست میں sampling کی قدریں مقرر کریں۔

ڈیفالٹ رن ٹائم کو سمجھیں

تعیناتی کی ڈیفالٹ ترتیبات باہمی طور پر مربوط ہیں۔ ایک جزو تبدیل کرنے سے کرنل کا امتزاج غیر درست ہو سکتا ہے یا speculative acceptance کم ہو سکتی ہے۔

  • وزن: Mia-AiLab/GLM-5.3-Flash-EXL3-TR3-4bpw، اور جب مرر دستیاب نہ ہو یا نامکمل ہو تو Brandon Music ریپوزٹری پر fallback۔
  • متوازی کاری: multiprocessing executor استعمال کرتے ہوئے دو نوڈز اور tensor-parallel size دو۔
  • کوانٹائزیشن: exl3، packed routed experts اور native dense، shared-expert، attention، embedding اور output-head weights کے ساتھ۔
  • ہدف KV کیش: fp8، جسے اندرونی طور پر packed fp8_ds_mla کے طور پر دکھایا جاتا ہے۔
  • Speculation: DFlash2، سات speculative tokens کے ساتھ، اور draft tensor parallelism کو ایک پر مقرر کیا گیا ہے۔
  • Draft KV کیش: خودکار انتخاب، جس کے نتیجے میں dense draft model کے لیے ہدف کے MLA layout کے بجائے BF16 استعمال ہوتا ہے۔
  • Attention: ہدف کے لیے sparse MLA اور DFlash2 draft attention کے لیے خودکار طور پر منتخب FLASH_ATTN۔
  • Context: MAX_MODEL_LEN=900000۔
  • Concurrency: MAX_NUM_SEQS=4۔
  • Prefill: MAX_NUM_BATCHED_TOKENS=1024۔
  • Memory utilization: GPU_MEM_UTIL=0.87۔

Speculative decoding کے موڈز تبدیل کریں

DFlash2 ڈیفالٹ ہے اور incoai/GLM-5.3-Flash-DFlash2 استعمال کرتا ہے۔ دو speculative tokens کے ساتھ چیک پوائنٹ کے MTP path پر واپس جانے کے لیے، اس کمانڈ کے ساتھ دوبارہ شروع کریں:

SPEC_METHOD=mtp ./start.sh restart

ماحول SPEC_METHOD=none کو بھی سپورٹ کرتا ہے۔ DFlash2 کا ڈیفالٹ draft tensor parallelism ایک ہے، جس سے چھوٹا draft model رینک 0 پر رہتا ہے اور ہر draft step کے لیے CX7 communication سے گریز ہوتا ہے۔

DFlash2 کے لیے TRITON_ATTN زبردستی نافذ نہ کریں۔ README کی پیمائشوں کے مطابق، اس backend نے draft block کے اندر attention کو causal بنا دیا اور بعد کی speculative positions پر acceptance تقریباً ختم ہو گئی۔ Draft attention کو unset چھوڑیں تاکہ SM121 FLASH_ATTN منتخب کرے۔

KV کیش اور طویل context کی کنفیگریشن

ہدف KV کیش fp8 ہی رہنا چاہیے۔ اس architecture پر sparse-MLA kernel packed fp8_ds_mla قبول کرتا ہے؛ BF16 کے لیے compatible sparse kernel موجود نہیں، اور NVFP4 KV kernels sparse MLA کے بجائے dense MHA پر لاگو ہوتے ہیں۔

DFlash2، vision support، 0.87 memory utilization اور 900,000 کی maximum model length کے ساتھ، README کے مطابق pool میں 982,612 tokens ہوتے ہیں اور fp8 MLA کے لیے تقریباً 15.67 GiB استعمال ہوتے ہیں۔ اس سے ایک مکمل 900,000-token درخواست کی گنجائش سے تقریباً 1.09 گنا capacity ملتی ہے۔ دستاویزی setup میں native one-million-token configuration اب بھی allocate نہیں ہوتی۔

ان ترتیبات کو برقرار رکھیں، الا یہ کہ آپ جان بوجھ کر runtime تبدیلی کی جانچ کر رہے ہوں:

KV_CACHE_DTYPE=fp8
GPU_MEM_UTIL=0.87
MAX_MODEL_LEN=900000
MAX_NUM_BATCHED_TOKENS=1024
SKIP_MM_PROFILING=1
LIMIT_MM={"image":4,"video":1}

SKIP_MM_PROFILING=1 اہم ہے، کیونکہ maximum-size image اور video dummy input کی profiling unified memory ختم کر سکتی ہے۔ README یہ بھی خبردار کرتی ہے کہ batched-token limit کو 8,192 تک بڑھانے سے long-context operation کے دوران GB10 indexer top-k path پر oversubscription ہو جاتی ہے۔

Prefix caching کیسے کام کرتی ہے

Prefix caching فعال ہے، لیکن OpenAI API اب بھی stateless ہے۔ کلائنٹ کو ہر turn پر گفتگو کی مکمل تاریخ دوبارہ بھیجنی ہوتی ہے۔ vLLM بھیجے گئے prefix کا hash بناتا ہے اور جب cached blocks دستیاب ہوں تو انہیں دوبارہ استعمال کر سکتا ہے۔

  • دستاویزی MLA cache manager کے تحت صرف block-aligned tokens ہی hits میں شمار ہوتے ہیں۔
  • MAX_NUM_SEQS=4 بیک وقت جاری چار generations کی اجازت دیتا ہے؛ یہ چار مستقل chat sessions محفوظ نہیں کرتا۔
  • غیر فعال گفتگوؤں کے cached رہنے کی ضمانت نہیں ہے۔
  • ایک گفتگو کی activations دوسری گفتگو کے ساتھ نہیں ملائی جاتیں۔
  • کسی دوسرے workload کے ذریعے prefix خارج کیے جانے کے بعد پرانی chat کے لیے نیا prefill درکار ہو سکتا ہے۔

README کے live test میں 7,760-token follow-up میں سے 3,584 tokens دوبارہ استعمال ہوئے، یعنی prompt کا تقریباً 46 فیصد۔ Prefix caching کو مستقل session storage کے بجائے موقع بہ موقع رفتار بڑھانے والی سہولت سمجھیں۔

Decode performance کی پیمائش

Repository میں streaming decode اور coherence checks کے لیے tests/bench_decode.py شامل ہے۔ Structured count test اس طرح چلائیں:

python3 tests/bench_decode.py \
  --phase structured \
  --structured \
  --runs 5 \
  --max-tokens 400 \
  --skip-coherence \
  --out /tmp/glm53-structured.json

Prose hash-map explanation test اس طرح چلائیں:

python3 tests/bench_decode.py \
  --phase prose \
  --runs 5 \
  --max-tokens 400 \
  --skip-coherence \
  --out /tmp/glm53-prose.json

README کے دستاویزی warm، empty-KV protocol کے تحت structured workload نے concurrency one پر 62.9 tokens per second، concurrency two پر 103.3 aggregate tokens per second، اور concurrency four پر 146.5 aggregate tokens per second حاصل کیے۔ کارکردگی speculative acceptance پر بہت زیادہ منحصر ہے: lab median structured output کے لیے 61.7 tokens per second، لیکن prose کے لیے 26.9 تھا۔ تقریباً 60,000 سے 100,000 cached tokens والے mixed یا long-context tests میں 24 سے 27 tokens per second رپورٹ ہوئے۔

یہ اعداد README میں موجود مخصوص two-GB10 setup، prompt types، temperature-zero configuration، disabled thinking، DFlash2 k=7، اور 400-token generations کو بیان کرتے ہیں۔ انہیں universal throughput guarantees نہ سمجھا جائے۔

اختیاری refusal-direction ablation

Repository EXL3 checkpoint کو rewrite یا requantize کیے بغیر weight-load time پر refusal-direction ablation لاگو کر سکتی ہے۔ اسے فعال کرنے کے لیے یہ چلائیں:

ABLIT=1 ./start.sh restart
./start.sh logs | grep ablit

Default recipe layers 15 سے 45 تک ہر native BF16 self_attn.o_proj میں ترمیم کرتی ہے۔ Layers 0 سے 14 تک safety anchors کے طور پر برقرار رہتی ہیں۔ Default scale ABLIT_ALPHA=3.0 ہے؛ اسے 1.0 پر set کرنے سے plain projection لاگو ہوتی ہے جو فراہم کردہ direction کے along component کو ہٹا دیتی ہے۔

مفید controls میں شامل ہیں:

  • ABLIT=0 یا unset value stock weights کو بغیر تبدیلی کے چھوڑ دیتی ہے۔
  • ABLIT_DIRECTION=dealign شائع شدہ default direction کے لیے۔
  • ABLIT_LAYERS=15-45 inclusive edited range کے لیے۔
  • ABLIT_ALPHA=3.0 projection scale کے لیے۔
  • ABLIT_INCLUDE_MTP=1 استعمال ہونے پر checkpoint MTP block شامل کرنے کے لیے۔

README میں KLD quality results ablation کے بغیر ناپے گئے تھے۔ اسے فعال کرنے سے refusal behavior تبدیل ہوتا ہے اور coherence یا speculative acceptance متاثر ہو سکتی ہے، کیونکہ DFlash2 drafter تبدیل نہیں ہوتا جبکہ target outputs تبدیل ہو جاتے ہیں۔ اگر coherence کم ہو جائے تو README پہلے ABLIT_ALPHA کم کرنے کی تجویز دیتی ہے۔

Advanced launch workflows

دونوں machines پر image اور model cache موجود ہونے کے بعد، آپ بار بار ہونے والے transfer work کو چھوڑ سکتے ہیں:

SKIP_DOWNLOAD=1 SKIP_SYNC=1 ./start.sh

مقامی container image برقرار رکھنے اور تمام pulls، downloads، اور synchronization چھوڑنے کے لیے:

SKIP_PULL=1 SKIP_DOWNLOAD=1 SKIP_SYNC=1 ./start.sh restart

Public image استعمال کرنے کے بجائے موجودہ repository سے overlay دوبارہ بنانے کے لیے:

BUILD=1 SKIP_DOWNLOAD=1 SKIP_SYNC=1 ./start.sh restart

آپ Dockerfile براہ راست بھی build کر سکتے ہیں:

docker build -t glm53-flash-sm121:local .

Startup script عموماً image کو worker تک بھیجنے سے پہلے GPU overlay self-check چلاتی ہے۔ SKIP_OVERLAY_VERIFY=1 صرف اس وقت set کریں جب آپ جان بوجھ کر یہ check bypass کرنا چاہتے ہوں۔

اہم configuration warnings

  • --moe-backend marlin پاس نہ کریں۔ یہ deployment EXL3 weights اور اپنا packed expert method استعمال کرتی ہے۔
  • Target KV cache کو NVFP4 یا BF16 پر set نہ کریں۔ KV_CACHE_DTYPE=fp8 برقرار رکھیں۔
  • Speculative draft attention کو TRITON_ATTN پر pin نہ کریں۔
  • Image کو پرانے glm53-flash-sm121:v8 NVFP4/Ray deployment سے replace نہ کریں۔
  • Tensor parallelism، node count، CX7 pins، یا USE_HOST_NCCL میں عجلت سے تبدیلی نہ کریں۔ یہ two-node recipe کے لازمی حصے ہیں۔
  • Hugging Face checkpoint cache کو delete یا requantize نہ کریں، جب تک آپ کا ارادہ مکمل model دوبارہ download کرنے کا نہ ہو۔
  • Unified-memory usage کو مدنظر رکھے بغیر multimodal profiling safeguards کو disable نہ کریں۔
  • ABLIT_DIRECTION کو کسی غیر متعلقہ checkpoint کے vector کی طرف point نہ کریں، جب تک اس کے hidden size کی تصدیق نہ کر لیں۔

Troubleshooting

Service کبھی healthy نہیں ہوتی

دونوں logs کو ./start.sh logs اور ./start.sh logs worker کے ذریعے inspect کریں۔ Passwordless SSH، دستیاب disk space، Docker permissions، cache completeness، اور CX7 interface names چیک کریں۔ Initial weight loading اور graph capture سست ہوتے ہیں، اس لیے logs میں progress کا جائزہ لیے بغیر default readiness timeout ختم ہونے کا انتظار کریں۔

Rank initialization کے دوران NCCL hang ہو جاتا ہے

HEAD_CX7_IF، WORKER_CX7_IF، HEAD_CX7_IB، اور WORKER_CX7_IB کی تصدیق کریں۔ دستاویزی ڈیفالٹس لیب کے فزیکل پورٹس سے منسلک ہیں، اس لیے اگر آپ کی کیبلنگ مختلف ہو تو ان میں تبدیلی کی ضرورت پڑ سکتی ہے۔

ورکر GHCR تک رسائی حاصل نہیں کر سکتا

ورکر کو براہِ راست GHCR تک رسائی کی ضرورت نہیں ہے۔ ہیڈ پبلک امیج کھینچتا ہے اور اسے SSH کے ذریعے منتقل کرتا ہے۔ اگر ہیڈ کو گمنام ریٹ لمٹس کا سامنا ہو تو GHCR_USER اور GHCR_TOKEN کو ترتیب دیں۔

قیاسی ڈیکوڈنگ غیر متوقع طور پر سست ہے

تصدیق کریں کہ SPEC_METHOD=dflash اور DFLASH_TOKENS=7 موجود ہیں، اور ڈرافٹ اٹینشن کو زبردستی TRITON_ATTN پر سیٹ نہیں کیا گیا۔ یہ بھی یاد رکھیں کہ قیاسی کارکردگی آؤٹ پٹ کی قسم کے لحاظ سے بدلتی ہے: انتہائی منظم سلسلوں میں غیر محدود نثر کے مقابلے میں قبولیت کی شرح کہیں زیادہ ہو سکتی ہے۔

نتیجہ

یہ پروجیکٹ NVIDIA GB10 کے دو سسٹمز کو کمپیکٹ EXL3 ویٹس، fp8 sparse-MLA کیشنگ، اور DFlash2 قیاسی ڈیکوڈنگ استعمال کرتے ہوئے دو رینک والے OpenAI-compatible GLM-5.3 Flash سرور میں تبدیل کرتا ہے۔ تیز ترین طریقہ یہ ہے کہ فراہم کردہ نیٹ ورک، KV، اٹینشن، اور کوانٹائزیشن ڈیفالٹس برقرار رکھیں، ./start.sh کے ذریعے لانچ کریں، اور ہیلتھ اینڈ پوائنٹ، چیٹ API، لاگز، اور شامل کردہ ڈیکوڈ بینچ مارکس کے ذریعے تعیناتی کی توثیق کریں۔