SAVRN
Search Contact SAVRN

Open-weight model · Image and text to text

Qwen3.5-2B-auto-optimized

by Islam Assanov islamassanov/Qwen3.5-2B-auto-optimized

This is Qwen3.5-2B auto-optimized by Claude Fable for fast single-request text generation. Fable built and tuned the included qwen35fast inference engine while keeping Qwen's original BF16 weights unchanged.

Parameters2.3B
Context262,144
Weights4.5 GB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads

Runs On

What it takes to serve Qwen3.5-2B-auto-optimized (2.3B parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.

PrecisionWeightsMemory neededCheapest setupPer hourAlso fits
16-bit 4.5 GB 5.5 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
8-bit 2.3 GB 2.7 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00
4-bit 1.1 GB 1.4 GB 1x MI300X (192 GB)
Vultr
$1.85 1x H100 $1.99 · 1x MI325X $2.00

Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Sep 18, 2026.

Model Card

By Islam Assanov, published under apache-2.0, revision 1494d1f9f165.

This is Qwen3.5-2B auto-optimized by Claude Fable for fast single-request text generation. Fable built and tuned the included qwen35fast inference engine while keeping Qwen's original BF16 weights unchanged. Across 12 development workloads, the Fable engine delivered 14× the decode speed of Transformers eager and 1.02× the speed of vLLM with MTP (geometric means). On 12 held-out workloads, it reached 528–866 tokens/s and 1.01× vLLM with MTP. Use Python 3.12 and an NVIDIA CUDA GPU. Download the model and install its dependencies: The original checkpoint also works with Transformers for Qwen's standard text and vision-language workflows; the speed figures above use qwen35fast. - Captured the…

Read Islam Assanov's full model card

Qwen3.5-2B, auto-optimized by Fable

This is Qwen3.5-2B auto-optimized by Claude Fable for fast single-request text generation. Fable built and tuned the included qwen35_fast inference engine while keeping Qwen's original BF16 weights unchanged.

Single H100, batch 1, 256 output tokens Decode tokens/s
Transformers eager 50–51
vLLM 0.29 429–437
vLLM 0.29 + MTP 527–915
Fable-optimized engine 582–848

Across 12 development workloads, the Fable engine delivered 14× the decode speed of Transformers eager and 1.02× the speed of vLLM with MTP (geometric means). On 12 held-out workloads, it reached 528–866 tokens/s and 1.01× vLLM with MTP.

Setup

Use Python 3.12 and an NVIDIA CUDA GPU. Download the model and install its dependencies:

pip install huggingface_hub
hf download islamassanov/Qwen3.5-2B-auto-optimized --local-dir qwen35-fable
pip install -r qwen35-fable/requirements.txt

Run the optimized engine:

import sys
from transformers import AutoTokenizer

path = "qwen35-fable"
sys.path.insert(0, path)
from qwen35_fast import Engine

tokenizer = AutoTokenizer.from_pretrained(path)
prompt = [{"role": "user", "content": "Explain how a CPU cache hierarchy works."}]
input_ids = tokenizer.apply_chat_template(
    prompt, tokenize=True, add_generation_prompt=True, enable_thinking=False
)["input_ids"]

engine = Engine(path, spec_k=2, compile_blocks=True, fused_gdn=True)
output = engine.generate(
    input_ids,
    n_out=512,
    eos_ids={tokenizer.eos_token_id, tokenizer.convert_tokens_to_ids("<|im_end|>")},
)
print(tokenizer.decode(output["tokens"], skip_special_tokens=True))

The original checkpoint also works with Transformers for Qwen's standard text and vision-language workflows; the speed figures above use qwen35_fast.

What Fable changed

  • Captured the decode step in a CUDA graph to reduce launch overhead.
  • Fused decode operations with torch.compile and Triton Gated-DeltaNet kernels.
  • Used the checkpoint's MTP head to propose two tokens per step, accepting each only when the target model makes the same greedy choice.

The optimized path runs batch-1, greedy, non-thinking text generation. The weights and tokenizer come unchanged from Qwen revision 15852e8c16360a2fea060d615a32b45270f8a8fc.

Benchmarks

Results are median decode tokens/s over five runs on one H100 SXM, with 256 generated tokens per prompt. Prompts cover prose, code, and structured output at 128, 512, 2,048, and 8,192 input tokens. Engines ran sequentially in the same session; decode timing starts after the first token.

Development prompts Transformers eager vLLM + MTP Fable engine
Prose, 128–8,192 input tokens 50–51 528–576 582–618
Code, 128–8,192 input tokens 50–51 637–736 661–738
Structured, 128–8,192 input tokens 50–51 824–915 807–848

Full per-prompt results, held-out measurements, and the IFEval regression are in RESULTS.md. The project repository contains the benchmark code and development history.

Configuration

Architecture
Qwen3_5ForConditionalGeneration
Context length (tokens)
262,144
Layers
24
Hidden size
2,048
Feed-forward size
6,144
Attention heads
8
Key/value heads
2
Head dimension
256
Vocabulary size
248,320
Model type
qwen3_5

Identity and Version

Repository
islamassanov/Qwen3.5-2B-auto-optimized
Publisher
Islam Assanov
Task
Image and text to text
Modality
Image and text
Library
transformers
Parameters
2.3B parameters
Languages
Not stated by the source
Revision
1494d1f9f1651c5283d266f2e11ef9cd5d72ecab
First published
2026-09-18
Last updated
2026-09-18

Files and Weights

24 files, 4.6 GB in total. The weights are 1 file totalling 4.5 GB in safetensors.

Weights1 file · 4.5 GB
Configuration13 files · 719.4 KB
Tokenizer4 files · 22.9 MB
Documentation3 files · 21.7 KB
Other2 files · 7.9 KB
Repository1 file · 1.6 KB
Every file
FileTypeSizeSHA-256
model.safetensors-00001-of-00001.safetensorsWeights4.5 GB aa33250c4fc6
bench/common.pyConfiguration2.1 KB
bench/demo.pyConfiguration2.9 KB
bench/demo_worker.pyConfiguration7.3 KB
bench/evaluate.pyConfiguration8.4 KB
bench/workloads.jsonConfiguration579.7 KB
config.jsonConfiguration2.9 KB
model.safetensors.index.jsonConfiguration64.5 KB
preprocessor_config.jsonConfiguration390 B
qwen35_fast/__init__.pyConfiguration41 B
qwen35_fast/engine.pyConfiguration33.3 KB
qwen35_fast/gdn_step.pyConfiguration9.0 KB
qwen35_fast/gemv.pyConfiguration8.5 KB
video_preprocessor_config.jsonConfiguration385 B
LICENSEDocumentation11.5 KB
README.mdDocumentation3.5 KB
RESULTS.mdDocumentation6.7 KB
chat_template.jinjaOther7.8 KB
requirements.txtOther103 B
.gitattributesRepository1.6 KB
merges.txtTokenizer3.4 MB
tokenizer.jsonTokenizer12.8 MB 5f9e4d4901a9
tokenizer_config.jsonTokenizer16.7 KB
vocab.jsonTokenizer6.7 MB

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
4.5 GB
Download from Islam Assanov

Released by Islam Assanov through its official repository on Hugging Face. Read the license.

Built From

Memory Requirements

PrecisionWeights in memory
As published4.5 GB
16-bit4.5 GB
8-bit2.3 GB
4-bit1.1 GB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About Qwen3.5-2B-auto-optimized

How much GPU memory does Qwen3.5-2B-auto-optimized need?

About 5.5 GB at 16-bit and 1.4 GB at 4-bit: the weights (2.3B parameters) plus a working margin. A long context needs more.

What is the cheapest GPU to run Qwen3.5-2B-auto-optimized on?

At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.

Can I use Qwen3.5-2B-auto-optimized commercially?

Yes. Qwen3.5-2B-auto-optimized is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

What is Qwen3.5-2B-auto-optimized's context length?

262,144 tokens, from the maximum position embeddings in its published configuration.

Similar Models

Model · Image and text to text

Qwen3.5-2B

Qwen

Over recent months, we have intensified our focus on developing foundation models that deliver exceptional utility and performance. Qwen3.5 represents a significant leap forward, integrating breakthroughs in multimodal learning, architectural efficiency, reinforcement learning scale, and global accessibility to empower developers and enterprises with unprecedented capability and efficiency. For more details, please refer to our blog post Qwen3.5. WMT24++: a harder subset of WMT24 after difficulty labeling and rebalancing; we report the averaged scores on 55 languages using XCOMET-XXL. Empty cells (--) indicate scores not yet available or not applicable. Scores of Qwen3.5 models are reported…

Open weights apache-2.0 2.3B parameters 262,144 tokens transformers

Model · Image and text to text

Rax-4.5

RaxCore

Over recent months, we have intensified our focus on developing foundation models that deliver exceptional utility and performance. Rax 4.5 represents a significant leap forward, integrating breakthroughs in multimodal learning, architectural efficiency, reinforcement learning scale, and global accessibility to empower developers and enterprises with unprecedented capability and efficiency. Rax 4.5 features the following enhancement: For more details, please refer to our blog post Rax 4.5. WMT24++: a harder subset of WMT24 after difficulty labeling and rebalancing; we report the averaged scores on 55 languages using XCOMET-XXL. Empty cells (--) indicate scores not yet available or not…

Open weights apache-2.0 2.3B parameters 262,144 tokens transformers

Model · Image and text to text

Qwen2-VL-2B-Instruct

Qwen

We're excited to unveil Qwen2-VL, the latest iteration of our Qwen-VL model, representing nearly a year of innovation. SoTA understanding of images of various resolution & ratio: Qwen2-VL achieves state-of-the-art performance on visual understanding benchmarks, including MathVista, DocVQA, RealWorldQA, MTVQA, etc. Understanding videos of 20min+: Qwen2-VL can understand videos over 20 minutes for high-quality video-based question answering, dialog, content creation, etc. Agent that can operate your mobiles, robots, etc.: with the abilities of complex reasoning and decision making, Qwen2-VL can be integrated with devices like mobile phones, robots, etc., for automatic operation based on…

Open weights apache-2.0 2.2B parameters 32,768 tokens transformers

QARI-OCR v0.3 is a specialized vision-language model fine-tuned for Arabic Optical Character Recognition with a focus on structural document understanding. - Built on Qwen2-VL-2B-Instruct, this model excels at preserving document layouts, HTML tags, and formatting while transcribing Arabic text. - It is described in detail in the paper QARI-OCR: High-Fidelity Arabic Text Recognition through Multimodal Large Language Model Adaptation. While QARI v0.2 achieves better raw text accuracy (CER: 0.061), QARI v0.3 excels in: - HTML/Markdown structure preservation - Document layout understanding - Handwritten text recognition (initial capabilities) - 5x faster training than v0.2 You can load this…

Open weights apache-2.0 2.2B parameters 32,768 tokens transformers

Model · Image and text to text

Qwen3-VL-2B-Instruct

Qwen

Meet Qwen3-VL — the most powerful vision-language model in the Qwen series to date. This generation delivers comprehensive upgrades across the board: superior text understanding & generation, deeper visual perception & reasoning, extended context length, enhanced spatial and video dynamics comprehension, and stronger agent interaction capabilities. Available in Dense and MoE architectures that scale from edge to cloud, with Instruct and reasoning‑enhanced Thinking editions for flexible, on‑demand deployment. Text Understanding on par with pure LLMs: Seamless text–vision fusion for lossless, unified comprehension. 1. Interleaved-MRoPE: Full‑frequency allocation over time, width, and height…

Open weights apache-2.0 2.1B parameters 262,144 tokens transformers