Instructions to use mlx-community/Hy3-preview-MTP-4bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use mlx-community/Hy3-preview-MTP-4bit with MLX:
# Download the model from the Hub pip install huggingface_hub[hf_xet] huggingface-cli download --local-dir Hy3-preview-MTP-4bit mlx-community/Hy3-preview-MTP-4bit
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
Hy3-preview-MTP-4bit
Native Multi-Token-Prediction (MTP) sidecar for
mlx-community/Hy3-preview-4bit,
for use as a self-speculative draft head with
rapid-mlx.
What this is
Tencent's Hunyuan 3 (model_type=hy_v3) ships a DeepSeek-V3-style native MTP
head as the final decoder layer (model.layers.80.*) of the full-precision
tencent/Hy3-preview checkpoint.
The 4-bit MLX conversion mlx-community/Hy3-preview-4bit keeps only layers
0..79 (the backbone) and strips the MTP head.
This repo re-supplies just that head, quantized to match the base checkpoint,
as a single-file sidecar (model-mtp.safetensors, 44 tensors). rapid-mlx loads
the base 4-bit backbone and grafts this head at boot to run self-speculative
decoding (one draft token per verify step, K=1 chain MTP).
Provenance
Extracted from tencent/Hy3-preview shards model-00111-of-00112 +
model-00112-of-00112 (the two shards holding layer 80). The 593 layer-80
tensors are remapped to the rapid-mlx MTP param tree:
enorm/hnormโ RMSNorms on the next-token embedding and previous hidden state (DeepSeek-V3 convention).eh_projโ the2H -> Hfused projection, applied aseh_proj(concat([enorm(embed_next), hnorm(prev_hidden)], -1))(embedding first, confirmed against vLLMdeepseek_mtp.pyand SGLanghunyuannextn).- one HY3
DecoderLayeron the MoE branch (QK-norm attention + sigmoid-router SwitchGLU MoE over 192 experts + a shared expert). normโ the head's final RMSNorm (upstreamfinal_layernorm).
Quantization
Matches the base checkpoint: 4-bit group_size=64 affine for every Linear
(eh_proj, attention projections, switch_mlp.*, shared_mlp.*); 8-bit
group_size=64 for mlp.router.gate; all RMSNorms and router.expert_bias
kept in full precision.
Usage
rapid-mlx serve hy3-preview-4bit --speculative-config '{"method":"mtp"}'
rapid-mlx auto-resolves and downloads this sidecar. The base 4-bit backbone loads normally; the MTP head is grafted at boot for self-speculative decoding.
Measured
- Draft accept rate ~58% (K=1) across code / chinese / reasoning / list prompts.
- Greedy output is batched-consistent lossless vs the MTP-off reference.
The projection tree is byte-identical to a quantized backbone MoE layer, so the sidecar param names line up 1:1 with the runtime module.
Quantized
Model tree for mlx-community/Hy3-preview-MTP-4bit
Base model
tencent/Hy3-preview