inclusionAI/ZwZ-8B
- License
- apache-2.0
- Size
- not mirrored yet
No official torrent yet — requesting it tells the flock what to host next. You cannot seed a catalog-only page.
Cataloged from inclusionAI/ZwZ-8B
All models by inclusionAI →No official torrent yet — requesting it tells the flock what to host next. You cannot seed a catalog-only page.
Cataloged from inclusionAI/ZwZ-8B
All models by inclusionAI →📃 Paper | 🏠 Project | 🤗 Collection
ZwZ-8B is a fine-grained multimodal perception model built upon Qwen3-VL-8B. It is trained using Region-to-Image Distillation (R2I) combined with reinforcement learning, enabling superior fine-grained visual understanding in a single forward pass — no inference-time zooming or tool calling required.
ZwZ-8B achieves state-of-the-art performance on fine-grained perception benchmarks among open-source models of comparable size, while also demonstrating strong out-of-distribution generalization on visual reasoning, GUI agent, and AIGC detection tasks.
Traditional "Thinking-with-Images" methods zoom into regions of interest during inference, incurring high latency from repeated tool calls and visual re-encoding. ZwZ transforms zooming from an inference-time tool into a training-time primitive:
ZwZ-8B is trained on inclusionAI/ZwZ-RL-VQA, a 74K-sample Region-to-Image distilled VQA dataset synthesized from diverse image pools (SA-1B, LAION, MetaCLIP, Visual Genome, CC12M, STPLS3D).
This model follows the license of Apache 2.0 License.

pip install transformers accelerate torchfrom transformers import Qwen3VLForConditionalGeneration, AutoProcessor
# default: Load the model on the available device(s)model = Qwen3VLForConditionalGeneration.from_pretrained( "inclusionAI/ZwZ-8B", dtype="auto", device_map="auto")
processor = AutoProcessor.from_pretrained("inclusionAI/ZwZ-8B")
messages = [ { "role": "user", "content": [ { "type": "image", "image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg", }, {"type": "text", "text": "Describe this image."}, ], }]
# Preparation for inferenceinputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt")inputs = inputs.to(model.device)
# Inference: Generation of the outputgenerated_ids = model.generate(**inputs, max_new_tokens=128)generated_ids_trimmed = [ out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)]output_text = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False)print(output_text)@article{wei2026zooming, title={Zooming without Zooming: Region-to-Image Distillation for Fine-Grained Multimodal Perception}, author={Wei, Lai and He, Liangbo and Lan, Jun and Dong, Lingzhong and Cai, Yutong and Li, Siyuan and Zhu, Huijia and Wang, Weiqiang and Kong, Linghe and Wang, Yue and Zhang, Zhuosheng and Huang, Weiran}, journal={arXiv preprint arXiv:2602.11858}, year={2026}}