OpenThinker3-7B
Fields
models/openthinker3-7bNotes
Not a new architecture: config.json carries _name_or_path = .../Qwen2.5-7B-Instruct and the repo's base_model tag is Qwen/Qwen2.5-7B-Instruct. Qwen2ForCausalLM, hidden 3584, 28 layers, 28 query heads / 4 KV heads - identical serving shape to Bespoke-Stratos-7B and OpenR1-Qwen-7B, which is the point: the OpenThoughts/Open-R1/Bespoke ecosystem is a large family of interchangeable weight files on one architecture. Trained on dataset open-thoughts/OpenThoughts3-1.2M. max_position_embeddings 32768, half the 131072 of the DeepSeek R1 Qwen distills of the same size. head_dim derived as 3584 / 28 = 128; gqa_ratio = 7. use_cache is false in config (trainer default). KV bytes/token at bf16 (2 bytes/element): 28 layers x 4 KV heads x 128 head_dim x 2 (K and V) x 2 bytes = 57344 B/token = 56.0 KiB/token. At its native 32k context that is 1.75 GiB of KV per sequence at bf16. context_scaling is null: context length is native to the pretrained config, no rope_scaling.
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.
Cross-references
This record references no other records — it is a leaf. It is cited by 0.