kodelow/Hy3-NVFP4-W4A16
Hy3 — NVFP4 (routed experts, MSE scales)
## ⚠️ Known behavior reports (under investigation): Community testing has surfaced occasional Chinese output in English contexts (reported in the full-precision preview as well, so at least partly a base-model trai: uncalibrated fp8 KV appears to amplify it) and intermittent tool-call failures / premature stops, with chat-template interaction as the current suspect. Until the KV-calibrated revision lands, use bf16 KV (--kv-cache-dtype auto) and --num-speculative-tokens 1 on GB10-class hardware. Differential evals against the BF16 baseline are in progress; results will be published here.
A 4-bit NVFP4 quantization of [`tencent/Hy3`](https://huggingface.co/tencent/Hy3). The original model card is preserved in full below.
2x GB10 full recipe, scripts, and all the bugs documented by Tony DeAngelo (tonyd2wild): https://github.com/tonyd2wild/Hy3-295B-NVFP4-MTP-2x-DGX-Spark
Weight-only NVFP4 quant produced with **qstream** using MSE-optimal group-scale selection: the routed MoE experts (≈95% of the weights) are quantized to 4-bit; everything quality-sensitive stays BF16.
## ⚠️ MARLIN-only (this is a W4A16 build) Because the activations stay BF16 (weight-only, W4A16), vLLM serves this build exclusively on the MARLIN NvFp4 kernel. The faster FlashInfer fp4 tensor-core backends (flashinfer_trtllm/cutlass/cutedsl) are W4A4 and reject a weight-only scheme —--moe-backend flashinfer_trtllmfails withkernel does not support QuantKey(u8, scale(f8e4m3)), so vLLM auto-selects MARLIN.
Note on HF's param count. HF reports fewer "params" than the base's 295B because it counts packed 4-bit storage elements (each U8 byte holds two FP4 weights) plus FP8 scales — not logical parameters. The logical model is unchanged: 295B total, 21B active.What is quantized to what
Quality & faithfulness
Functional evals run end-to-end on a single NVIDIA B300 (275 GB) with the MARLIN NvFp4 MoE kernel (see Serving — this build is MARLIN-only).
Fidelity, footprint & provenance
- MTP preserved: the MTP draft layer (layer 80) is served with
--speculative-config '{"method":"mtp","num_speculative_tokens":1}'and reaches 83.4% draft-token acceptance — lossless (GSM8K unchanged with it on). - Footprint: ~181 GB — fits a single large-VRAM GPU (verified on one B300, 275 GB) or multi-GPU tensor parallelism.
fastsafetensorsloads it in ~90 s. - Provenance: built with qstream, experts-only, NVFP4 with MSE-optimal FP8-E4M3 group-scale selection (group_size 16).
Serving with vLLM
HYV3ForCausalLM is natively supported. This is a weight-only (W4A16) build, so vLLM serves it on the MARLIN NvFp4 kernel — the FlashInfer fp4 tensor-core backends (flashinfer_trtllm/cutlass/cutedsl) are W4A4 and reject a weight-only scheme (kernel does not support QuantKey(u8, scale(f8e4m3))), so vLLM auto-selects MARLIN.
vllm serve kodelow/Hy3-NVFP4-W4A16 \
--served-model-name hy3 --tensor-parallel-size 1 \
--max-model-len 4096 --gpu-memory-utilization 0.90 \
--load-format fastsafetensors \
--speculative-config '{"method":"mtp","num_speculative_tokens":1}'`config.json` note. Theignorelist uses regex (re:.*mlp\.down_proj$), which already covers vLLM's shared-expert load path — no per-layer literal fixes needed.
⬇️ The original `tencent/Hy3` model card follows, unmodified. ⬇️
<p align="left"> <a href="https://huggingface.co/tencent/Hy3/blob/main/README_CN.md">中文</a> | English </p> <br>
<p align="center"> <img src="assets/logo-en.png" width="400"/> <br> </p>
<div align="center" style="line-height: 1;">
    
</div>
<p align="center"> 🖥️ <a href="https://aistudio.tencent.com/"><b>Official Website</b></a> | 💬 <a href="https://github.com/Tencent-Hunyuan/Hy3"><b>GitHub</b></a></p>
Table of Contents
- Model Introduction
- Stronger Agent Performance
- Product Experience: More Reliable, More Cost-Effective
- Benchmark Appendix
- News
- Model Links
- Quickstart
- Deployment
- vLLM
- SGLang
- Finetuning
- Quantization
- License
- Contact Us
Model Introduction
Hy3 is a 295B-parameter Mixture-of-Experts (MoE) model with 21B active parameters and 3.8B MTP layer parameters, developed by the Tencent Hy Team. Following the Hy3 Preview launch in late April, we gathered feedback from 50+ product teams. We fixed various issues in task execution and interaction, and improved both the quality and scale of our post-training pipeline. Today, we are launching Hy3. It significantly outperforms similar-size models and rivals flagship open-source models with 2-5x the parameters. It also shows solid gains in utility across productivity tasks and real-world applications.
Stronger Agent Performance
Building on Hy3 Preview, we improved post-training data quality and diversity while scaling up RL training. Hy3 shows solid gains across reasoning, agentic workflows, and long-context tasks. Its performance is close to leading flagship models, both domestic and international.
<p align="center"> <img src="assets/benchmark.png" width="100%"/> </p>
In productivity scenarios such as coding, document processing, financial analysis, game development, and frontend design, Hy3 has made solid gains, positioning it as a reliable, cost-effective option.
We don't think public benchmark scores tell the full story. So we ran a blind test with 270 experts from various disciplines, working on real-world workflows, and collected 312 valid comparisons. Hy3 scored 2.67/4, outperforming GLM-5.1 at 2.51/4. The advantage was clearest in frontend development, CI/CD, and data & storage.
Product Experience: More Reliable, More Cost-Effective
Utility in production is not fully captured by benchmarks. Based on extensive user feedback and product telemetry, we identified real-world behavior issues that break product experience and improved the model's capabilities in those areas, earning uniformly positive feedback from product teams.
Output Formatting and Tool Calling Stability: We fixed multiple baseline reliability issues, bringing the model to production-grade standards across tool configurations and output constraints. Tool-call success rates and error recovery improved, and invalid calls that trigger infinite loops dropped. Hy3 also generalizes across different agent scaffoldings. On SWE-Bench Verified, accuracy variance across scaffoldings like CodeBuddy, Cline, and KiloCode remains within 4%.
World Knowledge and Anti-Hallucination: Internal knowledge and external hallucination are interconnected and critical to real-world product experience. Guided by the ideal behavior pattern: "answer when grounded, state when evidence is missing, do not conflate sources, do not fabricate data," we implemented fine-grained data cleaning and specific training constraints. In internal evaluations on real-world scenarios, Hy3's hallucination rate dropped from 12.5% to 5.4%, and commonsense error rates fell from 25.4% to 12.7%. These improvements materially reduce fact conflation, fabrication, and logical contradiction.
Complex Context Retention and Multi-turn Intent Tracking: Through joint optimization of SFT and RL, Hy3 improved on operational pain points like coreference resolution, ellipsis recovery, and multi-turn constraint inheritance. On internal comprehensive multi-turn tests, the issue rate dropped from 17.4% to 7.9%. It also posted significant gains on open-source long-dialogue benchmarks like MRCR, from 42.9% to 75.1%. Overall outputs are more concise while ensuring complex intents do not decay or drift over long-horizon interactions.
Benchmark Appendix
<p align="center"> <img src="assets/benchmark-appendix.png" width="100%"/> </p>
News
- 🔥 We open-source Hy3 and Hy3-FP8 model weights on Hugging Face, ModelScope, GitCode, and CNB.
Model Links
Quickstart
Deploy Hy3 with vLLM or SGLang first, then call the OpenAI-compatible API:
from openai import OpenAI
client = OpenAI(base_url="http://127.0.0.1:8000/v1", api_key="EMPTY")
response = client.chat.completions.create(
model="hy3",
messages=[
{"role": "user", "content": "Hello! Can you briefly introduce yourself?"},
],
temperature=0.9,
top_p=1.0,
# reasoning_effort: "no_think" (default, direct response), "low", "high" (deep chain-of-thought)
extra_body={"chat_template_kwargs": {"reasoning_effort": "no_think"}},
)
print(response.choices[0].message.content)Recommended parameters:temperature=0.9,top_p=1.0. Reasoning mode: Setreasoning_effortto"high"for complex tasks (math, coding, reasoning) or"no_think"for direct responses.
See the Deployment section below for how to start the API server.
Deployment
Hy3 has 295B parameters in total. To serve it on 8 GPUs, we recommend using H20-3e or other GPUs with larger memory capacity.
vLLM
Build vLLM from source:
uv venv --python 3.12 --seed --managed-python
source .venv/bin/activate
git clone https://github.com/vllm-project/vllm.git
cd vllm
uv pip install --editable . --torch-backend=autoStart the vLLM server with MTP enabled:
# Switch to trtllm backend to work-around mnnvl workspace size issue.
export VLLM_FLASHINFER_ALLREDUCE_BACKEND=trtllm
vllm serve tencent/Hy3 \
--tensor-parallel-size 8 \
--speculative-config.method mtp \
--speculative-config.num_speculative_tokens 2 \
--tool-call-parser hy_v3 \
--reasoning-parser hy_v3 \
--enable-auto-tool-choice \
--port 8000 \
--served-model-name hy3SGLang
Build SGLang from source:
git clone https://github.com/sgl-project/sglang
cd sglang
pip3 install pip --upgrade
pip3 install "transformers>=5.6.0"
pip3 install -e "python"Launch SGLang server with MTP enabled:
python3 -m sglang.launch_server \
--model tencent/Hy3 \
--tp-size 8 \
--tool-call-parser hunyuan \
--reasoning-parser hunyuan \
--speculative-num-steps 2 \
--speculative-eagle-topk 1 \
--speculative-num-draft-tokens 3 \
--speculative-algorithm EAGLE \
--port 8000 \
--served-model-name hy3Finetuning
Hy3 provides a complete model finetuning pipeline. For detailed documentation, please refer to: Finetuning Guide
Quantization
We provide AngelSlim, a more accessible, comprehensive, and efficient toolkit for large model compression. AngelSlim supports a comprehensive suite of compression tools for large-scale multimodal models, including common quantization algorithms, low-bit quantization, and speculative sampling.
License
Hy3 is released under the Apache License 2.0. See LICENSE for details.
Contact Us
If you would like to leave a message for our R&D and product teams, welcome to contact us. You can also reach us via email:
📧 hunyuan_opensource@tencent.com
<p align="center"> <i>Hy3 is developed by the Tencent Hy Team.</i> </p>
