Run Qwen3 with Keras 3: JAX, PyTorch, or TensorFlow
zeromodels/qwen3-8b-base
Pure-Keras 3 conversion of Qwen/Qwen3-8B-Base for zeromodels. One implementation runs unmodified on TensorFlow / Torch / JAX. This is a dense Qwen3; weights are stored in bfloat16.
For model details, license, and usage terms, see the upstream model card.
Paper: Qwen3 Technical Report (arXiv:2505.09388) · HF Papers
✨ Quick start
import os
os.environ["KERAS_BACKEND"] = "torch" # or "jax" / "tensorflow"
from zeromodels.models.qwen3 import Qwen3TextGenerate, Qwen3Tokenizer
model = Qwen3TextGenerate.from_weights("zeromodels/qwen3-8b-base")
tokenizer = Qwen3Tokenizer.from_weights("zeromodels/qwen3-8b-base")
inputs = tokenizer("Give me a short introduction to large language models.")
outputs = model.generate(**inputs, max_new_tokens=128)
print(tokenizer.decode(outputs[0]))
Load any Qwen3 variant the same way with from_weights("zeromodels/<variant>"):
| Variant | Hub |
|---|---|
qwen3-0.6b | zeromodels/qwen3-0.6b |
qwen3-0.6b-base | zeromodels/qwen3-0.6b-base |
qwen3-1.7b | zeromodels/qwen3-1.7b |
qwen3-1.7b-base | zeromodels/qwen3-1.7b-base |
qwen3-4b | zeromodels/qwen3-4b |
qwen3-4b-base | zeromodels/qwen3-4b-base |
qwen3-8b | zeromodels/qwen3-8b |
qwen3-8b-base | zeromodels/qwen3-8b-base |
qwen3-14b | zeromodels/qwen3-14b |
qwen3-14b-base | zeromodels/qwen3-14b-base |
qwen3-32b | zeromodels/qwen3-32b |
qwen3-30b-a3b | zeromodels/qwen3-30b-a3b |
qwen3-30b-a3b-instruct-2507 | zeromodels/qwen3-30b-a3b-instruct-2507 |
Special Thanks
A huge thank you to the Qwen team at Alibaba for creating and releasing these models.
License: Apache 2.0.