DeepSeek-R1-Distill-Llama-8B
Fields
models/deepseek-r1-distill-llama-8bNotes
CONTEXT SCALING FILLED - this record previously said native when its own config says otherwise. config.json declares rope_scaling {"rope_type":"llama3","factor":8.0,"high_freq_factor":4.0,"low_freq_factor":1.0,"original_max_position_embeddings":8192} with rope_theta 500000; config max_position_embeddings 131072. So the 131072 advertised window is an EXTRAPOLATION of an 8192-token trained base by 16x, not a native length. This is Llama-3.1's rope scheme, not YaRN and not PI: the llama3 type frequency-rescales high and low frequency bands separately (high_freq_factor 4.0, low_freq_factor 1.0), which is why it is neither a uniform position divide (PI) nor the NTK-style base adjustment. Architecture is Llama-3.1-8B's: LlamaForCausalLM, hidden 4096, 32 layers, 32 query heads / 8 KV heads, rope_theta 500000, no rope_scaling, 131072 native. head_dim derived as 4096 / 32 = 128. gqa_ratio = 32 / 8 = 4. vocab_size 128256 with tie_word_embeddings false adds ~525M params of embedding. KV bytes/token at bf16 (2 bytes/element): 32 layers x 8 KV heads x 128 head_dim x 2 (K and V) x 2 bytes = 131072 B/token = 128.0 KiB/token. At 128k context that is 16.00 GiB of KV for one sequence at bf16.
SERVICEABILITY JOIN (added 2026-10-03; the architecture x engine matrix this record was missing, with a citation per cell in docs/13-model-compatibility.md): FAMILY=dense-gqa. REQUIRED KERNEL CLASS: ordinary causal attention plus GEMM/GEMV. This is the baseline every engine in this repo implements, so the join here is a floor rather than a filter: no engine record in data/engines/ states that dense GQA is unsupported. SUPPORTED BY (cited): vLLM LlamaForCausalLM / Qwen2 / Qwen3 / Mistral / Phi3ForCausalLM rows [[mdl2-vllm-supported-models-2026-10]]; TensorRT-LLM LlamaForCausalLM, Qwen2ForCausalLM, Qwen3ForCausalLM, Phi3ForCausalLM rows [[mdl2-trtllm-supported-models]]; SGLang generative table (Llama, Qwen, Mistral families) [[mdl2-sglang-generative-models]]; llama.cpp LLM_ARCH_LLAMA [[pap-arch-llamacpp-arch-registry]]. HARD CONSTRAINTS THAT DO APPLY even to dense GQA, and they are model-shape rather than architecture-class: tensor-parallel size must divide the attention head count or the engine refuses to start [[mgpu-tp-size-must-divide-attention-heads]] (affects vllm and sglang); and a GQA KV cache is the thing paged-attention machinery exists for, so an engine with no paged KV (llama.cpp's slot-based pool [[llama-cpp]], exllamav2 [[exllamav2]]) loses the concurrency lever rather than the ability to run. ONE HARDWARE-DEPENDENT KERNEL GATE THAT IS NOT ABOUT GQA: on RDNA, vLLM's custom paged-attention kernel is gated on head_size == 128 AND block_size == 16, so a dense GQA model with head_dim 256 falls to the Triton 2D fallback and decode falls off a cliff - measured 12.1 tok/s at 518 tokens of context to 4.2 tok/s at 32k, with kernel_paged_attention_2d growing 28.3x [[rdna-triton-paged-attn-decode-cliff]]. Check head_dim before blaming the card.
CONTEXT_SCALING_METHOD (llama3): config-derived; the existing free text 'llama3 rope scaling (factor 8 from an 8192 base)' agrees.
Cross-references
This record references no other records — it is a leaf. It is cited by 0.