Add local models via Git LFS (23 models, ~143 GB)

This commit is contained in:
hackit 2026-06-28 17:25:21 +00:00
parent 94b5c12c2d
commit 9b381fb3de
246 changed files with 38788 additions and 0 deletions

12
.gitattributes vendored Normal file
View file

@ -0,0 +1,12 @@
*.safetensors filter=lfs diff=lfs merge=lfs -text
*.gguf filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.tiktoken filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text
vocab.json filter=lfs diff=lfs merge=lfs -text
merges.txt filter=lfs diff=lfs merge=lfs -text

BIN
chat/gguf/unsloth/Qwen3.5-0.8B-GGUF/Qwen3.5-0.8B-Q4_K_M.gguf (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,996 @@
---
tags:
- unsloth
library_name: transformers
license: apache-2.0
license_link: https://huggingface.co/Qwen/Qwen3.5-0.8B/blob/main/LICENSE
pipeline_tag: image-text-to-text
base_model:
- Qwen/Qwen3.5-0.8B
---
<div>
<p style="margin-bottom: 0; margin-top: 0;">
<h1 style="margin-top: 0rem;">To run Qwen3.5 locally - <a href="https://unsloth.ai/docs/models/qwen3.5">Read our Guide!</a></h1>
</p>
<p style="margin-top: 0;margin-bottom: 0;">
<em><a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0</a> achieves superior accuracy & outperforms other leading quants.</em>
</p>
<div style="margin-top: 0;display: flex; gap: 5px; align-items: center; ">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/qwen3.5">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
</div>
- You can now also fine-tune the model locally with [Unsloth](https://github.com/unslothai/unsloth).
- Read our [Qwen3.5 fine-tuning guide here](https://unsloth.ai/docs/models/qwen3.5/fine-tune).
---
# Qwen3.5-0.8B
<img width="400px" src="https://qianwen-res.oss-accelerate.aliyuncs.com/logo_qwen3.5.png">
[![Qwen Chat](https://img.shields.io/badge/%F0%9F%92%9C%EF%B8%8F%20Qwen%20Chat%20-536af5)](https://chat.qwen.ai)
> [!Note]
> This repository contains model weights and configuration files for the post-trained model in the Hugging Face Transformers format.
>
> These artifacts are compatible with Hugging Face Transformers, vLLM, SGLang, KTransformers, etc.
>
> In light of its parameter scale, the intended use cases are prototyping, task-specific fine-tuning, and other research or development purposes.
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.
## Qwen3.5 Highlights
Qwen3.5 features the following enhancement:
- **Unified Vision-Language Foundation**: Early fusion training on multimodal tokens achieves cross-generational parity with Qwen3 and outperforms Qwen3-VL models across reasoning, coding, agents, and visual understanding benchmarks.
- **Efficient Hybrid Architecture**: Gated Delta Networks combined with sparse Mixture-of-Experts deliver high-throughput inference with minimal latency and cost overhead.
- **Scalable RL Generalization**: Reinforcement learning scaled across million-agent environments with progressively complex task distributions for robust real-world adaptability.
- **Global Linguistic Coverage**: Expanded support to 201 languages and dialects, enabling inclusive, worldwide deployment with nuanced cultural and regional understanding.
- **Next-Generation Training Infrastructure**: Near-100% multimodal training efficiency compared to text-only training and asynchronous RL frameworks supporting massive-scale agent scaffolds and environment orchestration.
For more details, please refer to our blog post [Qwen3.5](https://qwen.ai/blog?id=qwen3.5).
## Model Overview
- Type: Causal Language Model with Vision Encoder
- Training Stage: Pre-training & Post-training
- Language Model
- Number of Parameters: 0.8B
- Hidden Dimension: 1024
- Token Embedding: 248320 (Padded)
- Number of Layers: 24
- Hidden Layout: 6 × (3 × (Gated DeltaNet → FFN) → 1 × (Gated Attention → FFN))
- Gated DeltaNet:
- Number of Linear Attention Heads: 16 for V and 16 for QK
- Head Dimension: 128
- Gated Attention:
- Number of Attention Heads: 8 for Q and 2 for KV
- Head Dimension: 256
- Rotary Position Embedding Dimension: 64
- Feed Forward Network:
- Intermediate Dimension: 3584
- LM Output: 248320 (Tied to token embedding)
- MTP: trained with multi-steps
- Context Length: 262,144 natively
## Benchmark Results
### Language
<div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;max-width:1000px;margin:0 auto;padding:16px 0">
<table style="border-collapse:collapse;font-size:13px">
<thead><tr>
<th style="padding:10px 7px;text-align:left;font-weight:600;border-bottom:2px solid #7c3aed;color:#7c3aed"></th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3-4B-2507</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3-1.7B</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3.5-2B</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3.5-0.8B</th></tr></thead>
<tbody>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Non-Thinking Mode</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLU-Pro</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">40.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">55.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">29.7</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLU-Redux</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">C-Eval</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">80.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">61.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">65.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">46.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">SuperGPQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">21.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">30.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">16.9</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">IFEval</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">83.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">61.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">52.1</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMMLU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">46.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">56.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">34.1</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Knowledge & STEM (Thinking)</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLU-Pro</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">74.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">56.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">66.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.3</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLU-Redux</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">86.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">79.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">59.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">C-Eval</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">82.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">SuperGPQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">47.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">31.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">37.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">21.3</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">GPQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">65.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">40.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">51.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">11.9</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Instruction Following (Thinking</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">IFEval</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">87.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">72.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">78.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">44.0</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">IFBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">41.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">21.0</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MultiChallenge</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">41.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">27.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">33.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">18.9</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Long Context (Thinking</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">AA-LCR</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">32.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">6.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">25.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">4.7</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">LongBench v2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">38.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.1</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Reasoning (Thinking</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">HMMT Feb 25</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">57.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">10.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">22.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">HMMT Nov 25</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">8.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">19.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">General Agent (Thinking</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">BFCL-V4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">39.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">43.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">25.3</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">TAU2-Bench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">43.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">11.6</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Multilingualism (Thinking</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMMLU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">70.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">57.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">63.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">44.3</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLU-ProX</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">62.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">49.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">52.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">34.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">NOVA-63</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">47.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">40.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">46.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">INCLUDE</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">51.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">55.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">40.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">Global PIQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">63.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">59.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">PolyMATH</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">46.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">25.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">8.2</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">WMT24++</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">58.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">39.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">45.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">27.2</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MAXIFE</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">72.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">60.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">39.2</td>
</tr>
</tbody>
</table>
<p style="margin-top:12px;font-size:11px;opacity:0.7">
* TAU2-Bench: we follow the official setup except for the airline domain, where all models are evaluated by applying the fixes proposed in the Claude Opus 4.5 system card.
<br>
* MMLU-ProX: we report the averaged accuracy on 29 languages.<br>
* WMT24++: a harder subset of WMT24 after difficulty labeling and rebalancing; we report the averaged scores on 55 languages using XCOMET-XXL.<br>
* MAXIFE: we report the accuracy on English + multilingual original prompts (totally 23 settings).<br>
* Experimental settings: top_p=0.95, top_k=20, presence_penalty=1.5, and temperature=1.0 were used.<br>
* Empty cells (--) indicate scores not yet available or not applicable.
</p>
</div>
### Vision Language
<div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;max-width:1000px;margin:0 auto;padding:16px 0">
<table style="width:100%;border-collapse:collapse;font-size:13px">
<thead><tr>
<th style="padding:10px 7px;text-align:left;font-weight:600;border-bottom:2px solid #7c3aed;color:#7c3aed"></th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3-VL-4B</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3-VL-2B</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3.5-2B</th><th style="padding:10px 7px;text-align:center;font-weight:500;border-bottom:2px solid #7c3aed;color:#7c3aed;font-size: 14px;">Qwen3.5-0.8B</th></tr></thead>
<tbody>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">STEM and Puzzle</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMMU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">70.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">61.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.2/64.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">49/47.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMMU-Pro</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">57.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.3/47.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">31.2/31.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">Mathvista(mini)</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">79.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">76.7/73.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">62.2/58.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">DynaMath</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">74.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">66.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.6/69.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">49.9/46.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">ZEROBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">0.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">0.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">1.0/0.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">0.0/0.0</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">ZEROBench_sub</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">18.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">13.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">17.1/18.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">12.9/11.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">VlmsAreBlind</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">75.8/74.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">59.4/57.3</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">General VQA</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">RealWorldQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">74.5/71.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">63.4/61.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMStar</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">71.7/68.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">58.3/55.9</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMBench<sub><small>EN-DEV-v1.1</small></sub></td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">86.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">81.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">83.3/81.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.9/68.0</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">SimpleVQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">43.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">38.5/39.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">31.3/30.4</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">HallusionBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">54.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">58.0/51.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">53.1/46.7</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Text Recognition and Document Understanding</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMLongBench-Doc</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">44.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">33.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">45.4/38.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">33.6/28.1</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">AI2D_TEST</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">80.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">83.3/81.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.9/68.7</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">CC-OCR</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">73.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">72.9/75.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">63.2/66.7</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">OmniDocBench1.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">80.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">65.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">79.8/80.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">61.0/70.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">CharXiv(RQ)</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">50.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">37.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">58.8/52.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">41.3/38.2</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">OCRBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">80.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">79.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.5/85.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">74.5/79.1</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Spatial Intelligence</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">RefCOCO(avg)</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">88.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.8/84.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">79.3/77.8</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">CountBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">89.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">84.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">91.4/86.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">77.0/68.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">ODInW13</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">39.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">36.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">35.9/40.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">31.6/33.2</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">ERQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">47.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">41.8</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">43.8/33.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">34.5/23.8</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">EmbSpatialBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">80.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">75.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">77.9/66.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.6/54.6</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">RefSpatialBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">45.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">28.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">32.9/30.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">23.5/21.7</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">Hypersim</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">11.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">11.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">12.4/12.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">11.9/11.0</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">SUNRGBD</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">28.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">28.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">28.7/25.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.1/23.3</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">Nuscene</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">4.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">4.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">6.9/8.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">5.7/7.0</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Video Understanding</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">VideoMME<sub><small>(w sub.)</sub></small></td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">76.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">67.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">75.6/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">63.8/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">VideoMME<sub><small>(w/o sub.)</sub></small></td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">68.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">62.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.0/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">57.7/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">VideoMMMU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">54.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">62.1/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">44.3/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MLVU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">75.7</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.2</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">76.2/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">65.6/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MVBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">69.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">64.9/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">55.8/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">LVBench</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">53.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">47.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">57.1/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">45.1/--</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MMVU</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">58.6</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.6/--</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">34.3/--</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Visual Agent </td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">ScreenSpot Pro</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">59.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--/54.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">--/46.5</td>
</tr>
<tr><td colspan="5" style="padding:8px 12px;font-weight:600;color:#7c3aed;border-bottom:1px solid rgba(124, 58, 237, 0.2);background:rgba(124, 58, 237, 0.1)">Medical VQA</td></tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">SLAKE</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">65.9</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">61.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">74.4/67.5</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">62.6/59.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">PMC-VQA</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">42.4</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">48.8/54.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">40.4/45.5</td>
</tr>
<tr>
<td style="padding:7px 7px;padding-left:20px;border-bottom:1px solid rgba(128, 128, 128, 0.15);">MedXpertQA-MM</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.3</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">13.0</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">26.9/19.1</td>
<td style="padding:7px 7px;text-align:center;border-bottom:1px solid rgba(128, 128, 128, 0.15)">17.1/25.3</td>
</tr>
</tbody>
</table>
<p style="margin-top:12px;font-size:11px;opacity:0.7">
* Scores of Qwen3.5 models are reported as Thinking / Non-thinking.<br>
* MathVision: our models score is evaluated using a fixed prompt, e.g., “Please reason step by step, and put your final answer within \boxed{}.” For other models, we report the higher score between runs with and without the \boxed{} formatting.<br>
* Experimental settings: For the Video benchmarks, we used top_p=0.95, top_k=20, presence_penalty=1.5, and temperature=1.0. All other benchmarks adopted the same sampling configuration but with temperature=0.6 under the thinking mode. Under the non-thinking mode, the sampling parameters were set to top_p=0.8, top_k=20, presence_penalty=1.5, and temperature=0.7.<br>
* Empty cells (--) indicate scores not yet available or not applicable.
</p>
</div>
## Quickstart
> [!Important]
> Qwen3.5 models support both non-thinking and thinking mode. **Qwen3.5-0.8B operates in non-thinking mode by default**.
> To enable thinking, refer to the examples [here](#thinking-mode).
For streamlined integration, we recommend using Qwen3.5 via APIs. Below is a guide to use Qwen3.5 via OpenAI-compatible API.
### Serving Qwen3.5
Qwen3.5 can be served via APIs with popular inference frameworks.
In the following, we show example commands to launch OpenAI-Compatible API servers for Qwen3.5 models.
> [!Important]
> Inference efficiency and throughput vary significantly across frameworks.
> We recommend using the latest framework versions to ensure optimal performance and compatibility.
> For production workloads or high-throughput scenarios, dedicated serving engines such as SGLang, KTransformers or vLLM are strongly recommended.
> [!Important]
> The model has a default context length of 262,144 tokens.
> If you encounter out-of-memory (OOM) errors, consider reducing the context window.
#### SGLang
[SGLang](https://github.com/sgl-project/sglang) is a fast serving framework for large language models and vision language models.
SGLang from the main branch of the open-source repository is required for Qwen3.5, which can be installed using the following command in a fresh environment:
```shell
uv pip install 'git+https://github.com/sgl-project/sglang.git#subdirectory=python&egg=sglang[all]'
```
See [its documentation](https://docs.sglang.ai/get_started/install.html) for more details.
The following will create API endpoints at `http://localhost:8000/v1`:
- **Standard Version**: The following command can be used to create an API endpoint with maximum context length 262,144 tokens using tensor parallel on 8 GPUs.
```shell
python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144
```
- **Tool Use**: To support tool use, you can use the following command.
```shell
python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144 --tool-call-parser qwen3_coder
```
- **Multi-Token Prediction (MTP)**: The following command is recommended for MTP:
```shell
python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144 --speculative-algo NEXTN --speculative-num-steps 3 --speculative-eagle-topk 1 --speculative-num-draft-tokens 4
```
#### vLLM
[vLLM](https://github.com/vllm-project/vllm) is a high-throughput and memory-efficient inference and serving engine for LLMs.
vLLM from the main branch of the open-source repository is required for Qwen3.5, which can be installed using the following command in a fresh environment:
```shell
uv pip install vllm --torch-backend=auto --extra-index-url https://wheels.vllm.ai/nightly
```
See [its documentation](https://docs.vllm.ai/en/stable/getting_started/installation/index.html) for more details.
For detailed Qwen3.5 usage guide, see the [vLLM Qwen3.5 recipe](https://docs.vllm.ai/projects/recipes/en/latest/Qwen/Qwen3.5.html).
The following will create API endpoints at `http://localhost:8000/v1`:
- **Standard Version**: The following command can be used to create an API endpoint with maximum context length 262,144 tokens using tensor parallel on 8 GPUs.
```shell
vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144
```
- **Tool Call**: To support tool use, you can use the following command.
```shell
vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --enable-auto-tool-choice --tool-call-parser qwen3_coder
```
- **Multi-Token Prediction (MTP)**: The following command is recommended for MTP:
```shell
vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}'
```
- **Text-Only**: The following command skips the vision encoder and multimodal profiling to free up memory for additional KV cache:
```shell
vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --language-model-only
```
#### KTransformers
[KTransformers](https://github.com/kvcache-ai/ktransformers) is a flexible framework for experiencing cutting-edge LLM inference optimizations with CPU-GPU heterogeneous computing.
For running Qwen3.5 with KTransformers, see the [KTransformers Deployment Guide](https://github.com/kvcache-ai/ktransformers/blob/main/doc/en/Qwen3.5.md).
#### Hugging Face Transformers
Hugging Face Transformers contains a _lightweight_ server which can be used for quick testing and moderate load deployment.
The latest `transformers` is required for Qwen3.5:
```shell
pip install "transformers[serving] @ git+https://github.com/huggingface/transformers.git@main"
```
See [its documentation](https://huggingface.co/docs/transformers/main/serving) for more details. Please also make sure torchvision and pillow are installed.
Then, run `transformers serve` to launch a server with API endpoints at `http://localhost:8000/v1`; it will place the model on accelerators if available:
```shell
transformers serve --force-model Qwen/Qwen3.5-0.8B --port 8000 --continuous-batching
```
### Using Qwen3.5 via the Chat Completions API
The chat completions API is accessible via standard HTTP requests or OpenAI SDKs.
Here, we show examples using the OpenAI Python SDK.
Before starting, make sure it is installed and the API key and the API base URL is configured, e.g.:
```shell
pip install -U openai
# Set the following accordingly
export OPENAI_BASE_URL="http://localhost:8000/v1"
export OPENAI_API_KEY="EMPTY"
```
> [!Tip]
> We recommend using the following set of sampling parameters for generation
> - Non-thinking mode for text tasks: `temperature=1.0, top_p=1.00, top_k=20, min_p=0.0, presence_penalty=2.0, repetition_penalty=1.0`
> - Non-thinking mode for VL tasks: `temperature=0.7, top_p=0.80, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0`
> - Thinking mode for text tasks: `temperature=1.0, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0`
> - Thinking mode for VL or precise coding (e.g. WebDev) tasks : `temperature=0.6, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=0.0, repetition_penalty=1.0`
>
> Please note that the support for sampling parameters varies according to inference frameworks.
#### Text-Only Input
```python
from openai import OpenAI
# Configured by environment variables
client = OpenAI()
messages = [
{"role": "user", "content": "Give me a short introduction to large language models."},
]
chat_response = client.chat.completions.create(
model="Qwen/Qwen3.5-0.8B",
messages=messages,
max_tokens=32768,
temperature=1.0,
top_p=1.0,
presence_penalty=2.0,
extra_body={
"top_k": 20,
},
)
print("Chat response:", chat_response)
```
#### Image Input
```python
from openai import OpenAI
# Configured by environment variables
client = OpenAI()
messages = [
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://qianwen-res.oss-accelerate.aliyuncs.com/Qwen3.5/demo/RealWorld/RealWorld-04.png"
}
},
{
"type": "text",
"text": "Where is this?"
}
]
}
]
chat_response = client.chat.completions.create(
model="Qwen/Qwen3.5-0.8B",
messages=messages,
max_tokens=32768,
temperature=0.7,
top_p=0.8,
presence_penalty=1.5,
extra_body={
"top_k": 20,
},
)
print("Chat response:", chat_response)
```
#### Video Input
```python
from openai import OpenAI
# Configured by environment variables
client = OpenAI()
messages = [
{
"role": "user",
"content": [
{
"type": "video_url",
"video_url": {
"url": "https://qianwen-res.oss-accelerate.aliyuncs.com/Qwen3.5/demo/video/N1cdUjctpG8.mp4"
}
},
{
"type": "text",
"text": "Summarize the video content."
}
]
}
]
# When vLLM is launched with `--media-io-kwargs '{"video": {"num_frames": -1}}'`,
# video frame sampling can be configured via `extra_body` (e.g., by setting `fps`).
# This feature is currently supported only in vLLM.
#
# By default, `fps=2` and `do_sample_frames=True`.
# With `do_sample_frames=True`, you can customize the `fps` value to set your desired video sampling rate.
chat_response = client.chat.completions.create(
model="Qwen/Qwen3.5-0.8B",
messages=messages,
max_tokens=32768,
temperature=0.7,
top_p=0.8,
presence_penalty=1.5,
extra_body={
"top_k": 20,
"mm_processor_kwargs": {"fps": 2, "do_sample_frames": True},
},
)
print("Chat response:", chat_response)
```
#### Thinking Mode
> [!Important]
> Qwen3.5 does not officially support the soft switch of Qwen3, i.e., `/think` and `/nothink`.
You can make the model think before response by configuring the API parameters.
For example,
```python
from openai import OpenAI
# Configured by environment variables
client = OpenAI()
messages = [
{"role": "user", "content": "Type \"I love Qwen3.5\" backwards"},
]
chat_response = client.chat.completions.create(
model="Qwen/Qwen3.5-0.8B",
messages=messages,
max_tokens=81920,
temperature=1.0,
top_p=0.95,
presence_penalty=1.5,
extra_body={
"top_k": 20,
"enable_thinking": True,
},
)
print("Chat response:", chat_response)
```
> [!Important]
> In thinking mode, we have observed that when using the recommended sampling parameters, Qwen3.5-0.8B is more prone to entering thinking loops compared to other Qwen3.5 models, which may prevent it from terminating generation properly.
> We recommend further tuning the sampling parameters specific to your use case and utilizing the API's streaming generation mode (if supported) to enable timely detection and interruption of such anomalous generation behaviors.
## Agentic Usage
Qwen3.5 excels in tool calling capabilities.
### Qwen-Agent
We recommend using [Qwen-Agent](https://github.com/QwenLM/Qwen-Agent) to quickly build Agent applications with Qwen3.5.
To define the available tools, you can use the MCP configuration file, use the integrated tool of Qwen-Agent, or integrate other tools by yourself.
```python
import os
from qwen_agent.agents import Assistant
# Define LLM
# Using OpenAI-compatible API endpoint. The API backend should disable response parsers.
llm_cfg = {
# Use your own model service compatible with OpenAI API by vLLM/SGLang:
'model': 'Qwen/Qwen3.5-0.8B',
'model_type': 'qwenvl_oai',
'model_server': 'http://localhost:8000/v1', # api_base
'api_key': 'EMPTY',
'generate_cfg': {
'use_raw_api': True,
# Pass the parameter of whether to enable thinking mode in this way
# 'extra_body': {
# 'chat_template_kwargs': {'enable_thinking': True}
# },
},
}
# Define Tools
tools = [
{'mcpServers': { # You can specify the MCP configuration file
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/xxxx/Desktop"]
}
}
}
]
# Define Agent
bot = Assistant(llm=llm_cfg, function_list=tools)
# Streaming generation
messages = [{'role': 'user', 'content': 'Help me organize my desktop.'}]
for responses in bot.run(messages=messages):
pass
print(responses)
# Streaming generation
messages = [{'role': 'user', 'content': 'Develop a dog website and save it on the desktop'}]
for responses in bot.run(messages=messages):
pass
print(responses)
```
### Qwen Code
[Qwen Code](https://github.com/QwenLM/qwen-code) is an open-source AI agent for the terminal, optimized for Qwen models. It helps you understand large codebases, automate tedious work, and ship faster.
For more information, please refer to [Qwen Code](https://qwenlm.github.io/qwen-code-docs/).
## Best Practices
To achieve optimal performance, we recommend the following settings:
1. **Sampling Parameters**:
- We suggest using the following sets of sampling parameters depending on the mode and task type:
- **Non-thinking mode for text tasks**:
`temperature=1.0`, `top_p=1.00`, `top_k=20`, `min_p=0.0`, `presence_penalty=2.0`, `repetition_penalty=1.0`
- **Non-thinking mode for VL tasks**:
`temperature=0.7`, `top_p=0.80`, `top_k=20`, `min_p=0.0`, `presence_penalty=1.5`, `repetition_penalty=1.0`
- **Thinking mode for text tasks**:
`temperature=1.0`, `top_p=0.95`, `top_k=20`, `min_p=0.0`, `presence_penalty=1.5`, `repetition_penalty=1.0`
- **Thinking mode for VL or precise coding (e.g., WebDev) tasks**:
`temperature=0.6`, `top_p=0.95`, `top_k=20`, `min_p=0.0`, `presence_penalty=0.0`, `repetition_penalty=1.0`
- For supported frameworks, you can adjust the `presence_penalty` parameter between 0 and 2 to reduce endless repetitions. However, using a higher value may occasionally result in language mixing and a slight decrease in model performance.
2. **Adequate Output Length**: We recommend using an output length of 32,768 tokens for most queries. For benchmarking on highly complex problems, such as those found in math and programming competitions, we suggest setting the max output length to 81,920 tokens. This provides the model with sufficient space to generate detailed and comprehensive responses, thereby enhancing its overall performance.
3. **Standardize Output Format**: We recommend using prompts to standardize model outputs when benchmarking.
- **Math Problems**: Include "Please reason step by step, and put your final answer within \boxed{}." in the prompt.
- **Multiple-Choice Questions**: Add the following JSON structure to the prompt to standardize responses: "Please show your choice in the `answer` field with only the choice letter, e.g., `"answer": "C"`."
4. **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final output part and does not need to include the thinking content. It is implemented in the provided chat template in Jinja2. However, for frameworks that do not directly use the Jinja2 chat template, it is up to the developers to ensure that the best practice is followed.
5. **Long Video Understanding**: To optimize inference efficiency for plain text and images, the `size` parameter in the released `video_preprocessor_config.json` is conservatively configured. It is recommended to set the `longest_edge` parameter in the video_preprocessor_config file to 469,762,048 (corresponding to 224k video tokens) to enable higher frame-rate sampling for hour-scale videos and thereby achieve superior performance. For example,
```json
{"longest_edge": 469762048, "shortest_edge": 4096}
```
Alternatively, override the default values via engine startup parameters. For implementation details, refer to: [vLLM](https://github.com/vllm-project/vllm/pull/34330) / [SGLang](https://github.com/sgl-project/sglang/pull/18467).
### Citation
If you find our work helpful, feel free to give us a cite.
```bibtex
@misc{qwen3.5,
title = {{Qwen3.5}: Towards Native Multimodal Agents},
author = {{Qwen Team}},
month = {February},
year = {2026},
url = {https://qwen.ai/blog?id=qwen3.5}
}
```

BIN
chat/gguf/unsloth/Qwen3.5-0.8B-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
chat/gguf/unsloth/Qwen3.5-2B-GGUF/Qwen3.5-2B-Q4_K_M.gguf (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load diff

BIN
chat/gguf/unsloth/Qwen3.5-2B-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
chat/gguf/unsloth/Qwen3.5-4B-GGUF/Qwen3.5-4B-Q4_K_M.gguf (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load diff

BIN
chat/gguf/unsloth/Qwen3.5-4B-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

BIN
chat/gguf/unsloth/Qwen3.5-9B-GGUF/Qwen3.5-9B-Q4_K_M.gguf (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load diff

BIN
chat/gguf/unsloth/Qwen3.5-9B-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

BIN
chat/gguf/unsloth/Qwen3.6-35B-A3B-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,609 @@
---
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
pipeline_tag: image-text-to-text
base_model: google/gemma-4-12B-it
tags:
- gemma4
- unsloth
- gemma
- google
- gemma4_unified
---
# Read our How to [Run Gemma 4 12B Guide!](https://docs.unsloth.ai/models/gemma-4)
<div>
<p style="margin: 0 0 0px 0; margin-top: 0px;">
<em>See <a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0 GGUFs</a> for our quantization benchmarks.</em>
</p>
<div style="display: flex; gap: 5px; align-items: center; margin-bottom: 0px;">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/gemma-4">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
<ul style="margin: 0;">
<li><b>Jun 9 Update:</b> Added MTP support. See our <a href="https://unsloth.ai/docs/models/mtp">MTP Guide</a>.</li>
<li>Gemma 4 12B can now be run and fine-tuned in <a href="https://unsloth.ai/docs/new/studio">Unsloth Studio</a>. <a href="https://unsloth.ai/docs/models/gemma-4">Read our guide</a>.</li>
<li>See all versions of Gemma 4 (GGUF, 16-bit etc.) <a href="https://huggingface.co/collections/unsloth/gemma-4">in our collection</a>.</li>
<li>Example of Gemma 4 E4B (4-bit GGUF) running in Unsloth Studio with tool-calling:</li>
</ul>
</div>
<img width="600" alt="gemma 4 in unsloth studio" src="https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/BTmv3pr-QQ8ZMxxX3Ofnf.gif" />
---
<div align="center">
<img src=https://ai.google.dev/gemma/images/gemma4_banner.png>
</div>
<p align="center">
<a href="https://huggingface.co/collections/google/gemma-4" target="_blank">Hugging Face</a> |
<a href="https://github.com/google-gemma" target="_blank">GitHub</a> |
<a href="https://blog.google/innovation-and-ai/technology/developers-tools/introducing-gemma-4-12B/" target="_blank">Launch Blog</a> |
<a href="https://ai.google.dev/gemma/docs/core" target="_blank">Documentation</a>
<br>
<b>License</b>: <a href="https://ai.google.dev/gemma/docs/gemma_4_license" target="_blank">Apache 2.0</a> | <b>Authors</b>: <a href="https://deepmind.google/models/gemma/" target="_blank">Google DeepMind</a>
</p>
> [!Note]
> This model card is for the Gemma 4 12B Unified model, which is part of the Gemma 4 family of open models. Built with the same multimodal functionality as Gemma 4 E2B and E4B (text, audio, image, and video inputs), it brings native audio and vision understanding directly to local environments without the need for separate encoders. This unified approach to multimodality makes the model encoder-free, offering a deployment size that is perfect for consumer devices and streamlined local execution.
Gemma is a family of open models built by Google DeepMind. Gemma 4 models are multimodal, handling text and image input (with audio supported on E2B, E4B, and 12B) and generating text output. This release includes open-weights models in both pre-trained and instruction-tuned variants. Gemma 4 features a context window of up to 256K tokens and maintains multilingual support in over 140 languages.
Featuring both Dense and Mixture-of-Experts (MoE) architectures, Gemma 4 is well-suited for tasks like text generation, coding, and reasoning. The models are available in five distinct sizes: **E2B**, **E4B**, **12B**, **26B A4B**, and **31B**. Their diverse sizes make them deployable in environments ranging from high-end phones to laptops and servers, democratizing access to state-of-the-art AI.
Gemma 4 introduces key **capability and architectural advancements**:
* **Reasoning** All models in the family are designed as highly capable reasoners, with configurable thinking modes.
* **Extended Multimodalities** Processes Text, Image with variable aspect ratio and resolution support (all models), Video, and Audio (featured natively on the E2B, E4B, and 12B models).
* **Diverse & Efficient Architectures** Offers Dense and Mixture-of-Experts (MoE) variants of different sizes for scalable deployment.
* **Optimized for On-Device** Smaller models are specifically designed for efficient local execution on laptops and mobile devices.
* **Increased Context Window** The small models feature a 128K context window, while the medium models support 256K.
* **Enhanced Coding & Agentic Capabilities** Achieves notable improvements in coding benchmarks alongside native function-calling support, powering highly capable autonomous agents.
* **Native System Prompt Support** Gemma 4 introduces native support for the `system` role, enabling more structured and controllable conversations.
## **Models Overview**
Gemma 4 models are designed to deliver frontier-level performance at each size, targeting deployment scenarios from mobile and edge devices (E2B, E4B) to consumer GPUs and workstations (12B, 26B A4B, 31B). They are well-suited for reasoning, agentic workflows, coding, and multimodal understanding.
The models employ a hybrid attention mechanism that interleaves local sliding window attention with full global attention, ensuring the final layer is always global. This hybrid design delivers the processing speed and low memory footprint of a lightweight model without sacrificing the deep awareness required for complex, long-context tasks. To optimize memory for long contexts, global layers feature unified Keys and Values, and apply Proportional RoPE (p-RoPE).
### Dense Models
| Property | E2B | E4B | 12B Unified | 31B Dense |
| :---- | :---- | :---- | :---- | :---- |
| **Total Parameters** | 2.3B effective <br> (5.1B with embeddings) | 4.5B effective <br> (8B with embeddings) | 11.95B | 30.7B |
| **Layers** | 35 | 42 | 48 | 60 |
| **Sliding Window** | 512 tokens | 512 tokens | 1024 tokens | 1024 tokens |
| **Context Length** | 128K tokens | 128K tokens | 256K tokens | 256K tokens |
| **Vocabulary Size** | 262K | 262K | 262K | 262K |
| **Supported Modalities** | Text, Image, Audio | Text, Image, Audio | Text, Image, Audio | Text, Image |
| **Vision Encoder Parameters** | *~150M* | *~150M* | - | *~550M* |
| **Audio Encoder Parameters** | *~300M* | *~300M* | - | No Audio |
The "E" in E2B and E4B stands for "effective" parameters. The smaller models incorporate Per-Layer Embeddings (PLE) to maximize parameter efficiency in on-device deployments. Rather than adding more layers or parameters to the model, PLE gives each decoder layer its own small embedding for every token. These embedding tables are large but are only used for quick lookups, which is why the effective parameter count is much smaller than the total.
The "Unified" in Gemma 4 12B Unified refers to its encoder-free architecture. Other Gemma 4 models use dedicated encoders to process multimodal data before passing it to the LLM. Gemma 4 12B eliminates these encoders entirely, projecting raw image patches and audio waveforms directly into the LLM's embedding space through lightweight linear layers. This unified approach means all modalities flow straight into a single decoder-only transformer, reducing multimodal latency and allowing the entire model to be fine-tuned in one pass.
### Mixture-of-Experts (MoE) Model
| Property | 26B A4B MoE |
| :---- | :---- |
| **Total Parameters** | 25.2B |
| **Active Parameters** | 3.8B |
| **Layers** | 30 |
| **Sliding Window** | 1024 tokens |
| **Context Length** | 256K tokens |
| **Vocabulary Size** | 262K |
| **Expert Count** | 8 active / 128 total and 1 shared |
| **Supported Modalities** | Text, Image |
| **Vision Encoder Parameters** | *~550M* |
The "A" in 26B A4B stands for "active parameters" in contrast to the total number of parameters the model contains. By only activating a 4B subset of parameters during inference, the Mixture-of-Experts model runs much faster than its 26B total might suggest. This makes it an excellent choice for fast inference compared to the dense 31B model since it runs almost as fast as a 4B-parameter model.
## **Benchmark Results**
These models were evaluated against a large collection of different datasets and metrics to cover different aspects of text generation. Evaluation results marked in the table are for instruction-tuned models.
| | Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 12B Unified | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (no think) |
| :---- | :---- | :---- | :---- | :---- | :---- | :---- |
| MMLU Pro | 85.2% | 82.6% | 77.2% | 69.4% | 60.0% | 67.6% |
| AIME 2026 no tools | 89.2% | 88.3% | 77.5% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 72.0% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 1659 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 78.8% | 58.6% | 43.4% | 42.4% |
| Tau2 (average over 3) | 76.9% | 68.2% | 69.0% | 42.2% | 24.5% | 16.2% |
| HLE no tools | 19.5% | 8.7% | 5.2% | - | - | - |
| HLE with search | 26.5% | 17.2% | - | - | - | - |
| BigBench Extra Hard | 74.4% | 64.8% | 53.0% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 83.4% | 76.6% | 67.4% | 70.7% |
| **Vision** | | | | | | |
| MMMU Pro | 76.9% | 73.8% | 69.1% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (average edit distance, lower is better) | 0.131 | 0.149 | 0.164 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 79.7% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 48.7% | 28.7% | 23.5% | - |
| **Audio** | | | | | | |
| CoVoST | - | - | 38.5<sup>*</sup> | 35.54 | 33.47 | - |
| FLEURS (lower is better) | - | - | 0.069<sup>*</sup> | 0.08 | 0.09 | - |
| **Long Context** | | | | | | |
| MRCR v2 8 needle 128k (average) | 66.4% | 44.1% | 43.4% | 25.4% | 19.1% | 13.5% |
<sup>*</sup>Excluding Chinese language.
## **Core Capabilities**
Gemma 4 models handle a broad range of tasks across text, vision, and audio. Key capabilities include:
* **Thinking** Built-in reasoning mode that lets the model think step-by-step before answering.
* **Long Context** Context windows of up to 128K tokens (E2B/E4B) and 256K tokens (12B, 26B A4B/31B).
* **Image Understanding** Object detection, Document/PDF parsing, screen and UI understanding, chart comprehension, OCR (including multilingual), handwriting recognition, and pointing. Images can be processed at variable aspect ratios and resolutions.
* **Video Understanding** Analyze video by processing sequences of frames.
* **Interleaved Multimodal Input** Freely mix text and images in any order within a single prompt.
* **Function Calling** Native support for structured tool use, enabling agentic workflows.
* **Coding** Code generation, completion, and correction.
* **Multilingual** Out-of-the-box support for 35+ languages, pre-trained on 140+ languages.
* **Audio** (E2B, E4B, and 12B only) Automatic speech recognition (ASR) and speech-to-translated-text translation across multiple languages.
## Getting Started
You can use all Gemma 4 models with the latest version of Transformers. To get started, install the necessary dependencies in your environment:
`pip install -U transformers torch accelerate`
Once you have everything installed, you can proceed to load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output:
```python
# Prompt
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a short joke about saving RAM."},
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
enable_thinking=False
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
Below, you will also find snippets for processing audio (E2B, E4B, 12B only), images, and video alongside text:
<details>
<summary>Code for processing Audio</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the audio URL in the prompt:
```python
# Prompt - add audio after text
messages = [
{
"role": "user",
"content": [
{"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
{"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/journal1.wav"},
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Images</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the image URL in the prompt:
```python
# Prompt - add image before text
messages = [
{
"role": "user", "content": [
{"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/GoldenGate.png"},
{"type": "text", "text": "What is shown in this image?"}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Videos</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the video URL in the prompt:
```python
# Prompt - add video before text
messages = [
{
'role': 'user',
'content': [
{"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
{'type': 'text', 'text': 'Describe this video.'}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
## **Best Practices**
For the best performance, use these configurations and best practices:
### 1. Sampling Parameters
Use the following standardized sampling configuration across all use cases:
* `temperature=1.0`
* `top_p=0.95`
* `top_k=64`
### 2. Thinking Mode Configuration
Compared to Gemma 3, the models use standard `system`, `assistant`, and `user` roles. To properly manage the thinking process, use the following control tokens:
* **Trigger Thinking:** Thinking is enabled by including the `<|think|>` token at the start of the system prompt. To disable thinking, remove the token.
* **Standard Generation:** When thinking is enabled, the model will output its internal reasoning followed by the final answer using this structure:
`<|channel>thought\n`**[Internal reasoning]**`<channel|>`
* **Disabled Thinking Behavior:** For all models except for the E2B and E4B variants, if thinking is disabled, the model will still generate the tags but with an empty thought block:
`<|channel>thought\n<channel|>`**[Final answer]**
> [!Note]
> Note that many libraries like Transformers and llama.cpp handle the complexities of the chat template for you.
### 3. Multi-Turn Conversations
* **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final response. Thoughts from previous model turns must *not be added* before the next user turn begins.
### 4. Modality order
For optimal performance with multimodal inputs, place:
* Image content **before** the text in your prompt.
* Audio content **after** the text in your prompt.
### 5. Variable Image Resolution
Aside from variable aspect ratios, Gemma 4 supports variable image resolution through a configurable visual token budget, which controls how many tokens are used to represent an image. A higher token budget preserves more visual detail at the cost of additional compute, while a lower budget enables faster inference for tasks that don't require fine-grained understanding.
* The supported token budgets are: **70**, **140**, **280**, **560**, and **1120**.
* Use *lower budgets* for classification, captioning, or video understanding, where faster inference and processing many frames outweigh fine-grained detail.
* Use *higher budgets* for tasks like OCR, document parsing, or reading small text.
### 6. Audio
Use the following prompt structures for audio processing:
* **Audio Speech Recognition (ASR)**
```text
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text.
Follow these specific instructions for formatting the answer:
* Only output the transcription, with no newlines.
* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
```
* **Automatic Speech Translation (AST)**
```text
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.
When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
```
### 7. Audio and Video Length
All models support image inputs and can process videos as frames whereas the E2B, E4B, and 12B models also support audio inputs. Audio supports a maximum length of 30 seconds. Video supports a maximum of 60 seconds assuming the images are processed at one frame per second.
## **Model Data**
Data used for model training and how the data was processed.
### **Training Dataset**
Our pre-training dataset is a large-scale, diverse collection of data encompassing a wide range of domains and modalities, which includes web documents, code, images, audio, with a cutoff date of January 2025. Here are the key components:
* **Web Documents**: A diverse collection of web text ensures the model is exposed to a broad range of linguistic styles, topics, and vocabulary. The training dataset includes content in over 140 languages.
* **Code**: Exposing the model to code helps it to learn the syntax and patterns of programming languages, which improves its ability to generate code and understand code-related questions.
* **Mathematics**: Training on mathematical text helps the model learn logical reasoning, symbolic representation, and to address mathematical queries.
* **Images**: A wide range of images enables the model to perform image analysis and visual data extraction tasks.
The combination of these diverse data sources is crucial for training a powerful multimodal model that can handle a wide variety of different tasks and data formats.
### **Data Preprocessing**
Here are the key data cleaning and filtering methods applied to the training data:
* **CSAM Filtering**: Rigorous CSAM (Child Sexual Abuse Material) filtering was applied at multiple stages in the data preparation process to ensure the exclusion of harmful and illegal content.
* **Sensitive Data Filtering**: As part of making Gemma pre-trained models safe and reliable, automated techniques were used to filter out certain personal information and other sensitive data from training sets.
* **Additional methods**: Filtering based on content quality and safety in line with [our policies](https://ai.google/static/documents/ai-responsibility-update-published-february-2025.pdf).
## **Ethics and Safety**
As open models become central to enterprise infrastructure, provenance and security are paramount. Developed by Google DeepMind, Gemma 4 undergoes the same rigorous safety evaluations as our proprietary Gemini models.
### **Evaluation Approach**
Gemma 4 models were developed in partnership with internal safety and responsible AI teams. A range of automated as well as human evaluations were conducted to help improve model safety. These evaluations align with [Googles AI principles](https://ai.google/principles/), as well as safety policies, which aim to prevent our generative AI models from generating harmful content, including:
* Content related to child sexual abuse material and exploitation
* Dangerous content (e.g., promoting suicide, or instructing in activities that could cause real-world harm)
* Sexually explicit content
* Hate speech (e.g., dehumanizing members of protected groups)
* Harassment (e.g., encouraging violence against people)
### **Evaluation Results**
For all areas of safety testing, we saw major improvements in all categories of content safety relative to previous Gemma models. Overall, Gemma 4 models significantly outperform Gemma 3 and 3n models in improving safety, while keeping unjustified refusals low. All testing was conducted without safety filters to evaluate the model capabilities and behaviors. For both text-to-text and image-to-text, and across all model sizes, the model produced minimal policy violations, and showed significant improvements over previous Gemma models' performance.
## **Usage and Limitations**
These models have certain limitations that users should be aware of.
### **Intended Usage**
Multimodal models (capable of processing vision, language, and/or audio) have a wide range of applications across various industries and domains. The following list of potential uses is not comprehensive. The purpose of this list is to provide contextual information about the possible use-cases that the model creators considered as part of model training and development.
* **Content Creation and Communication**
* **Text Generation**: These models can be used to generate creative text formats such as poems, scripts, code, marketing copy, and email drafts.
* **Chatbots and Conversational AI**: Power conversational interfaces for customer service, virtual assistants, or interactive applications.
* **Text Summarization**: Generate concise summaries of a text corpus, research papers, or reports.
* **Image Data Extraction**: These models can be used to extract, interpret, and summarize visual data for text communications.
* **Audio Processing and Interaction**: The E2B, E4B, and 12B models can analyze and interpret audio inputs, enabling voice-driven interactions and transcriptions.
* **Research and Education**
* **Natural Language Processing (NLP) and VLM Research**: These models can serve as a foundation for researchers to experiment with VLM and NLP techniques, develop algorithms, and contribute to the advancement of the field.
* **Language Learning Tools**: Support interactive language learning experiences, aiding in grammar correction or providing writing practice.
* **Knowledge Exploration**: Assist researchers in exploring large bodies of text by generating summaries or answering questions about specific topics.
### **Limitations**
* **Training Data**
* The quality and diversity of the training data significantly influence the model's capabilities. Biases or gaps in the training data can lead to limitations in the model's responses.
* The scope of the training dataset determines the subject areas the model can handle effectively.
* **Context and Task Complexity**
* Models perform well on tasks that can be framed with clear prompts and instructions. Open-ended or highly complex tasks might be challenging.
* A model's performance can be influenced by the amount of context provided (longer context generally leads to better outputs, up to a certain point).
* **Language Ambiguity and Nuance**
* Natural language is inherently complex. Models might struggle to grasp subtle nuances, sarcasm, or figurative language.
* **Factual Accuracy**
* Models generate responses based on information they learned from their training datasets, but they are not knowledge bases. They may generate incorrect or outdated factual statements.
* **Common Sense**
* Models rely on statistical patterns in language. They might lack the ability to apply common sense reasoning in certain situations.
### **Ethical Considerations and Risks**
The development of vision-language models (VLMs) raises several ethical concerns. In creating an open model, we have carefully considered the following:
* **Bias and Fairness**
* VLMs trained on large-scale, real-world text and image data can reflect socio-cultural biases embedded in the training material. Gemma 4 models underwent careful scrutiny, input data pre-processing, and post-training evaluations as reported in this card to help mitigate the risk of these biases.
* **Misinformation and Misuse**
* VLMs can be misused to generate text that is false, misleading, or harmful.
* Guidelines are provided for responsible use with the model, see the [Responsible Generative AI Toolkit](https://ai.google.dev/responsible).
* **Transparency and Accountability**
* This model card summarizes details on the models' architecture, capabilities, limitations, and evaluation processes.
* A responsibly developed open model offers the opportunity to share innovation by making VLM technology accessible to developers and researchers across the AI ecosystem.
**Risks identified and mitigations**:
* **Generation of harmful content**: Mechanisms and guidelines for content safety are essential. Developers are encouraged to exercise caution and implement appropriate content safety safeguards based on their specific product policies and application use cases.
* **Misuse for malicious purposes**: Technical limitations and developer and end-user education can help mitigate against malicious applications of VLMs. Educational resources and reporting mechanisms for users to flag misuse are provided.
* **Privacy violations**: Models were trained on data filtered for removal of certain personal information and other sensitive data. Developers are encouraged to adhere to privacy regulations with privacy-preserving techniques.
* **Perpetuation of biases**: It's encouraged to perform continuous monitoring (using evaluation metrics, human review) and the exploration of de-biasing techniques during model training, fine-tuning, and other use cases.
### **Benefits**
At the time of release, this family of models provides high-performance open vision-language model implementations designed from the ground up for responsible AI development compared to similarly sized models.
## Running with llama.cpp (text, vision, and audio)
This is an omni GGUF, so the same files handle text, images, and audio. Grab any recent stock [llama.cpp](https://github.com/ggml-org/llama.cpp/releases) build and start the server. The multimodal projector (mmproj) is downloaded automatically when you use `-hf`, so you do not need to pass it yourself:
```bash
llama-server -hf unsloth/gemma-4-12b-it-GGUF:UD-Q4_K_XL --jinja -c 8192
# add -ngl 999 if you have a GPU build
```
Then query it through the OpenAI compatible API:
```python
import json, base64, urllib.request
def ask(content, max_tokens=256):
body = {
"messages": [{"role": "user", "content": content}],
"max_tokens": max_tokens,
# Gemma 4 is a thinking model. Set this to False (or raise max_tokens),
# otherwise the reply lands in reasoning_content and "content" is empty.
"chat_template_kwargs": {"enable_thinking": False},
}
req = urllib.request.Request("http://127.0.0.1:8080/v1/chat/completions",
json.dumps(body).encode(),
{"Content-Type": "application/json"})
return json.loads(urllib.request.urlopen(req).read())["choices"][0]["message"]["content"]
b64 = lambda p: base64.b64encode(open(p, "rb").read()).decode()
# Text
print(ask("What is 1+1?"))
# Vision (any image file)
print(ask([
{"type": "text", "text": "What is in this image?"},
{"type": "image_url", "image_url": {"url": "data:image/jpeg;base64," + b64("image.jpg")}},
]))
# Audio (16 kHz mono WAV works best)
print(ask([
{"type": "text", "text": "Transcribe this audio."},
{"type": "input_audio", "input_audio": {"data": b64("audio.wav"), "format": "wav"}},
]))
```
Tips:
- Pass `--jinja` so the Gemma 4 chat template is applied.
- For audio, feed a 16 kHz mono WAV (convert with `ffmpeg -i in.mp3 -ar 16000 -ac 1 out.wav`). Clean speech transcribes best.
- To force a specific projector precision add `--mmproj-url .../mmproj-F16.gguf`, or pass `--no-mmproj` to disable multimodal.

Binary file not shown.

BIN
chat/gguf/unsloth/gemma-4-12b-it-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,546 @@
---
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
pipeline_tag: image-text-to-text
base_model: google/gemma-4-26B-A4B-it
tags:
- gemma4
- unsloth
- gemma
- google
---
# Read our How to [Run Gemma 4 Guide!](https://docs.unsloth.ai/models/gemma-4)
<div>
<p style="margin: 0 0 0px 0; margin-top: 0px;">
<em>See <a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0 GGUFs</a> for our quantization benchmarks.</em>
</p>
<div style="display: flex; gap: 5px; align-items: center; margin-bottom: 0px;">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/gemma-4">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
<ul style="margin: 0;">
<li><b>Jun 9 Update:</b> Added MTP support. See our <a href="https://unsloth.ai/docs/models/mtp">MTP Guide</a>.</li>
<li><b>Apr 11 Update:</b> Re-download for Google's latest chat template and llama.cpp fixes.</li>
<li>Gemma 4 can now be run and fine-tuned in <a href="https://unsloth.ai/docs/new/studio">Unsloth Studio</a>. <a href="https://unsloth.ai/docs/models/gemma-4">Read our guide</a>.</li>
<li>See all versions of Gemma 4 (GGUF, 16-bit etc.) <a href="https://huggingface.co/collections/unsloth/gemma-4">in our collection</a>.</li>
<li>Example of Gemma 4 E4B (4-bit GGUF) running in Unsloth Studio with tool-calling:</li>
</ul>
</div>
<img width="600" alt="gemma 4 in unsloth studio" src="https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/BTmv3pr-QQ8ZMxxX3Ofnf.gif" />
---
<div align="center">
<img src=https://ai.google.dev/gemma/images/gemma4_banner.png>
</div>
<p align="center">
<a href="https://huggingface.co/collections/google/gemma-4" target="_blank">Hugging Face</a> |
<a href="https://github.com/google-gemma" target="_blank">GitHub</a> |
<a href="https://blog.google/innovation-and-ai/technology/developers-tools/gemma-4/" target="_blank">Launch Blog</a> |
<a href="https://ai.google.dev/gemma/docs/core" target="_blank">Documentation</a>
<br>
<b>License</b>: <a href="https://ai.google.dev/gemma/docs/gemma_4_license" target="_blank">Apache 2.0</a> | <b>Authors</b>: <a href="https://deepmind.google/models/gemma/" target="_blank">Google DeepMind</a>
</p>
Gemma is a family of open models built by Google DeepMind. Gemma 4 models are multimodal, handling text and image input (with audio supported on small models) and generating text output. This release includes open-weights models in both pre-trained and instruction-tuned variants. Gemma 4 features a context window of up to 256K tokens and maintains multilingual support in over 140 languages.
Featuring both Dense and Mixture-of-Experts (MoE) architectures, Gemma 4 is well-suited for tasks like text generation, coding, and reasoning. The models are available in four distinct sizes: **E2B**, **E4B**, **26B A4B**, and **31B**. Their diverse sizes make them deployable in environments ranging from high-end phones to laptops and servers, democratizing access to state-of-the-art AI.
Gemma 4 introduces key **capability and architectural advancements**:
* **Reasoning** All models in the family are designed as highly capable reasoners, with configurable thinking modes.
* **Extended Multimodalities** Processes Text, Image with variable aspect ratio and resolution support (all models), Video, and Audio (featured natively on the E2B and E4B models).
* **Diverse & Efficient Architectures** Offers Dense and Mixture-of-Experts (MoE) variants of different sizes for scalable deployment.
* **Optimized for On-Device** Smaller models are specifically designed for efficient local execution on laptops and mobile devices.
* **Increased Context Window** The small models feature a 128K context window, while the medium models support 256K.
* **Enhanced Coding & Agentic Capabilities** Achieves notable improvements in coding benchmarks alongside native function-calling support, powering highly capable autonomous agents.
* **Native System Prompt Support** Gemma 4 introduces native support for the `system` role, enabling more structured and controllable conversations.
## **Models Overview**
Gemma 4 models are designed to deliver frontier-level performance at each size, targeting deployment scenarios from mobile and edge devices (E2B, E4B) to consumer GPUs and workstations (26B A4B, 31B). They are well-suited for reasoning, agentic workflows, coding, and multimodal understanding.
The models employ a hybrid attention mechanism that interleaves local sliding window attention with full global attention, ensuring the final layer is always global. This hybrid design delivers the processing speed and low memory footprint of a lightweight model without sacrificing the deep awareness required for complex, long-context tasks. To optimize memory for long contexts, global layers feature unified Keys and Values, and apply Proportional RoPE (p-RoPE).
### Dense Models
| Property | E2B | E4B | 31B Dense |
| :---- | :---- | :---- | :---- |
| **Total Parameters** | 2.3B effective (5.1B with embeddings) | 4.5B effective (8B with embeddings) | 30.7B |
| **Layers** | 35 | 42 | 60 |
| **Sliding Window** | 512 tokens | 512 tokens | 1024 tokens |
| **Context Length** | 128K tokens | 128K tokens | 256K tokens |
| **Vocabulary Size** | 262K | 262K | 262K |
| **Supported Modalities** | Text, Image, Audio | Text, Image, Audio | Text, Image |
| **Vision Encoder Parameters** | *~150M* | *~150M* | *~550M* |
| **Audio Encoder Parameters** | *~300M* | *~300M* | No Audio |
The "E" in E2B and E4B stands for "effective" parameters. The smaller models incorporate Per-Layer Embeddings (PLE) to maximize parameter efficiency in on-device deployments. Rather than adding more layers or parameters to the model, PLE gives each decoder layer its own small embedding for every token. These embedding tables are large but are only used for quick lookups, which is why the effective parameter count is much smaller than the total.
### Mixture-of-Experts (MoE) Model
| Property | 26B A4B MoE |
| :---- | :---- |
| **Total Parameters** | 25.2B |
| **Active Parameters** | 3.8B |
| **Layers** | 30 |
| **Sliding Window** | 1024 tokens |
| **Context Length** | 256K tokens |
| **Vocabulary Size** | 262K |
| **Expert Count** | 8 active / 128 total and 1 shared |
| **Supported Modalities** | Text, Image |
| **Vision Encoder Parameters** | *~550M* |
The "A" in 26B A4B stands for "active parameters" in contrast to the total number of parameters the model contains. By only activating a 4B subset of parameters during inference, the Mixture-of-Experts model runs much faster than its 26B total might suggest. This makes it an excellent choice for fast inference compared to the dense 31B model since it runs almost as fast as a 4B-parameter model.
## **Benchmark Results**
These models were evaluated against a large collection of different datasets and metrics to cover different aspects of text generation. Evaluation results marked in the table are for instruction-tuned models.
| | Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (no think) |
| :---- | :---- | :---- | :---- | :---- | :---- |
| MMLU Pro | 85.2% | 82.6% | 69.4% | 60.0% | 67.6% |
| AIME 2026 no tools | 89.2% | 88.3% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 58.6% | 43.4% | 42.4% |
| Tau2 (average over 3) | 76.9% | 68.2% | 42.2% | 24.5% | 16.2% |
| HLE no tools | 19.5% | 8.7% | - | - | - |
| HLE with search | 26.5% | 17.2% | - | - | - |
| BigBench Extra Hard | 74.4% | 64.8% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 76.6% | 67.4% | 70.7% |
| **Vision** | | | | | |
| MMMU Pro | 76.9% | 73.8% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (average edit distance, lower is better) | 0.131 | 0.149 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 28.7% | 23.5% | - |
| **Audio** | | | | | |
| CoVoST | - | - | 35.54 | 33.47 | - |
| FLEURS (lower is better) | - | - | 0.08 | 0.09 | - |
| **Long Context** | | | | | |
| MRCR v2 8 needle 128k (average) | 66.4% | 44.1% | 25.4% | 19.1% | 13.5% |
## **Core Capabilities**
Gemma 4 models handle a broad range of tasks across text, vision, and audio. Key capabilities include:
* **Thinking** Built-in reasoning mode that lets the model think step-by-step before answering.
* **Long Context** Context windows of up to 128K tokens (E2B/E4B) and 256K tokens (26B A4B/31B).
* **Image Understanding** Object detection, Document/PDF parsing, screen and UI understanding, chart comprehension, OCR (including multilingual), handwriting recognition, and pointing. Images can be processed at variable aspect ratios and resolutions.
* **Video Understanding** Analyze video by processing sequences of frames.
* **Interleaved Multimodal Input** Freely mix text and images in any order within a single prompt.
* **Function Calling** Native support for structured tool use, enabling agentic workflows.
* **Coding** Code generation, completion, and correction.
* **Multilingual** Out-of-the-box support for 35+ languages, pre-trained on 140+ languages.
* **Audio** (E2B and E4B only) Automatic speech recognition (ASR) and speech-to-translated-text translation across multiple languages.
## Getting Started
You can use all Gemma 4 models with the latest version of Transformers. To get started, install the necessary dependencies in your environment:
`pip install -U transformers torch accelerate`
Once you have everything installed, you can proceed to load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForCausalLM
MODEL_ID = "google/gemma-4-26B-A4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForCausalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output:
```python
# Prompt
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a short joke about saving RAM."},
]
# Process input
text = processor.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=False
)
inputs = processor(text=text, return_tensors="pt").to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
Below, you will also find snippets for processing audio (E2B and E4B only), images, and video alongside text:
<details>
<summary>Code for processing Audio</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process audio. To use it, make sure to install the following packages:
`pip install -U transformers torch librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-E2B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the audio URL in the prompt:
```python
# Prompt - add audio before text
messages = [
{
"role": "user",
"content": [
{"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/journal1.wav"},
{"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Images</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process images. To use it, make sure to install the following packages:
`pip install -U transformers torch torchvision accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-26B-A4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the image URL in the prompt:
```python
# Prompt - add image before text
messages = [
{
"role": "user", "content": [
{"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/GoldenGate.png"},
{"type": "text", "text": "What is shown in this image?"}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Videos</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process videos. To use it, make sure to install the following packages:
`pip install -U transformers torch torchvision torchcodec librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-26B-A4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the video URL in the prompt:
```python
# Prompt - add video before text
messages = [
{
'role': 'user',
'content': [
{"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
{'type': 'text', 'text': 'Describe this video.'}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
## **Best Practices**
For the best performance, use these configurations and best practices:
### 1. Sampling Parameters
Use the following standardized sampling configuration across all use cases:
* `temperature=1.0`
* `top_p=0.95`
* `top_k=64`
### 2. Thinking Mode Configuration
Compared to Gemma 3, the models use standard `system`, `assistant`, and `user` roles. To properly manage the thinking process, use the following control tokens:
* **Trigger Thinking:** Thinking is enabled by including the `<|think|>` token at the start of the system prompt. To disable thinking, remove the token.
* **Standard Generation:** When thinking is enabled, the model will output its internal reasoning followed by the final answer using this structure:
`<|channel>thought\n`**[Internal reasoning]**`<channel|>`
* **Disabled Thinking Behavior:** For all models except for the E2B and E4B variants, if thinking is disabled, the model will still generate the tags but with an empty thought block:
`<|channel>thought\n<channel|>`**[Final answer]**
> [!Note]
> Note that many libraries like Transformers and llama.cpp handle the complexities of the chat template for you.
### 3. Multi-Turn Conversations
* **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final response. Thoughts from previous model turns must *not be added* before the next user turn begins.
### 4. Modality order
* For optimal performance with multimodal inputs, place image and/or audio content **before** the text in your prompt.
### 5. Variable Image Resolution
Aside from variable aspect ratios, Gemma 4 supports variable image resolution through a configurable visual token budget, which controls how many tokens are used to represent an image. A higher token budget preserves more visual detail at the cost of additional compute, while a lower budget enables faster inference for tasks that don't require fine-grained understanding.
* The supported token budgets are: **70**, **140**, **280**, **560**, and **1120**.
* Use *lower budgets* for classification, captioning, or video understanding, where faster inference and processing many frames outweigh fine-grained detail.
* Use *higher budgets* for tasks like OCR, document parsing, or reading small text.
### 6. Audio
Use the following prompt structures for audio processing:
* **Audio Speech Recognition (ASR)**
```text
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text.
Follow these specific instructions for formatting the answer:
* Only output the transcription, with no newlines.
* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
```
* **Automatic Speech Translation (AST)**
```text
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.
When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
```
### 7. Audio and Video Length
All models support image inputs and can process videos as frames whereas the E2B and E4B models also support audio inputs. Audio supports a maximum length of 30 seconds. Video supports a maximum of 60 seconds assuming the images are processed at one frame per second.
## **Model Data**
Data used for model training and how the data was processed.
### **Training Dataset**
Our pre-training dataset is a large-scale, diverse collection of data encompassing a wide range of domains and modalities, which includes web documents, code, images, audio, with a cutoff date of January 2025. Here are the key components:
* **Web Documents**: A diverse collection of web text ensures the model is exposed to a broad range of linguistic styles, topics, and vocabulary. The training dataset includes content in over 140 languages.
* **Code**: Exposing the model to code helps it to learn the syntax and patterns of programming languages, which improves its ability to generate code and understand code-related questions.
* **Mathematics**: Training on mathematical text helps the model learn logical reasoning, symbolic representation, and to address mathematical queries.
* **Images**: A wide range of images enables the model to perform image analysis and visual data extraction tasks.
The combination of these diverse data sources is crucial for training a powerful multimodal model that can handle a wide variety of different tasks and data formats.
### **Data Preprocessing**
Here are the key data cleaning and filtering methods applied to the training data:
* **CSAM Filtering**: Rigorous CSAM (Child Sexual Abuse Material) filtering was applied at multiple stages in the data preparation process to ensure the exclusion of harmful and illegal content.
* **Sensitive Data Filtering**: As part of making Gemma pre-trained models safe and reliable, automated techniques were used to filter out certain personal information and other sensitive data from training sets.
* **Additional methods**: Filtering based on content quality and safety in line with [our policies](https://ai.google/static/documents/ai-responsibility-update-published-february-2025.pdf).
## **Ethics and Safety**
As open models become central to enterprise infrastructure, provenance and security are paramount. Developed by Google DeepMind, Gemma 4 undergoes the same rigorous safety evaluations as our proprietary Gemini models.
### **Evaluation Approach**
Gemma 4 models were developed in partnership with internal safety and responsible AI teams. A range of automated as well as human evaluations were conducted to help improve model safety. These evaluations align with [Googles AI principles](https://ai.google/principles/), as well as safety policies, which aim to prevent our generative AI models from generating harmful content, including:
* Content related to child sexual abuse material and exploitation
* Dangerous content (e.g., promoting suicide, or instructing in activities that could cause real-world harm)
* Sexually explicit content
* Hate speech (e.g., dehumanizing members of protected groups)
* Harassment (e.g., encouraging violence against people)
### **Evaluation Results**
For all areas of safety testing, we saw major improvements in all categories of content safety relative to previous Gemma models. Overall, Gemma 4 models significantly outperform Gemma 3 and 3n models in improving safety, while keeping unjustified refusals low. All testing was conducted without safety filters to evaluate the model capabilities and behaviors. For both text-to-text and image-to-text, and across all model sizes, the model produced minimal policy violations, and showed significant improvements over previous Gemma models' performance.
## **Usage and Limitations**
These models have certain limitations that users should be aware of.
### **Intended Usage**
Multimodal models (capable of processing vision, language, and/or audio) have a wide range of applications across various industries and domains. The following list of potential uses is not comprehensive. The purpose of this list is to provide contextual information about the possible use-cases that the model creators considered as part of model training and development.
* **Content Creation and Communication**
* **Text Generation**: These models can be used to generate creative text formats such as poems, scripts, code, marketing copy, and email drafts.
* **Chatbots and Conversational AI**: Power conversational interfaces for customer service, virtual assistants, or interactive applications.
* **Text Summarization**: Generate concise summaries of a text corpus, research papers, or reports.
* **Image Data Extraction**: These models can be used to extract, interpret, and summarize visual data for text communications.
* **Audio Processing and Interaction**: The smaller models (E2B and E4B) can analyze and interpret audio inputs, enabling voice-driven interactions and transcriptions.
* **Research and Education**
* **Natural Language Processing (NLP) and VLM Research**: These models can serve as a foundation for researchers to experiment with VLM and NLP techniques, develop algorithms, and contribute to the advancement of the field.
* **Language Learning Tools**: Support interactive language learning experiences, aiding in grammar correction or providing writing practice.
* **Knowledge Exploration**: Assist researchers in exploring large bodies of text by generating summaries or answering questions about specific topics.
### **Limitations**
* **Training Data**
* The quality and diversity of the training data significantly influence the model's capabilities. Biases or gaps in the training data can lead to limitations in the model's responses.
* The scope of the training dataset determines the subject areas the model can handle effectively.
* **Context and Task Complexity**
* Models perform well on tasks that can be framed with clear prompts and instructions. Open-ended or highly complex tasks might be challenging.
* A model's performance can be influenced by the amount of context provided (longer context generally leads to better outputs, up to a certain point).
* **Language Ambiguity and Nuance**
* Natural language is inherently complex. Models might struggle to grasp subtle nuances, sarcasm, or figurative language.
* **Factual Accuracy**
* Models generate responses based on information they learned from their training datasets, but they are not knowledge bases. They may generate incorrect or outdated factual statements.
* **Common Sense**
* Models rely on statistical patterns in language. They might lack the ability to apply common sense reasoning in certain situations.
### **Ethical Considerations and Risks**
The development of vision-language models (VLMs) raises several ethical concerns. In creating an open model, we have carefully considered the following:
* **Bias and Fairness**
* VLMs trained on large-scale, real-world text and image data can reflect socio-cultural biases embedded in the training material. Gemma 4 models underwent careful scrutiny, input data pre-processing, and post-training evaluations as reported in this card to help mitigate the risk of these biases.
* **Misinformation and Misuse**
* VLMs can be misused to generate text that is false, misleading, or harmful.
* Guidelines are provided for responsible use with the model, see the [Responsible Generative AI Toolkit](https://ai.google.dev/responsible).
* **Transparency and Accountability**
* This model card summarizes details on the models' architecture, capabilities, limitations, and evaluation processes.
* A responsibly developed open model offers the opportunity to share innovation by making VLM technology accessible to developers and researchers across the AI ecosystem.
**Risks identified and mitigations**:
* **Generation of harmful content**: Mechanisms and guidelines for content safety are essential. Developers are encouraged to exercise caution and implement appropriate content safety safeguards based on their specific product policies and application use cases.
* **Misuse for malicious purposes**: Technical limitations and developer and end-user education can help mitigate against malicious applications of VLMs. Educational resources and reporting mechanisms for users to flag misuse are provided.
* **Privacy violations**: Models were trained on data filtered for removal of certain personal information and other sensitive data. Developers are encouraged to adhere to privacy regulations with privacy-preserving techniques.
* **Perpetuation of biases**: It's encouraged to perform continuous monitoring (using evaluation metrics, human review) and the exploration of de-biasing techniques during model training, fine-tuning, and other use cases.
### **Benefits**
At the time of release, this family of models provides high-performance open vision-language model implementations designed from the ground up for responsible AI development compared to similarly sized models.

View file

@ -0,0 +1,145 @@
{
"architectures": [
"Gemma4ForConditionalGeneration"
],
"audio_config": null,
"audio_token_id": 258881,
"boa_token_id": 256000,
"boi_token_id": 255999,
"torch_dtype": "bfloat16",
"eoa_token_id": 258883,
"eoa_token_index": 258883,
"eoi_token_id": 258882,
"eos_token_id": 106,
"image_token_id": 258880,
"initializer_range": 0.02,
"model_type": "gemma4",
"pad_token_id": 0,
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attention_k_eq_v": true,
"bos_token_id": 2,
"torch_dtype": "bfloat16",
"enable_moe_block": true,
"eos_token_id": 1,
"final_logit_softcapping": 30.0,
"global_head_dim": 512,
"head_dim": 256,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 2816,
"hidden_size_per_layer_input": 0,
"initializer_range": 0.02,
"intermediate_size": 2112,
"layer_types": [
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention"
],
"max_position_embeddings": 262144,
"model_type": "gemma4_text",
"moe_intermediate_size": 704,
"num_attention_heads": 16,
"num_experts": 128,
"num_global_key_value_heads": 2,
"num_hidden_layers": 30,
"num_key_value_heads": 8,
"num_kv_shared_layers": 0,
"pad_token_id": 0,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"full_attention": {
"partial_rotary_factor": 0.25,
"rope_theta": 1000000.0,
"rope_type": "proportional"
},
"sliding_attention": {
"rope_theta": 10000.0,
"rope_type": "default"
}
},
"sliding_window": 1024,
"tie_word_embeddings": true,
"top_k_experts": 8,
"use_bidirectional_attention": "vision",
"use_cache": true,
"use_double_wide_mlp": false,
"vocab_size": 262144,
"vocab_size_per_layer_input": 262144
},
"tie_word_embeddings": true,
"transformers_version": "5.5.0.dev0",
"unsloth_fixed": true,
"video_token_id": 258884,
"vision_config": {
"_name_or_path": "",
"architectures": null,
"attention_bias": false,
"attention_dropout": 0.0,
"chunk_size_feed_forward": 0,
"default_output_length": 280,
"torch_dtype": "bfloat16",
"global_head_dim": 72,
"head_dim": 72,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 1152,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"intermediate_size": 4304,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"max_position_embeddings": 131072,
"model_type": "gemma4_vision",
"num_attention_heads": 16,
"num_hidden_layers": 27,
"num_key_value_heads": 16,
"output_attentions": false,
"output_hidden_states": false,
"patch_size": 16,
"pooling_kernel_size": 3,
"position_embedding_size": 10240,
"problem_type": null,
"return_dict": true,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"rope_theta": 100.0,
"rope_type": "default"
},
"standardize": true,
"use_clipped_linears": false
},
"vision_soft_tokens_per_image": 280
}

Binary file not shown.

BIN
chat/gguf/unsloth/gemma-4-26B-A4B-it-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,578 @@
---
library_name: transformers
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
pipeline_tag: any-to-any
base_model: google/gemma-4-E2B-it-qat-mobile-transformers
tags:
- gemma4
- unsloth
- gemma
- google
---
# Read our How to [Run Gemma 4 QAT Guide!](https://unsloth.ai/docs/models/gemma-4/qat)
<div>
<p style="margin: 0 0 0px 0; margin-top: 0px;">
<em>See <a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0 GGUFs</a> for our quantization benchmarks.</em>
</p>
<div style="display: flex; gap: 5px; align-items: center; margin-bottom: 0px;">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/gemma-4">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
<ul style="margin: 0;">
<li><b>Jun 9 Update:</b> Added MTP support. See our <a href="https://unsloth.ai/docs/models/mtp">MTP Guide</a>.</li>
<li>Gemma 4 can now be run and fine-tuned in <a href="https://unsloth.ai/docs/new/studio">Unsloth Studio</a>. <a href="https://unsloth.ai/docs/models/gemma-4">Read our guide</a>.</li>
<li>See all versions of Gemma 4 QAT (GGUF, 16-bit etc.) <a href="https://huggingface.co/collections/unsloth/gemma-4-qat">in our collection</a>.</li>
<li>Example of Gemma 4 E4B (4-bit GGUF) running in Unsloth Studio with tool-calling:</li>
</ul>
</div>
<img width="600" alt="gemma 4 in unsloth studio" src="https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/BTmv3pr-QQ8ZMxxX3Ofnf.gif" />
![image](https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/2zCR4ZmVXSTqKaj7vNIYo.png)
## Run with MTP (speculative decoding)
This model ships a Multi-Token Prediction drafter at the repo root (`mtp-gemma-4-E2B-it.gguf`, a near-lossless smart Q4_0). A recent llama.cpp auto-discovers it from `-hf`, so you do not pass `--model-draft`:
```bash
./build/bin/llama-server \
-hf unsloth/gemma-4-E2B-it-qat-mobile-GGUF:UD-Q2_K_XL \
--spec-type draft-mtp --spec-draft-n-max 4 \
-ngl 999 -fa on
```
The drafter shares the target's KV cache and does not change the output (the target verifies every drafted token). See the `MTP/` folder for the other precisions and explicit usage.
<div align="center">
<img src=https://ai.google.dev/gemma/images/gemma4_banner.png>
</div>
<p align="center">
<a href="https://huggingface.co/collections/google/gemma-4" target="_blank">Hugging Face</a> |
<a href="https://github.com/google-gemma" target="_blank">GitHub</a> |
<a href="https://blog.google/innovation-and-ai/technology/developers-tools/introducing-gemma-4-12B/" target="_blank">Launch Blog</a> |
<a href="https://ai.google.dev/gemma/docs/core" target="_blank">Documentation</a>
<br>
<b>License</b>: <a href="https://ai.google.dev/gemma/docs/gemma_4_license" target="_blank">Apache 2.0</a> | <b>Authors</b>: <a href="https://deepmind.google/models/gemma/" target="_blank">Google DeepMind</a>
</p>
> [!Note]
> This model card is for the new versions of the Gemma 4 family optimized with Quantization-Aware Training (QAT), which allows preserving similar quality to bfloat16 while dramatically reducing the memory requirements to load the model.
> Four versions of the QAT checkpoints are available:
> * **Unquantized QAT checkpoints** (Q4_0): Half-precision weights extracted from the QAT pipeline, ideal for custom downstream compilation and research. Available for Gemma 4 E2B, E4B, 12B, 26B A4B, and 31B, and their drafter models.
> * **GGUF** (Q4_0): Ready-to-deploy formats for broad ecosystem compatibility. Available for Gemma 4 E2B, E4B, 12B, 26B A4B, and 31B.
> * **Mobile-optimized** (wNa8o8): A custom schema engineered explicitly for mobile hardware efficiency. It features targeted 2-bit decoding layers, optimized KV caches, and static activations to maximize VRAM savings. Available for Gemma 4 E2B and E4B.
> * **Compressed Tensors** (w4a16): QAT checkpoints serialized in the compressed-tensors format for native, optimized inference with vLLM. Available for Gemma 4 E2B, E4B, 12B, and 31B.
Gemma is a family of open models built by Google DeepMind. Gemma 4 models are multimodal, handling text and image input (with audio supported on E2B, E4B, and 12B) and generating text output. This release includes open-weights models in both pre-trained and instruction-tuned variants. Gemma 4 features a context window of up to 256K tokens and maintains multilingual support in over 140 languages.
Featuring both Dense and Mixture-of-Experts (MoE) architectures, Gemma 4 is well-suited for tasks like text generation, coding, and reasoning. The models are available in five distinct sizes: **E2B**, **E4B**, **12B**, **26B A4B**, and **31B**. Their diverse sizes make them deployable in environments ranging from high-end phones to laptops and servers, democratizing access to state-of-the-art AI.
Gemma 4 introduces key **capability and architectural advancements**:
* **Reasoning** All models in the family are designed as highly capable reasoners, with configurable thinking modes.
* **Extended Multimodalities** Processes Text, Image with variable aspect ratio and resolution support (all models), Video, and Audio (featured natively on the E2B, E4B, and 12B models).
* **Diverse & Efficient Architectures** Offers Dense and Mixture-of-Experts (MoE) variants of different sizes for scalable deployment.
* **Optimized for On-Device** Smaller models are specifically designed for efficient local execution on laptops and mobile devices.
* **Increased Context Window** The small models feature a 128K context window, while the medium models support 256K.
* **Enhanced Coding & Agentic Capabilities** Achieves notable improvements in coding benchmarks alongside native function-calling support, powering highly capable autonomous agents.
* **Native System Prompt Support** Gemma 4 introduces native support for the `system` role, enabling more structured and controllable conversations.
## **Models Overview**
Gemma 4 models are designed to deliver frontier-level performance at each size, targeting deployment scenarios from mobile and edge devices (E2B, E4B) to consumer GPUs and workstations (12B, 26B A4B, 31B). They are well-suited for reasoning, agentic workflows, coding, and multimodal understanding.
The models employ a hybrid attention mechanism that interleaves local sliding window attention with full global attention, ensuring the final layer is always global. This hybrid design delivers the processing speed and low memory footprint of a lightweight model without sacrificing the deep awareness required for complex, long-context tasks. To optimize memory for long contexts, global layers feature unified Keys and Values, and apply Proportional RoPE (p-RoPE).
### Dense Models
| Property | E2B | E4B | 12B Unified | 31B Dense |
| :---- | :---- | :---- | :---- | :---- |
| **Total Parameters** | 2.3B effective <br> (5.1B with embeddings) | 4.5B effective <br> (8B with embeddings) | 11.95B | 30.7B |
| **Layers** | 35 | 42 | 48 | 60 |
| **Sliding Window** | 512 tokens | 512 tokens | 1024 tokens | 1024 tokens |
| **Context Length** | 128K tokens | 128K tokens | 256K tokens | 256K tokens |
| **Vocabulary Size** | 262K | 262K | 262K | 262K |
| **Supported Modalities** | Text, Image, Audio | Text, Image, Audio | Text, Image, Audio | Text, Image |
| **Vision Encoder Parameters** | *~150M* | *~150M* | - | *~550M* |
| **Audio Encoder Parameters** | *~300M* | *~300M* | - | No Audio |
The "E" in E2B and E4B stands for "effective" parameters. The smaller models incorporate Per-Layer Embeddings (PLE) to maximize parameter efficiency in on-device deployments. Rather than adding more layers or parameters to the model, PLE gives each decoder layer its own small embedding for every token. These embedding tables are large but are only used for quick lookups, which is why the effective parameter count is much smaller than the total.
The "Unified" in Gemma 4 12B Unified refers to its encoder-free architecture. Other Gemma 4 models use dedicated encoders to process multimodal data before passing it to the LLM. Gemma 4 12B eliminates these encoders entirely, projecting raw image patches and audio waveforms directly into the LLM's embedding space through lightweight linear layers. This unified approach means all modalities flow straight into a single decoder-only transformer, reducing multimodal latency and allowing the entire model to be fine-tuned in one pass.
### Mixture-of-Experts (MoE) Model
| Property | 26B A4B MoE |
| :---- | :---- |
| **Total Parameters** | 25.2B |
| **Active Parameters** | 3.8B |
| **Layers** | 30 |
| **Sliding Window** | 1024 tokens |
| **Context Length** | 256K tokens |
| **Vocabulary Size** | 262K |
| **Expert Count** | 8 active / 128 total and 1 shared |
| **Supported Modalities** | Text, Image |
| **Vision Encoder Parameters** | *~550M* |
The "A" in 26B A4B stands for "active parameters" in contrast to the total number of parameters the model contains. By only activating a 4B subset of parameters during inference, the Mixture-of-Experts model runs much faster than its 26B total might suggest. This makes it an excellent choice for fast inference compared to the dense 31B model since it runs almost as fast as a 4B-parameter model.
## **Benchmark Results**
These models were evaluated against a large collection of different datasets and metrics to cover different aspects of text generation. Evaluation results marked in the table are for instruction-tuned models.
| | Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 12B Unified | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (no think) |
| :---- | :---- | :---- | :---- | :---- | :---- | :---- |
| MMLU Pro | 85.2% | 82.6% | 77.2% | 69.4% | 60.0% | 67.6% |
| AIME 2026 no tools | 89.2% | 88.3% | 77.5% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 72.0% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 1659 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 78.8% | 58.6% | 43.4% | 42.4% |
| Tau2 (average over 3) | 76.9% | 68.2% | 69.0% | 42.2% | 24.5% | 16.2% |
| HLE no tools | 19.5% | 8.7% | 5.2% | - | - | - |
| HLE with search | 26.5% | 17.2% | - | - | - | - |
| BigBench Extra Hard | 74.4% | 64.8% | 53.0% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 83.4% | 76.6% | 67.4% | 70.7% |
| **Vision** | | | | | | |
| MMMU Pro | 76.9% | 73.8% | 69.1% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (average edit distance, lower is better) | 0.131 | 0.149 | 0.164 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 79.7% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 48.7% | 28.7% | 23.5% | - |
| **Audio** | | | | | | |
| CoVoST | - | - | 38.5<sup>*</sup> | 35.54 | 33.47 | - |
| FLEURS (lower is better) | - | - | 0.069<sup>*</sup> | 0.08 | 0.09 | - |
| **Long Context** | | | | | | |
| MRCR v2 8 needle 128k (average) | 66.4% | 44.1% | 43.4% | 25.4% | 19.1% | 13.5% |
<sup>*</sup>Excluding Chinese language.
## **Core Capabilities**
Gemma 4 models handle a broad range of tasks across text, vision, and audio. Key capabilities include:
* **Thinking** Built-in reasoning mode that lets the model think step-by-step before answering.
* **Long Context** Context windows of up to 128K tokens (E2B/E4B) and 256K tokens (12B, 26B A4B/31B).
* **Image Understanding** Object detection, Document/PDF parsing, screen and UI understanding, chart comprehension, OCR (including multilingual), handwriting recognition, and pointing. Images can be processed at variable aspect ratios and resolutions.
* **Video Understanding** Analyze video by processing sequences of frames.
* **Interleaved Multimodal Input** Freely mix text and images in any order within a single prompt.
* **Function Calling** Native support for structured tool use, enabling agentic workflows.
* **Coding** Code generation, completion, and correction.
* **Multilingual** Out-of-the-box support for 35+ languages, pre-trained on 140+ languages.
* **Audio** (E2B, E4B, and 12B only) Automatic speech recognition (ASR) and speech-to-translated-text translation across multiple languages.
## Getting Started
You can use all Gemma 4 models with the latest version of Transformers. To get started, install the necessary dependencies in your environment:
`pip install -U transformers torch accelerate`
Once you have everything installed, you can proceed to load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output:
```python
# Prompt
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a short joke about saving RAM."},
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
enable_thinking=False
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
Below, you will also find snippets for processing audio (E2B, E4B, 12B only), images, and video alongside text:
<details>
<summary>Code for processing Audio</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the audio URL in the prompt:
```python
# Prompt - add audio after text
messages = [
{
"role": "user",
"content": [
{"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
{"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/journal1.wav"},
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Images</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the image URL in the prompt:
```python
# Prompt - add image before text
messages = [
{
"role": "user", "content": [
{"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/GoldenGate.png"},
{"type": "text", "text": "What is shown in this image?"}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Videos</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the video URL in the prompt:
```python
# Prompt - add video before text
messages = [
{
'role': 'user',
'content': [
{"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
{'type': 'text', 'text': 'Describe this video.'}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
## **Best Practices**
For the best performance, use these configurations and best practices:
### 1. Sampling Parameters
Use the following standardized sampling configuration across all use cases:
* `temperature=1.0`
* `top_p=0.95`
* `top_k=64`
### 2. Thinking Mode Configuration
Compared to Gemma 3, the models use standard `system`, `assistant`, and `user` roles. To properly manage the thinking process, use the following control tokens:
* **Trigger Thinking:** Thinking is enabled by including the `<|think|>` token at the start of the system prompt. To disable thinking, remove the token.
* **Standard Generation:** When thinking is enabled, the model will output its internal reasoning followed by the final answer using this structure:
`<|channel>thought\n`**[Internal reasoning]**`<channel|>`
* **Disabled Thinking Behavior:** For all models except for the E2B and E4B variants, if thinking is disabled, the model will still generate the tags but with an empty thought block:
`<|channel>thought\n<channel|>`**[Final answer]**
> [!Note]
> Note that many libraries like Transformers and llama.cpp handle the complexities of the chat template for you.
### 3. Multi-Turn Conversations
* **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final response. Thoughts from previous model turns must *not be added* before the next user turn begins.
### 4. Modality order
For optimal performance with multimodal inputs, place:
* Image content **before** the text in your prompt.
* Audio content **after** the text in your prompt.
### 5. Variable Image Resolution
Aside from variable aspect ratios, Gemma 4 supports variable image resolution through a configurable visual token budget, which controls how many tokens are used to represent an image. A higher token budget preserves more visual detail at the cost of additional compute, while a lower budget enables faster inference for tasks that don't require fine-grained understanding.
* The supported token budgets are: **70**, **140**, **280**, **560**, and **1120**.
* Use *lower budgets* for classification, captioning, or video understanding, where faster inference and processing many frames outweigh fine-grained detail.
* Use *higher budgets* for tasks like OCR, document parsing, or reading small text.
### 6. Audio
Use the following prompt structures for audio processing:
* **Audio Speech Recognition (ASR)**
```text
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text.
Follow these specific instructions for formatting the answer:
* Only output the transcription, with no newlines.
* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
```
* **Automatic Speech Translation (AST)**
```text
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.
When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
```
### 7. Audio and Video Length
All models support image inputs and can process videos as frames whereas the E2B, E4B, and 12B models also support audio inputs. Audio supports a maximum length of 30 seconds. Video supports a maximum of 60 seconds assuming the images are processed at one frame per second.
## **Model Data**
Data used for model training and how the data was processed.
### **Training Dataset**
Our pre-training dataset is a large-scale, diverse collection of data encompassing a wide range of domains and modalities, which includes web documents, code, images, audio, with a cutoff date of January 2025. Here are the key components:
* **Web Documents**: A diverse collection of web text ensures the model is exposed to a broad range of linguistic styles, topics, and vocabulary. The training dataset includes content in over 140 languages.
* **Code**: Exposing the model to code helps it to learn the syntax and patterns of programming languages, which improves its ability to generate code and understand code-related questions.
* **Mathematics**: Training on mathematical text helps the model learn logical reasoning, symbolic representation, and to address mathematical queries.
* **Images**: A wide range of images enables the model to perform image analysis and visual data extraction tasks.
The combination of these diverse data sources is crucial for training a powerful multimodal model that can handle a wide variety of different tasks and data formats.
### **Data Preprocessing**
Here are the key data cleaning and filtering methods applied to the training data:
* **CSAM Filtering**: Rigorous CSAM (Child Sexual Abuse Material) filtering was applied at multiple stages in the data preparation process to ensure the exclusion of harmful and illegal content.
* **Sensitive Data Filtering**: As part of making Gemma pre-trained models safe and reliable, automated techniques were used to filter out certain personal information and other sensitive data from training sets.
* **Additional methods**: Filtering based on content quality and safety in line with [our policies](https://ai.google/static/documents/ai-responsibility-update-published-february-2025.pdf).
## **Ethics and Safety**
As open models become central to enterprise infrastructure, provenance and security are paramount. Developed by Google DeepMind, Gemma 4 undergoes the same rigorous safety evaluations as our proprietary Gemini models.
### **Evaluation Approach**
Gemma 4 models were developed in partnership with internal safety and responsible AI teams. A range of automated as well as human evaluations were conducted to help improve model safety. These evaluations align with [Googles AI principles](https://ai.google/principles/), as well as safety policies, which aim to prevent our generative AI models from generating harmful content, including:
* Content related to child sexual abuse material and exploitation
* Dangerous content (e.g., promoting suicide, or instructing in activities that could cause real-world harm)
* Sexually explicit content
* Hate speech (e.g., dehumanizing members of protected groups)
* Harassment (e.g., encouraging violence against people)
### **Evaluation Results**
For all areas of safety testing, we saw major improvements in all categories of content safety relative to previous Gemma models. Overall, Gemma 4 models significantly outperform Gemma 3 and 3n models in improving safety, while keeping unjustified refusals low. All testing was conducted without safety filters to evaluate the model capabilities and behaviors. For both text-to-text and image-to-text, and across all model sizes, the model produced minimal policy violations, and showed significant improvements over previous Gemma models' performance.
## **Usage and Limitations**
These models have certain limitations that users should be aware of.
### **Intended Usage**
Multimodal models (capable of processing vision, language, and/or audio) have a wide range of applications across various industries and domains. The following list of potential uses is not comprehensive. The purpose of this list is to provide contextual information about the possible use-cases that the model creators considered as part of model training and development.
* **Content Creation and Communication**
* **Text Generation**: These models can be used to generate creative text formats such as poems, scripts, code, marketing copy, and email drafts.
* **Chatbots and Conversational AI**: Power conversational interfaces for customer service, virtual assistants, or interactive applications.
* **Text Summarization**: Generate concise summaries of a text corpus, research papers, or reports.
* **Image Data Extraction**: These models can be used to extract, interpret, and summarize visual data for text communications.
* **Audio Processing and Interaction**: The E2B, E4B, and 12B models can analyze and interpret audio inputs, enabling voice-driven interactions and transcriptions.
* **Research and Education**
* **Natural Language Processing (NLP) and VLM Research**: These models can serve as a foundation for researchers to experiment with VLM and NLP techniques, develop algorithms, and contribute to the advancement of the field.
* **Language Learning Tools**: Support interactive language learning experiences, aiding in grammar correction or providing writing practice.
* **Knowledge Exploration**: Assist researchers in exploring large bodies of text by generating summaries or answering questions about specific topics.
### **Limitations**
* **Training Data**
* The quality and diversity of the training data significantly influence the model's capabilities. Biases or gaps in the training data can lead to limitations in the model's responses.
* The scope of the training dataset determines the subject areas the model can handle effectively.
* **Context and Task Complexity**
* Models perform well on tasks that can be framed with clear prompts and instructions. Open-ended or highly complex tasks might be challenging.
* A model's performance can be influenced by the amount of context provided (longer context generally leads to better outputs, up to a certain point).
* **Language Ambiguity and Nuance**
* Natural language is inherently complex. Models might struggle to grasp subtle nuances, sarcasm, or figurative language.
* **Factual Accuracy**
* Models generate responses based on information they learned from their training datasets, but they are not knowledge bases. They may generate incorrect or outdated factual statements.
* **Common Sense**
* Models rely on statistical patterns in language. They might lack the ability to apply common sense reasoning in certain situations.
### **Ethical Considerations and Risks**
The development of vision-language models (VLMs) raises several ethical concerns. In creating an open model, we have carefully considered the following:
* **Bias and Fairness**
* VLMs trained on large-scale, real-world text and image data can reflect socio-cultural biases embedded in the training material. Gemma 4 models underwent careful scrutiny, input data pre-processing, and post-training evaluations as reported in this card to help mitigate the risk of these biases.
* **Misinformation and Misuse**
* VLMs can be misused to generate text that is false, misleading, or harmful.
* Guidelines are provided for responsible use with the model, see the [Responsible Generative AI Toolkit](https://ai.google.dev/responsible).
* **Transparency and Accountability**
* This model card summarizes details on the models' architecture, capabilities, limitations, and evaluation processes.
* A responsibly developed open model offers the opportunity to share innovation by making VLM technology accessible to developers and researchers across the AI ecosystem.
**Risks identified and mitigations**:
* **Generation of harmful content**: Mechanisms and guidelines for content safety are essential. Developers are encouraged to exercise caution and implement appropriate content safety safeguards based on their specific product policies and application use cases.
* **Misuse for malicious purposes**: Technical limitations and developer and end-user education can help mitigate against malicious applications of VLMs. Educational resources and reporting mechanisms for users to flag misuse are provided.
* **Privacy violations**: Models were trained on data filtered for removal of certain personal information and other sensitive data. Developers are encouraged to adhere to privacy regulations with privacy-preserving techniques.
* **Perpetuation of biases**: It's encouraged to perform continuous monitoring (using evaluation metrics, human review) and the exploration of de-biasing techniques during model training, fine-tuning, and other use cases.
### **Benefits**
At the time of release, this family of models provides high-performance open vision-language model implementations designed from the ground up for responsible AI development compared to similarly sized models.

View file

@ -0,0 +1,190 @@
{
"architectures": [
"Gemma4ForConditionalGeneration"
],
"audio_config": {
"_name_or_path": "",
"architectures": null,
"attention_chunk_size": 12,
"attention_context_left": 13,
"attention_context_right": 0,
"attention_invalid_logits_value": -1000000000.0,
"attention_logit_cap": 50.0,
"chunk_size_feed_forward": 0,
"conv_kernel_size": 5,
"torch_dtype": "bfloat16",
"gradient_clipping": 10000000000.0,
"hidden_act": "silu",
"hidden_size": 1024,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"model_type": "gemma4_audio",
"num_attention_heads": 8,
"num_hidden_layers": 12,
"output_attentions": false,
"output_hidden_states": false,
"output_proj_dims": 1536,
"problem_type": null,
"residual_weight": 0.5,
"return_dict": true,
"rms_norm_eps": 1e-06,
"subsampling_conv_channels": [
128,
32
],
"use_clipped_linears": true
},
"audio_token_id": 258881,
"boa_token_id": 256000,
"boi_token_id": 255999,
"torch_dtype": "bfloat16",
"eoa_token_id": 258883,
"eoa_token_index": 258883,
"eoi_token_id": 258882,
"eos_token_id": 106,
"image_token_id": 258880,
"initializer_range": 0.02,
"model_type": "gemma4",
"pad_token_id": 0,
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attention_k_eq_v": false,
"bos_token_id": 2,
"torch_dtype": "bfloat16",
"enable_moe_block": false,
"eos_token_id": 1,
"expert_intermediate_size": null,
"final_logit_softcapping": 30.0,
"global_head_dim": 512,
"head_dim": 256,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 1536,
"hidden_size_per_layer_input": 256,
"initializer_range": 0.02,
"intermediate_size": 6144,
"layer_types": [
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention"
],
"max_position_embeddings": 131072,
"model_type": "gemma4_text",
"moe_intermediate_size": null,
"num_attention_heads": 8,
"num_experts": null,
"num_global_key_value_heads": null,
"num_hidden_layers": 35,
"num_key_value_heads": 1,
"num_kv_shared_layers": 20,
"pad_token_id": 0,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"full_attention": {
"partial_rotary_factor": 0.25,
"rope_theta": 1000000.0,
"rope_type": "proportional"
},
"sliding_attention": {
"rope_theta": 10000.0,
"rope_type": "default"
}
},
"sliding_window": 512,
"tie_word_embeddings": true,
"top_k_experts": null,
"use_bidirectional_attention": null,
"use_cache": true,
"use_double_wide_mlp": true,
"vocab_size": 262144,
"vocab_size_per_layer_input": 262144
},
"tie_word_embeddings": true,
"transformers_version": "5.5.0.dev0",
"unsloth_fixed": true,
"video_token_id": 258884,
"vision_config": {
"_name_or_path": "",
"architectures": null,
"attention_bias": false,
"attention_dropout": 0.0,
"chunk_size_feed_forward": 0,
"default_output_length": 280,
"torch_dtype": "bfloat16",
"global_head_dim": 64,
"head_dim": 64,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 768,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"intermediate_size": 3072,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"max_position_embeddings": 131072,
"model_type": "gemma4_vision",
"num_attention_heads": 12,
"num_hidden_layers": 16,
"num_key_value_heads": 12,
"output_attentions": false,
"output_hidden_states": false,
"patch_size": 16,
"pooling_kernel_size": 3,
"position_embedding_size": 10240,
"problem_type": null,
"return_dict": true,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"rope_theta": 100.0,
"rope_type": "default"
},
"standardize": false,
"use_clipped_linears": true
},
"vision_soft_tokens_per_image": 280
}

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,548 @@
---
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
pipeline_tag: image-text-to-text
base_model: google/gemma-4-E4B-it
tags:
- gemma4
- unsloth
- gemma
- google
---
# Read our How to [Run Gemma 4 Guide!](https://docs.unsloth.ai/models/gemma-4)
<div>
<p style="margin: 0 0 0px 0; margin-top: 0px;">
<em>See <a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0 GGUFs</a> for our quantization benchmarks.</em>
</p>
<div style="display: flex; gap: 5px; align-items: center; margin-bottom: 0px;">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/gemma-4">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
<ul style="margin: 0;">
<li><b>Jun 9 Update:</b> Added MTP support. See our <a href="https://unsloth.ai/docs/models/mtp">MTP Guide</a>.</li>
<li><b>Apr 11 Update:</b> Re-download for Google's latest chat template and llama.cpp fixes.</li>
<li>Gemma 4 can now be run and fine-tuned in <a href="https://unsloth.ai/docs/new/studio">Unsloth Studio</a>. <a href="https://unsloth.ai/docs/models/gemma-4">Read our guide</a>.</li>
<li>See all versions of Gemma 4 (GGUF, 16-bit etc.) <a href="https://huggingface.co/collections/unsloth/gemma-4">in our collection</a>.</li>
<li>Example of Gemma 4 E4B (4-bit GGUF) running in Unsloth Studio with tool-calling:</li>
</ul>
</div>
<img width="600" alt="gemma 4 in unsloth studio" src="https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/BTmv3pr-QQ8ZMxxX3Ofnf.gif" />
---
<div align="center">
<img src=https://ai.google.dev/gemma/images/gemma4_banner.png>
</div>
<p align="center">
<a href="https://huggingface.co/collections/google/gemma-4" target="_blank">Hugging Face</a> |
<a href="https://github.com/google-gemma" target="_blank">GitHub</a> |
<a href="https://blog.google/innovation-and-ai/technology/developers-tools/gemma-4/" target="_blank">Launch Blog</a> |
<a href="https://ai.google.dev/gemma/docs/core" target="_blank">Documentation</a>
<br>
<b>License</b>: <a href="https://ai.google.dev/gemma/docs/gemma_4_license" target="_blank">Apache 2.0</a> | <b>Authors</b>: <a href="https://deepmind.google/models/gemma/" target="_blank">Google DeepMind</a>
</p>
Gemma is a family of open models built by Google DeepMind. Gemma 4 models are multimodal, handling text and image input (with audio supported on small models) and generating text output. This release includes open-weights models in both pre-trained and instruction-tuned variants. Gemma 4 features a context window of up to 256K tokens and maintains multilingual support in over 140 languages.
Featuring both Dense and Mixture-of-Experts (MoE) architectures, Gemma 4 is well-suited for tasks like text generation, coding, and reasoning. The models are available in four distinct sizes: **E2B**, **E4B**, **26B A4B**, and **31B**. Their diverse sizes make them deployable in environments ranging from high-end phones to laptops and servers, democratizing access to state-of-the-art AI.
Gemma 4 introduces key **capability and architectural advancements**:
* **Reasoning** All models in the family are designed as highly capable reasoners, with configurable thinking modes.
* **Extended Multimodalities** Processes Text, Image with variable aspect ratio and resolution support (all models), Video, and Audio (featured natively on the E2B and E4B models).
* **Diverse & Efficient Architectures** Offers Dense and Mixture-of-Experts (MoE) variants of different sizes for scalable deployment.
* **Optimized for On-Device** Smaller models are specifically designed for efficient local execution on laptops and mobile devices.
* **Increased Context Window** The small models feature a 128K context window, while the medium models support 256K.
* **Enhanced Coding & Agentic Capabilities** Achieves notable improvements in coding benchmarks alongside native function-calling support, powering highly capable autonomous agents.
* **Native System Prompt Support** Gemma 4 introduces native support for the `system` role, enabling more structured and controllable conversations.
## **Models Overview**
Gemma 4 models are designed to deliver frontier-level performance at each size, targeting deployment scenarios from mobile and edge devices (E2B, E4B) to consumer GPUs and workstations (26B A4B, 31B). They are well-suited for reasoning, agentic workflows, coding, and multimodal understanding.
The models employ a hybrid attention mechanism that interleaves local sliding window attention with full global attention, ensuring the final layer is always global. This hybrid design delivers the processing speed and low memory footprint of a lightweight model without sacrificing the deep awareness required for complex, long-context tasks. To optimize memory for long contexts, global layers feature unified Keys and Values, and apply Proportional RoPE (p-RoPE).
### Dense Models
| Property | E2B | E4B | 31B Dense |
| :---- | :---- | :---- | :---- |
| **Total Parameters** | 2.3B effective (5.1B with embeddings) | 4.5B effective (8B with embeddings) | 30.7B |
| **Layers** | 35 | 42 | 60 |
| **Sliding Window** | 512 tokens | 512 tokens | 1024 tokens |
| **Context Length** | 128K tokens | 128K tokens | 256K tokens |
| **Vocabulary Size** | 262K | 262K | 262K |
| **Supported Modalities** | Text, Image, Audio | Text, Image, Audio | Text, Image |
| **Vision Encoder Parameters** | *~150M* | *~150M* | *~550M* |
| **Audio Encoder Parameters** | *~300M* | *~300M* | No Audio |
The "E" in E2B and E4B stands for "effective" parameters. The smaller models incorporate Per-Layer Embeddings (PLE) to maximize parameter efficiency in on-device deployments. Rather than adding more layers or parameters to the model, PLE gives each decoder layer its own small embedding for every token. These embedding tables are large but are only used for quick lookups, which is why the effective parameter count is much smaller than the total.
### Mixture-of-Experts (MoE) Model
| Property | 26B A4B MoE |
| :---- | :---- |
| **Total Parameters** | 25.2B |
| **Active Parameters** | 3.8B |
| **Layers** | 30 |
| **Sliding Window** | 1024 tokens |
| **Context Length** | 256K tokens |
| **Vocabulary Size** | 262K |
| **Expert Count** | 8 active / 128 total and 1 shared |
| **Supported Modalities** | Text, Image |
| **Vision Encoder Parameters** | *~550M* |
The "A" in 26B A4B stands for "active parameters" in contrast to the total number of parameters the model contains. By only activating a 4B subset of parameters during inference, the Mixture-of-Experts model runs much faster than its 26B total might suggest. This makes it an excellent choice for fast inference compared to the dense 31B model since it runs almost as fast as a 4B-parameter model.
## **Benchmark Results**
These models were evaluated against a large collection of different datasets and metrics to cover different aspects of text generation. Evaluation results marked in the table are for instruction-tuned models.
| | Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (no think) |
| :---- | :---- | :---- | :---- | :---- | :---- |
| MMLU Pro | 85.2% | 82.6% | 69.4% | 60.0% | 67.6% |
| AIME 2026 no tools | 89.2% | 88.3% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 58.6% | 43.4% | 42.4% |
| Tau2 (average over 3) | 76.9% | 68.2% | 42.2% | 24.5% | 16.2% |
| HLE no tools | 19.5% | 8.7% | - | - | - |
| HLE with search | 26.5% | 17.2% | - | - | - |
| BigBench Extra Hard | 74.4% | 64.8% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 76.6% | 67.4% | 70.7% |
| **Vision** | | | | | |
| MMMU Pro | 76.9% | 73.8% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (average edit distance, lower is better) | 0.131 | 0.149 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 28.7% | 23.5% | - |
| **Audio** | | | | | |
| CoVoST | - | - | 35.54 | 33.47 | - |
| FLEURS (lower is better) | - | - | 0.08 | 0.09 | - |
| **Long Context** | | | | | |
| MRCR v2 8 needle 128k (average) | 66.4% | 44.1% | 25.4% | 19.1% | 13.5% |
## **Core Capabilities**
Gemma 4 models handle a broad range of tasks across text, vision, and audio. Key capabilities include:
* **Thinking** Built-in reasoning mode that lets the model think step-by-step before answering.
* **Long Context** Context windows of up to 128K tokens (E2B/E4B) and 256K tokens (26B A4B/31B).
* **Image Understanding** Object detection, Document/PDF parsing, screen and UI understanding, chart comprehension, OCR (including multilingual), handwriting recognition, and pointing. Images can be processed at variable aspect ratios and resolutions.
* **Video Understanding** Analyze video by processing sequences of frames.
* **Interleaved Multimodal Input** Freely mix text and images in any order within a single prompt.
* **Function Calling** Native support for structured tool use, enabling agentic workflows.
* **Coding** Code generation, completion, and correction.
* **Multilingual** Out-of-the-box support for 35+ languages, pre-trained on 140+ languages.
* **Audio** (E2B and E4B only) Automatic speech recognition (ASR) and speech-to-translated-text translation across multiple languages.
## Getting Started
You can use all Gemma 4 models with the latest version of Transformers. To get started, install the necessary dependencies in your environment:
`pip install -U transformers torch accelerate`
Once you have everything installed, you can proceed to load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForCausalLM
MODEL_ID = "google/gemma-4-E4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForCausalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output:
```python
# Prompt
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a short joke about saving RAM."},
]
# Process input
text = processor.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=False
)
inputs = processor(text=text, return_tensors="pt").to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
Below, you will also find snippets for processing audio (E2B and E4B only), images, and video alongside text:
<details>
<summary>Code for processing Audio</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process audio. To use it, make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-E4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the audio URL in the prompt:
```python
# Prompt - add audio before text
messages = [
{
"role": "user",
"content": [
{"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/journal1.wav"},
{"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Images</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process images. To use it, make sure to install the following packages:
`pip install -U transformers torch torchvision accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-E4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the image URL in the prompt:
```python
# Prompt - add image before text
messages = [
{
"role": "user", "content": [
{"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/Demos/sample-data/GoldenGate.png"},
{"type": "text", "text": "What is shown in this image?"}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Videos</summary>
Instead of using `AutoModelForCausalLM`, you can use `AutoModelForMultimodalLM` to process videos. To use it, make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-E4B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the video URL in the prompt:
```python
# Prompt - add video before text
messages = [
{
'role': 'user',
'content': [
{"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
{'type': 'text', 'text': 'Describe this video.'}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
## **Best Practices**
For the best performance, use these configurations and best practices:
### 1. Sampling Parameters
Use the following standardized sampling configuration across all use cases:
* `temperature=1.0`
* `top_p=0.95`
* `top_k=64`
### 2. Thinking Mode Configuration
Compared to Gemma 3, the models use standard `system`, `assistant`, and `user` roles. To properly manage the thinking process, use the following control tokens:
* **Trigger Thinking:** Thinking is enabled by including the `<|think|>` token at the start of the system prompt. To disable thinking, remove the token.
* **Standard Generation:** When thinking is enabled, the model will output its internal reasoning followed by the final answer using this structure:
`<|channel>thought\n`**[Internal reasoning]**`<channel|>`
* **Disabled Thinking Behavior:** For all models except for the E2B and E4B variants, if thinking is disabled, the model will still generate the tags but with an empty thought block:
`<|channel>thought\n<channel|>`**[Final answer]**
> [!Note]
> Note that many libraries like Transformers and llama.cpp handle the complexities of the chat template for you.
### 3. Multi-Turn Conversations
* **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final response. Thoughts from previous model turns must *not be added* before the next user turn begins.
### 4. Modality order
* For optimal performance with multimodal inputs, place image and/or audio content **before** the text in your prompt.
### 5. Variable Image Resolution
Aside from variable aspect ratios, Gemma 4 supports variable image resolution through a configurable visual token budget, which controls how many tokens are used to represent an image. A higher token budget preserves more visual detail at the cost of additional compute, while a lower budget enables faster inference for tasks that don't require fine-grained understanding.
* The supported token budgets are: **70**, **140**, **280**, **560**, and **1120**.
* Use *lower budgets* for classification, captioning, or video understanding, where faster inference and processing many frames outweigh fine-grained detail.
* Use *higher budgets* for tasks like OCR, document parsing, or reading small text.
### 6. Audio
Use the following prompt structures for audio processing:
* **Audio Speech Recognition (ASR)**
```text
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text.
Follow these specific instructions for formatting the answer:
* Only output the transcription, with no newlines.
* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
```
* **Automatic Speech Translation (AST)**
```text
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.
When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
```
### 7. Audio and Video Length
All models support image inputs and can process videos as frames whereas the E2B and E4B models also support audio inputs. Audio supports a maximum length of 30 seconds. Video supports a maximum of 60 seconds assuming the images are processed at one frame per second.
## **Model Data**
Data used for model training and how the data was processed.
### **Training Dataset**
Our pre-training dataset is a large-scale, diverse collection of data encompassing a wide range of domains and modalities, which includes web documents, code, images, audio, with a cutoff date of January 2025. Here are the key components:
* **Web Documents**: A diverse collection of web text ensures the model is exposed to a broad range of linguistic styles, topics, and vocabulary. The training dataset includes content in over 140 languages.
* **Code**: Exposing the model to code helps it to learn the syntax and patterns of programming languages, which improves its ability to generate code and understand code-related questions.
* **Mathematics**: Training on mathematical text helps the model learn logical reasoning, symbolic representation, and to address mathematical queries.
* **Images**: A wide range of images enables the model to perform image analysis and visual data extraction tasks.
The combination of these diverse data sources is crucial for training a powerful multimodal model that can handle a wide variety of different tasks and data formats.
### **Data Preprocessing**
Here are the key data cleaning and filtering methods applied to the training data:
* **CSAM Filtering**: Rigorous CSAM (Child Sexual Abuse Material) filtering was applied at multiple stages in the data preparation process to ensure the exclusion of harmful and illegal content.
* **Sensitive Data Filtering**: As part of making Gemma pre-trained models safe and reliable, automated techniques were used to filter out certain personal information and other sensitive data from training sets.
* **Additional methods**: Filtering based on content quality and safety in line with [our policies](https://ai.google/static/documents/ai-responsibility-update-published-february-2025.pdf).
## **Ethics and Safety**
As open models become central to enterprise infrastructure, provenance and security are paramount. Developed by Google DeepMind, Gemma 4 undergoes the same rigorous safety evaluations as our proprietary Gemini models.
### **Evaluation Approach**
Gemma 4 models were developed in partnership with internal safety and responsible AI teams. A range of automated as well as human evaluations were conducted to help improve model safety. These evaluations align with [Googles AI principles](https://ai.google/principles/), as well as safety policies, which aim to prevent our generative AI models from generating harmful content, including:
* Content related to child sexual abuse material and exploitation
* Dangerous content (e.g., promoting suicide, or instructing in activities that could cause real-world harm)
* Sexually explicit content
* Hate speech (e.g., dehumanizing members of protected groups)
* Harassment (e.g., encouraging violence against people)
### **Evaluation Results**
For all areas of safety testing, we saw major improvements in all categories of content safety relative to previous Gemma models. Overall, Gemma 4 models significantly outperform Gemma 3 and 3n models in improving safety, while keeping unjustified refusals low. All testing was conducted without safety filters to evaluate the model capabilities and behaviors. For both text-to-text and image-to-text, and across all model sizes, the model produced minimal policy violations, and showed significant improvements over previous Gemma models' performance.
## **Usage and Limitations**
These models have certain limitations that users should be aware of.
### **Intended Usage**
Multimodal models (capable of processing vision, language, and/or audio) have a wide range of applications across various industries and domains. The following list of potential uses is not comprehensive. The purpose of this list is to provide contextual information about the possible use-cases that the model creators considered as part of model training and development.
* **Content Creation and Communication**
* **Text Generation**: These models can be used to generate creative text formats such as poems, scripts, code, marketing copy, and email drafts.
* **Chatbots and Conversational AI**: Power conversational interfaces for customer service, virtual assistants, or interactive applications.
* **Text Summarization**: Generate concise summaries of a text corpus, research papers, or reports.
* **Image Data Extraction**: These models can be used to extract, interpret, and summarize visual data for text communications.
* **Audio Processing and Interaction**: The smaller models (E2B and E4B) can analyze and interpret audio inputs, enabling voice-driven interactions and transcriptions.
* **Research and Education**
* **Natural Language Processing (NLP) and VLM Research**: These models can serve as a foundation for researchers to experiment with VLM and NLP techniques, develop algorithms, and contribute to the advancement of the field.
* **Language Learning Tools**: Support interactive language learning experiences, aiding in grammar correction or providing writing practice.
* **Knowledge Exploration**: Assist researchers in exploring large bodies of text by generating summaries or answering questions about specific topics.
### **Limitations**
* **Training Data**
* The quality and diversity of the training data significantly influence the model's capabilities. Biases or gaps in the training data can lead to limitations in the model's responses.
* The scope of the training dataset determines the subject areas the model can handle effectively.
* **Context and Task Complexity**
* Models perform well on tasks that can be framed with clear prompts and instructions. Open-ended or highly complex tasks might be challenging.
* A model's performance can be influenced by the amount of context provided (longer context generally leads to better outputs, up to a certain point).
* **Language Ambiguity and Nuance**
* Natural language is inherently complex. Models might struggle to grasp subtle nuances, sarcasm, or figurative language.
* **Factual Accuracy**
* Models generate responses based on information they learned from their training datasets, but they are not knowledge bases. They may generate incorrect or outdated factual statements.
* **Common Sense**
* Models rely on statistical patterns in language. They might lack the ability to apply common sense reasoning in certain situations.
### **Ethical Considerations and Risks**
The development of vision-language models (VLMs) raises several ethical concerns. In creating an open model, we have carefully considered the following:
* **Bias and Fairness**
* VLMs trained on large-scale, real-world text and image data can reflect socio-cultural biases embedded in the training material. Gemma 4 models underwent careful scrutiny, input data pre-processing, and post-training evaluations as reported in this card to help mitigate the risk of these biases.
* **Misinformation and Misuse**
* VLMs can be misused to generate text that is false, misleading, or harmful.
* Guidelines are provided for responsible use with the model, see the [Responsible Generative AI Toolkit](https://ai.google.dev/responsible).
* **Transparency and Accountability**
* This model card summarizes details on the models' architecture, capabilities, limitations, and evaluation processes.
* A responsibly developed open model offers the opportunity to share innovation by making VLM technology accessible to developers and researchers across the AI ecosystem.
**Risks identified and mitigations**:
* **Generation of harmful content**: Mechanisms and guidelines for content safety are essential. Developers are encouraged to exercise caution and implement appropriate content safety safeguards based on their specific product policies and application use cases.
* **Misuse for malicious purposes**: Technical limitations and developer and end-user education can help mitigate against malicious applications of VLMs. Educational resources and reporting mechanisms for users to flag misuse are provided.
* **Privacy violations**: Models were trained on data filtered for removal of certain personal information and other sensitive data. Developers are encouraged to adhere to privacy regulations with privacy-preserving techniques.
* **Perpetuation of biases**: It's encouraged to perform continuous monitoring (using evaluation metrics, human review) and the exploration of de-biasing techniques during model training, fine-tuning, and other use cases.
### **Benefits**
At the time of release, this family of models provides high-performance open vision-language model implementations designed from the ground up for responsible AI development compared to similarly sized models.

View file

@ -0,0 +1,197 @@
{
"architectures": [
"Gemma4ForConditionalGeneration"
],
"audio_config": {
"_name_or_path": "",
"architectures": null,
"attention_chunk_size": 12,
"attention_context_left": 13,
"attention_context_right": 0,
"attention_invalid_logits_value": -1000000000.0,
"attention_logit_cap": 50.0,
"chunk_size_feed_forward": 0,
"conv_kernel_size": 5,
"torch_dtype": "bfloat16",
"gradient_clipping": 10000000000.0,
"hidden_act": "silu",
"hidden_size": 1024,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"model_type": "gemma4_audio",
"num_attention_heads": 8,
"num_hidden_layers": 12,
"output_attentions": false,
"output_hidden_states": false,
"output_proj_dims": 1536,
"problem_type": null,
"residual_weight": 0.5,
"return_dict": true,
"rms_norm_eps": 1e-06,
"subsampling_conv_channels": [
128,
32
],
"use_clipped_linears": true
},
"audio_token_id": 258881,
"boa_token_id": 256000,
"boi_token_id": 255999,
"torch_dtype": "bfloat16",
"eoa_token_id": 258883,
"eoa_token_index": 258883,
"eoi_token_id": 258882,
"eos_token_id": 106,
"image_token_id": 258880,
"initializer_range": 0.02,
"model_type": "gemma4",
"pad_token_id": 0,
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attention_k_eq_v": false,
"bos_token_id": 2,
"torch_dtype": "bfloat16",
"enable_moe_block": false,
"eos_token_id": 1,
"expert_intermediate_size": null,
"final_logit_softcapping": 30.0,
"global_head_dim": 512,
"head_dim": 256,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 2560,
"hidden_size_per_layer_input": 256,
"initializer_range": 0.02,
"intermediate_size": 10240,
"layer_types": [
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention"
],
"max_position_embeddings": 131072,
"model_type": "gemma4_text",
"moe_intermediate_size": null,
"num_attention_heads": 8,
"num_experts": null,
"num_global_key_value_heads": null,
"num_hidden_layers": 42,
"num_key_value_heads": 2,
"num_kv_shared_layers": 18,
"pad_token_id": 0,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"full_attention": {
"partial_rotary_factor": 0.25,
"rope_theta": 1000000.0,
"rope_type": "proportional"
},
"sliding_attention": {
"rope_theta": 10000.0,
"rope_type": "default"
}
},
"sliding_window": 512,
"tie_word_embeddings": true,
"top_k_experts": null,
"use_bidirectional_attention": null,
"use_cache": true,
"use_double_wide_mlp": false,
"vocab_size": 262144,
"vocab_size_per_layer_input": 262144
},
"tie_word_embeddings": true,
"transformers_version": "5.5.0.dev0",
"unsloth_fixed": true,
"video_token_id": 258884,
"vision_config": {
"_name_or_path": "",
"architectures": null,
"attention_bias": false,
"attention_dropout": 0.0,
"chunk_size_feed_forward": 0,
"default_output_length": 280,
"torch_dtype": "bfloat16",
"global_head_dim": 64,
"head_dim": 64,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 768,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"intermediate_size": 3072,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"max_position_embeddings": 131072,
"model_type": "gemma4_vision",
"num_attention_heads": 12,
"num_hidden_layers": 16,
"num_key_value_heads": 12,
"output_attentions": false,
"output_hidden_states": false,
"patch_size": 16,
"pooling_kernel_size": 3,
"position_embedding_size": 10240,
"problem_type": null,
"return_dict": true,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"rope_theta": 100.0,
"rope_type": "default"
},
"standardize": false,
"use_clipped_linears": true
},
"vision_soft_tokens_per_image": 280
}

Binary file not shown.

BIN
chat/gguf/unsloth/gemma-4-E4B-it-GGUF/mmproj-F16.gguf (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,578 @@
---
library_name: transformers
license: apache-2.0
license_link: https://ai.google.dev/gemma/docs/gemma_4_license
pipeline_tag: any-to-any
base_model: google/gemma-4-E4B-it-qat-mobile-transformers
tags:
- gemma4
- unsloth
- gemma
- google
---
# Read our How to [Run Gemma 4 QAT Guide!](https://unsloth.ai/docs/models/gemma-4/qat)
<div>
<p style="margin: 0 0 0px 0; margin-top: 0px;">
<em>See <a href="https://unsloth.ai/docs/basics/unsloth-dynamic-v2.0-gguf">Unsloth Dynamic 2.0 GGUFs</a> for our quantization benchmarks.</em>
</p>
<div style="display: flex; gap: 5px; align-items: center; margin-bottom: 0px;">
<a href="https://github.com/unslothai/unsloth/">
<img src="https://github.com/unslothai/unsloth/raw/main/images/unsloth%20new%20logo.png" width="133">
</a>
<a href="https://discord.gg/unsloth">
<img src="https://github.com/unslothai/unsloth/raw/main/images/Discord%20button.png" width="173">
</a>
<a href="https://unsloth.ai/docs/models/gemma-4">
<img src="https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/documentation%20green%20button.png" width="143">
</a>
</div>
<ul style="margin: 0;">
<li><b>Jun 9 Update:</b> Added MTP support. See our <a href="https://unsloth.ai/docs/models/mtp">MTP Guide</a>.</li>
<li>Gemma 4 can now be run and fine-tuned in <a href="https://unsloth.ai/docs/new/studio">Unsloth Studio</a>. <a href="https://unsloth.ai/docs/models/gemma-4">Read our guide</a>.</li>
<li>See all versions of Gemma 4 QAT (GGUF, 16-bit etc.) <a href="https://huggingface.co/collections/unsloth/gemma-4-qat">in our collection</a>.</li>
<li>Example of Gemma 4 E4B (4-bit GGUF) running in Unsloth Studio with tool-calling:</li>
</ul>
</div>
<img width="600" alt="gemma 4 in unsloth studio" src="https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/BTmv3pr-QQ8ZMxxX3Ofnf.gif" />
![image](https://cdn-uploads.huggingface.co/production/uploads/62ecdc18b72a69615d6bd857/XQqmw-hY_Ap2O_YVRBJAq.png)
## Run with MTP (speculative decoding)
This model ships a Multi-Token Prediction drafter at the repo root (`mtp-gemma-4-E4B-it.gguf`, a near-lossless smart Q4_0). A recent llama.cpp auto-discovers it from `-hf`, so you do not pass `--model-draft`:
```bash
./build/bin/llama-server \
-hf unsloth/gemma-4-E4B-it-qat-mobile-GGUF:UD-Q2_K_XL \
--spec-type draft-mtp --spec-draft-n-max 4 \
-ngl 999 -fa off
```
The drafter shares the target's KV cache and does not change the output (the target verifies every drafted token). See the `MTP/` folder for the other precisions and explicit usage.
<div align="center">
<img src=https://ai.google.dev/gemma/images/gemma4_banner.png>
</div>
<p align="center">
<a href="https://huggingface.co/collections/google/gemma-4" target="_blank">Hugging Face</a> |
<a href="https://github.com/google-gemma" target="_blank">GitHub</a> |
<a href="https://blog.google/innovation-and-ai/technology/developers-tools/introducing-gemma-4-12B/" target="_blank">Launch Blog</a> |
<a href="https://ai.google.dev/gemma/docs/core" target="_blank">Documentation</a>
<br>
<b>License</b>: <a href="https://ai.google.dev/gemma/docs/gemma_4_license" target="_blank">Apache 2.0</a> | <b>Authors</b>: <a href="https://deepmind.google/models/gemma/" target="_blank">Google DeepMind</a>
</p>
> [!Note]
> This model card is for the new versions of the Gemma 4 family optimized with Quantization-Aware Training (QAT), which allows preserving similar quality to bfloat16 while dramatically reducing the memory requirements to load the model.
> Four versions of the QAT checkpoints are available:
> * **Unquantized QAT checkpoints** (Q4_0): Half-precision weights extracted from the QAT pipeline, ideal for custom downstream compilation and research. Available for Gemma 4 E2B, E4B, 12B, 26B A4B, and 31B, and their drafter models.
> * **GGUF** (Q4_0): Ready-to-deploy formats for broad ecosystem compatibility. Available for Gemma 4 E2B, E4B, 12B, 26B A4B, and 31B.
> * **Mobile-optimized** (wNa8o8): A custom schema engineered explicitly for mobile hardware efficiency. It features targeted 2-bit decoding layers, optimized KV caches, and static activations to maximize VRAM savings. Available for Gemma 4 E2B and E4B.
> * **Compressed Tensors** (w4a16): QAT checkpoints serialized in the compressed-tensors format for native, optimized inference with vLLM. Available for Gemma 4 E2B, E4B, 12B, and 31B.
Gemma is a family of open models built by Google DeepMind. Gemma 4 models are multimodal, handling text and image input (with audio supported on E2B, E4B, and 12B) and generating text output. This release includes open-weights models in both pre-trained and instruction-tuned variants. Gemma 4 features a context window of up to 256K tokens and maintains multilingual support in over 140 languages.
Featuring both Dense and Mixture-of-Experts (MoE) architectures, Gemma 4 is well-suited for tasks like text generation, coding, and reasoning. The models are available in five distinct sizes: **E2B**, **E4B**, **12B**, **26B A4B**, and **31B**. Their diverse sizes make them deployable in environments ranging from high-end phones to laptops and servers, democratizing access to state-of-the-art AI.
Gemma 4 introduces key **capability and architectural advancements**:
* **Reasoning** All models in the family are designed as highly capable reasoners, with configurable thinking modes.
* **Extended Multimodalities** Processes Text, Image with variable aspect ratio and resolution support (all models), Video, and Audio (featured natively on the E2B, E4B, and 12B models).
* **Diverse & Efficient Architectures** Offers Dense and Mixture-of-Experts (MoE) variants of different sizes for scalable deployment.
* **Optimized for On-Device** Smaller models are specifically designed for efficient local execution on laptops and mobile devices.
* **Increased Context Window** The small models feature a 128K context window, while the medium models support 256K.
* **Enhanced Coding & Agentic Capabilities** Achieves notable improvements in coding benchmarks alongside native function-calling support, powering highly capable autonomous agents.
* **Native System Prompt Support** Gemma 4 introduces native support for the `system` role, enabling more structured and controllable conversations.
## **Models Overview**
Gemma 4 models are designed to deliver frontier-level performance at each size, targeting deployment scenarios from mobile and edge devices (E2B, E4B) to consumer GPUs and workstations (12B, 26B A4B, 31B). They are well-suited for reasoning, agentic workflows, coding, and multimodal understanding.
The models employ a hybrid attention mechanism that interleaves local sliding window attention with full global attention, ensuring the final layer is always global. This hybrid design delivers the processing speed and low memory footprint of a lightweight model without sacrificing the deep awareness required for complex, long-context tasks. To optimize memory for long contexts, global layers feature unified Keys and Values, and apply Proportional RoPE (p-RoPE).
### Dense Models
| Property | E2B | E4B | 12B Unified | 31B Dense |
| :---- | :---- | :---- | :---- | :---- |
| **Total Parameters** | 2.3B effective <br> (5.1B with embeddings) | 4.5B effective <br> (8B with embeddings) | 11.95B | 30.7B |
| **Layers** | 35 | 42 | 48 | 60 |
| **Sliding Window** | 512 tokens | 512 tokens | 1024 tokens | 1024 tokens |
| **Context Length** | 128K tokens | 128K tokens | 256K tokens | 256K tokens |
| **Vocabulary Size** | 262K | 262K | 262K | 262K |
| **Supported Modalities** | Text, Image, Audio | Text, Image, Audio | Text, Image, Audio | Text, Image |
| **Vision Encoder Parameters** | *~150M* | *~150M* | - | *~550M* |
| **Audio Encoder Parameters** | *~300M* | *~300M* | - | No Audio |
The "E" in E2B and E4B stands for "effective" parameters. The smaller models incorporate Per-Layer Embeddings (PLE) to maximize parameter efficiency in on-device deployments. Rather than adding more layers or parameters to the model, PLE gives each decoder layer its own small embedding for every token. These embedding tables are large but are only used for quick lookups, which is why the effective parameter count is much smaller than the total.
The "Unified" in Gemma 4 12B Unified refers to its encoder-free architecture. Other Gemma 4 models use dedicated encoders to process multimodal data before passing it to the LLM. Gemma 4 12B eliminates these encoders entirely, projecting raw image patches and audio waveforms directly into the LLM's embedding space through lightweight linear layers. This unified approach means all modalities flow straight into a single decoder-only transformer, reducing multimodal latency and allowing the entire model to be fine-tuned in one pass.
### Mixture-of-Experts (MoE) Model
| Property | 26B A4B MoE |
| :---- | :---- |
| **Total Parameters** | 25.2B |
| **Active Parameters** | 3.8B |
| **Layers** | 30 |
| **Sliding Window** | 1024 tokens |
| **Context Length** | 256K tokens |
| **Vocabulary Size** | 262K |
| **Expert Count** | 8 active / 128 total and 1 shared |
| **Supported Modalities** | Text, Image |
| **Vision Encoder Parameters** | *~550M* |
The "A" in 26B A4B stands for "active parameters" in contrast to the total number of parameters the model contains. By only activating a 4B subset of parameters during inference, the Mixture-of-Experts model runs much faster than its 26B total might suggest. This makes it an excellent choice for fast inference compared to the dense 31B model since it runs almost as fast as a 4B-parameter model.
## **Benchmark Results**
These models were evaluated against a large collection of different datasets and metrics to cover different aspects of text generation. Evaluation results marked in the table are for instruction-tuned models.
| | Gemma 4 31B | Gemma 4 26B A4B | Gemma 4 12B Unified | Gemma 4 E4B | Gemma 4 E2B | Gemma 3 27B (no think) |
| :---- | :---- | :---- | :---- | :---- | :---- | :---- |
| MMLU Pro | 85.2% | 82.6% | 77.2% | 69.4% | 60.0% | 67.6% |
| AIME 2026 no tools | 89.2% | 88.3% | 77.5% | 42.5% | 37.5% | 20.8% |
| LiveCodeBench v6 | 80.0% | 77.1% | 72.0% | 52.0% | 44.0% | 29.1% |
| Codeforces ELO | 2150 | 1718 | 1659 | 940 | 633 | 110 |
| GPQA Diamond | 84.3% | 82.3% | 78.8% | 58.6% | 43.4% | 42.4% |
| Tau2 (average over 3) | 76.9% | 68.2% | 69.0% | 42.2% | 24.5% | 16.2% |
| HLE no tools | 19.5% | 8.7% | 5.2% | - | - | - |
| HLE with search | 26.5% | 17.2% | - | - | - | - |
| BigBench Extra Hard | 74.4% | 64.8% | 53.0% | 33.1% | 21.9% | 19.3% |
| MMMLU | 88.4% | 86.3% | 83.4% | 76.6% | 67.4% | 70.7% |
| **Vision** | | | | | | |
| MMMU Pro | 76.9% | 73.8% | 69.1% | 52.6% | 44.2% | 49.7% |
| OmniDocBench 1.5 (average edit distance, lower is better) | 0.131 | 0.149 | 0.164 | 0.181 | 0.290 | 0.365 |
| MATH-Vision | 85.6% | 82.4% | 79.7% | 59.5% | 52.4% | 46.0% |
| MedXPertQA MM | 61.3% | 58.1% | 48.7% | 28.7% | 23.5% | - |
| **Audio** | | | | | | |
| CoVoST | - | - | 38.5<sup>*</sup> | 35.54 | 33.47 | - |
| FLEURS (lower is better) | - | - | 0.069<sup>*</sup> | 0.08 | 0.09 | - |
| **Long Context** | | | | | | |
| MRCR v2 8 needle 128k (average) | 66.4% | 44.1% | 43.4% | 25.4% | 19.1% | 13.5% |
<sup>*</sup>Excluding Chinese language.
## **Core Capabilities**
Gemma 4 models handle a broad range of tasks across text, vision, and audio. Key capabilities include:
* **Thinking** Built-in reasoning mode that lets the model think step-by-step before answering.
* **Long Context** Context windows of up to 128K tokens (E2B/E4B) and 256K tokens (12B, 26B A4B/31B).
* **Image Understanding** Object detection, Document/PDF parsing, screen and UI understanding, chart comprehension, OCR (including multilingual), handwriting recognition, and pointing. Images can be processed at variable aspect ratios and resolutions.
* **Video Understanding** Analyze video by processing sequences of frames.
* **Interleaved Multimodal Input** Freely mix text and images in any order within a single prompt.
* **Function Calling** Native support for structured tool use, enabling agentic workflows.
* **Coding** Code generation, completion, and correction.
* **Multilingual** Out-of-the-box support for 35+ languages, pre-trained on 140+ languages.
* **Audio** (E2B, E4B, and 12B only) Automatic speech recognition (ASR) and speech-to-translated-text translation across multiple languages.
## Getting Started
You can use all Gemma 4 models with the latest version of Transformers. To get started, install the necessary dependencies in your environment:
`pip install -U transformers torch accelerate`
Once you have everything installed, you can proceed to load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output:
```python
# Prompt
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Write a short joke about saving RAM."},
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
enable_thinking=False
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=1024)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
To enable reasoning, set `enable_thinking=True` and the `parse_response` function will take care of parsing the thinking output.
Below, you will also find snippets for processing audio (E2B, E4B, 12B only), images, and video alongside text:
<details>
<summary>Code for processing Audio</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the audio URL in the prompt:
```python
# Prompt - add audio after text
messages = [
{
"role": "user",
"content": [
{"type": "text", "text": "Transcribe the following speech segment in its original language. Follow these specific instructions for formatting the answer:\n* Only output the transcription, with no newlines.\n* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three."},
{"type": "audio", "audio": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/journal1.wav"},
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Images</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the image URL in the prompt:
```python
# Prompt - add image before text
messages = [
{
"role": "user", "content": [
{"type": "image", "url": "https://raw.githubusercontent.com/google-gemma/cookbook/refs/heads/main/apps/sample-data/GoldenGate.png"},
{"type": "text", "text": "What is shown in this image?"}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
<details>
<summary>Code for processing Videos</summary>
Make sure to install the following packages:
`pip install -U transformers torch torchvision librosa accelerate`
You can then load the model with the code below:
```python
from transformers import AutoProcessor, AutoModelForMultimodalLM
MODEL_ID = "google/gemma-4-12B-it"
# Load model
processor = AutoProcessor.from_pretrained(MODEL_ID)
model = AutoModelForMultimodalLM.from_pretrained(
MODEL_ID,
dtype="auto",
device_map="auto"
)
```
Once the model is loaded, you can start generating output by directly referencing the video URL in the prompt:
```python
# Prompt - add video before text
messages = [
{
'role': 'user',
'content': [
{"type": "video", "video": "https://github.com/bebechien/gemma/raw/refs/heads/main/videos/ForBiggerBlazes.mp4"},
{'type': 'text', 'text': 'Describe this video.'}
]
}
]
# Process input
inputs = processor.apply_chat_template(
messages,
tokenize=True,
return_dict=True,
return_tensors="pt",
add_generation_prompt=True,
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
# Generate output
outputs = model.generate(**inputs, max_new_tokens=512)
response = processor.decode(outputs[0][input_len:], skip_special_tokens=False)
# Parse output
processor.parse_response(response)
```
</details>
## **Best Practices**
For the best performance, use these configurations and best practices:
### 1. Sampling Parameters
Use the following standardized sampling configuration across all use cases:
* `temperature=1.0`
* `top_p=0.95`
* `top_k=64`
### 2. Thinking Mode Configuration
Compared to Gemma 3, the models use standard `system`, `assistant`, and `user` roles. To properly manage the thinking process, use the following control tokens:
* **Trigger Thinking:** Thinking is enabled by including the `<|think|>` token at the start of the system prompt. To disable thinking, remove the token.
* **Standard Generation:** When thinking is enabled, the model will output its internal reasoning followed by the final answer using this structure:
`<|channel>thought\n`**[Internal reasoning]**`<channel|>`
* **Disabled Thinking Behavior:** For all models except for the E2B and E4B variants, if thinking is disabled, the model will still generate the tags but with an empty thought block:
`<|channel>thought\n<channel|>`**[Final answer]**
> [!Note]
> Note that many libraries like Transformers and llama.cpp handle the complexities of the chat template for you.
### 3. Multi-Turn Conversations
* **No Thinking Content in History**: In multi-turn conversations, the historical model output should only include the final response. Thoughts from previous model turns must *not be added* before the next user turn begins.
### 4. Modality order
For optimal performance with multimodal inputs, place:
* Image content **before** the text in your prompt.
* Audio content **after** the text in your prompt.
### 5. Variable Image Resolution
Aside from variable aspect ratios, Gemma 4 supports variable image resolution through a configurable visual token budget, which controls how many tokens are used to represent an image. A higher token budget preserves more visual detail at the cost of additional compute, while a lower budget enables faster inference for tasks that don't require fine-grained understanding.
* The supported token budgets are: **70**, **140**, **280**, **560**, and **1120**.
* Use *lower budgets* for classification, captioning, or video understanding, where faster inference and processing many frames outweigh fine-grained detail.
* Use *higher budgets* for tasks like OCR, document parsing, or reading small text.
### 6. Audio
Use the following prompt structures for audio processing:
* **Audio Speech Recognition (ASR)**
```text
Transcribe the following speech segment in {LANGUAGE} into {LANGUAGE} text.
Follow these specific instructions for formatting the answer:
* Only output the transcription, with no newlines.
* When transcribing numbers, write the digits, i.e. write 1.7 and not one point seven, and write 3 instead of three.
```
* **Automatic Speech Translation (AST)**
```text
Transcribe the following speech segment in {SOURCE_LANGUAGE}, then translate it into {TARGET_LANGUAGE}.
When formatting the answer, first output the transcription in {SOURCE_LANGUAGE}, then one newline, then output the string '{TARGET_LANGUAGE}: ', then the translation in {TARGET_LANGUAGE}.
```
### 7. Audio and Video Length
All models support image inputs and can process videos as frames whereas the E2B, E4B, and 12B models also support audio inputs. Audio supports a maximum length of 30 seconds. Video supports a maximum of 60 seconds assuming the images are processed at one frame per second.
## **Model Data**
Data used for model training and how the data was processed.
### **Training Dataset**
Our pre-training dataset is a large-scale, diverse collection of data encompassing a wide range of domains and modalities, which includes web documents, code, images, audio, with a cutoff date of January 2025. Here are the key components:
* **Web Documents**: A diverse collection of web text ensures the model is exposed to a broad range of linguistic styles, topics, and vocabulary. The training dataset includes content in over 140 languages.
* **Code**: Exposing the model to code helps it to learn the syntax and patterns of programming languages, which improves its ability to generate code and understand code-related questions.
* **Mathematics**: Training on mathematical text helps the model learn logical reasoning, symbolic representation, and to address mathematical queries.
* **Images**: A wide range of images enables the model to perform image analysis and visual data extraction tasks.
The combination of these diverse data sources is crucial for training a powerful multimodal model that can handle a wide variety of different tasks and data formats.
### **Data Preprocessing**
Here are the key data cleaning and filtering methods applied to the training data:
* **CSAM Filtering**: Rigorous CSAM (Child Sexual Abuse Material) filtering was applied at multiple stages in the data preparation process to ensure the exclusion of harmful and illegal content.
* **Sensitive Data Filtering**: As part of making Gemma pre-trained models safe and reliable, automated techniques were used to filter out certain personal information and other sensitive data from training sets.
* **Additional methods**: Filtering based on content quality and safety in line with [our policies](https://ai.google/static/documents/ai-responsibility-update-published-february-2025.pdf).
## **Ethics and Safety**
As open models become central to enterprise infrastructure, provenance and security are paramount. Developed by Google DeepMind, Gemma 4 undergoes the same rigorous safety evaluations as our proprietary Gemini models.
### **Evaluation Approach**
Gemma 4 models were developed in partnership with internal safety and responsible AI teams. A range of automated as well as human evaluations were conducted to help improve model safety. These evaluations align with [Googles AI principles](https://ai.google/principles/), as well as safety policies, which aim to prevent our generative AI models from generating harmful content, including:
* Content related to child sexual abuse material and exploitation
* Dangerous content (e.g., promoting suicide, or instructing in activities that could cause real-world harm)
* Sexually explicit content
* Hate speech (e.g., dehumanizing members of protected groups)
* Harassment (e.g., encouraging violence against people)
### **Evaluation Results**
For all areas of safety testing, we saw major improvements in all categories of content safety relative to previous Gemma models. Overall, Gemma 4 models significantly outperform Gemma 3 and 3n models in improving safety, while keeping unjustified refusals low. All testing was conducted without safety filters to evaluate the model capabilities and behaviors. For both text-to-text and image-to-text, and across all model sizes, the model produced minimal policy violations, and showed significant improvements over previous Gemma models' performance.
## **Usage and Limitations**
These models have certain limitations that users should be aware of.
### **Intended Usage**
Multimodal models (capable of processing vision, language, and/or audio) have a wide range of applications across various industries and domains. The following list of potential uses is not comprehensive. The purpose of this list is to provide contextual information about the possible use-cases that the model creators considered as part of model training and development.
* **Content Creation and Communication**
* **Text Generation**: These models can be used to generate creative text formats such as poems, scripts, code, marketing copy, and email drafts.
* **Chatbots and Conversational AI**: Power conversational interfaces for customer service, virtual assistants, or interactive applications.
* **Text Summarization**: Generate concise summaries of a text corpus, research papers, or reports.
* **Image Data Extraction**: These models can be used to extract, interpret, and summarize visual data for text communications.
* **Audio Processing and Interaction**: The E2B, E4B, and 12B models can analyze and interpret audio inputs, enabling voice-driven interactions and transcriptions.
* **Research and Education**
* **Natural Language Processing (NLP) and VLM Research**: These models can serve as a foundation for researchers to experiment with VLM and NLP techniques, develop algorithms, and contribute to the advancement of the field.
* **Language Learning Tools**: Support interactive language learning experiences, aiding in grammar correction or providing writing practice.
* **Knowledge Exploration**: Assist researchers in exploring large bodies of text by generating summaries or answering questions about specific topics.
### **Limitations**
* **Training Data**
* The quality and diversity of the training data significantly influence the model's capabilities. Biases or gaps in the training data can lead to limitations in the model's responses.
* The scope of the training dataset determines the subject areas the model can handle effectively.
* **Context and Task Complexity**
* Models perform well on tasks that can be framed with clear prompts and instructions. Open-ended or highly complex tasks might be challenging.
* A model's performance can be influenced by the amount of context provided (longer context generally leads to better outputs, up to a certain point).
* **Language Ambiguity and Nuance**
* Natural language is inherently complex. Models might struggle to grasp subtle nuances, sarcasm, or figurative language.
* **Factual Accuracy**
* Models generate responses based on information they learned from their training datasets, but they are not knowledge bases. They may generate incorrect or outdated factual statements.
* **Common Sense**
* Models rely on statistical patterns in language. They might lack the ability to apply common sense reasoning in certain situations.
### **Ethical Considerations and Risks**
The development of vision-language models (VLMs) raises several ethical concerns. In creating an open model, we have carefully considered the following:
* **Bias and Fairness**
* VLMs trained on large-scale, real-world text and image data can reflect socio-cultural biases embedded in the training material. Gemma 4 models underwent careful scrutiny, input data pre-processing, and post-training evaluations as reported in this card to help mitigate the risk of these biases.
* **Misinformation and Misuse**
* VLMs can be misused to generate text that is false, misleading, or harmful.
* Guidelines are provided for responsible use with the model, see the [Responsible Generative AI Toolkit](https://ai.google.dev/responsible).
* **Transparency and Accountability**
* This model card summarizes details on the models' architecture, capabilities, limitations, and evaluation processes.
* A responsibly developed open model offers the opportunity to share innovation by making VLM technology accessible to developers and researchers across the AI ecosystem.
**Risks identified and mitigations**:
* **Generation of harmful content**: Mechanisms and guidelines for content safety are essential. Developers are encouraged to exercise caution and implement appropriate content safety safeguards based on their specific product policies and application use cases.
* **Misuse for malicious purposes**: Technical limitations and developer and end-user education can help mitigate against malicious applications of VLMs. Educational resources and reporting mechanisms for users to flag misuse are provided.
* **Privacy violations**: Models were trained on data filtered for removal of certain personal information and other sensitive data. Developers are encouraged to adhere to privacy regulations with privacy-preserving techniques.
* **Perpetuation of biases**: It's encouraged to perform continuous monitoring (using evaluation metrics, human review) and the exploration of de-biasing techniques during model training, fine-tuning, and other use cases.
### **Benefits**
At the time of release, this family of models provides high-performance open vision-language model implementations designed from the ground up for responsible AI development compared to similarly sized models.

View file

@ -0,0 +1,197 @@
{
"architectures": [
"Gemma4ForConditionalGeneration"
],
"audio_config": {
"_name_or_path": "",
"architectures": null,
"attention_chunk_size": 12,
"attention_context_left": 13,
"attention_context_right": 0,
"attention_invalid_logits_value": -1000000000.0,
"attention_logit_cap": 50.0,
"chunk_size_feed_forward": 0,
"conv_kernel_size": 5,
"torch_dtype": "bfloat16",
"gradient_clipping": 10000000000.0,
"hidden_act": "silu",
"hidden_size": 1024,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"model_type": "gemma4_audio",
"num_attention_heads": 8,
"num_hidden_layers": 12,
"output_attentions": false,
"output_hidden_states": false,
"output_proj_dims": 1536,
"problem_type": null,
"residual_weight": 0.5,
"return_dict": true,
"rms_norm_eps": 1e-06,
"subsampling_conv_channels": [
128,
32
],
"use_clipped_linears": true
},
"audio_token_id": 258881,
"boa_token_id": 256000,
"boi_token_id": 255999,
"torch_dtype": "bfloat16",
"eoa_token_id": 258883,
"eoa_token_index": 258883,
"eoi_token_id": 258882,
"eos_token_id": 106,
"image_token_id": 258880,
"initializer_range": 0.02,
"model_type": "gemma4",
"pad_token_id": 0,
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attention_k_eq_v": false,
"bos_token_id": 2,
"torch_dtype": "bfloat16",
"enable_moe_block": false,
"eos_token_id": 1,
"expert_intermediate_size": null,
"final_logit_softcapping": 30.0,
"global_head_dim": 512,
"head_dim": 256,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 2560,
"hidden_size_per_layer_input": 256,
"initializer_range": 0.02,
"intermediate_size": 10240,
"layer_types": [
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"sliding_attention",
"full_attention"
],
"max_position_embeddings": 131072,
"model_type": "gemma4_text",
"moe_intermediate_size": null,
"num_attention_heads": 8,
"num_experts": null,
"num_global_key_value_heads": null,
"num_hidden_layers": 42,
"num_key_value_heads": 2,
"num_kv_shared_layers": 18,
"pad_token_id": 0,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"full_attention": {
"partial_rotary_factor": 0.25,
"rope_theta": 1000000.0,
"rope_type": "proportional"
},
"sliding_attention": {
"rope_theta": 10000.0,
"rope_type": "default"
}
},
"sliding_window": 512,
"tie_word_embeddings": true,
"top_k_experts": null,
"use_bidirectional_attention": null,
"use_cache": true,
"use_double_wide_mlp": false,
"vocab_size": 262144,
"vocab_size_per_layer_input": 262144
},
"tie_word_embeddings": true,
"transformers_version": "5.5.0.dev0",
"unsloth_fixed": true,
"video_token_id": 258884,
"vision_config": {
"_name_or_path": "",
"architectures": null,
"attention_bias": false,
"attention_dropout": 0.0,
"chunk_size_feed_forward": 0,
"default_output_length": 280,
"torch_dtype": "bfloat16",
"global_head_dim": 64,
"head_dim": 64,
"hidden_activation": "gelu_pytorch_tanh",
"hidden_size": 768,
"id2label": {
"0": "LABEL_0",
"1": "LABEL_1"
},
"initializer_range": 0.02,
"intermediate_size": 3072,
"is_encoder_decoder": false,
"label2id": {
"LABEL_0": 0,
"LABEL_1": 1
},
"max_position_embeddings": 131072,
"model_type": "gemma4_vision",
"num_attention_heads": 12,
"num_hidden_layers": 16,
"num_key_value_heads": 12,
"output_attentions": false,
"output_hidden_states": false,
"patch_size": 16,
"pooling_kernel_size": 3,
"position_embedding_size": 10240,
"problem_type": null,
"return_dict": true,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"rope_theta": 100.0,
"rope_type": "default"
},
"standardize": false,
"use_clipped_linears": true
},
"vision_soft_tokens_per_image": 280
}

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

View file

@ -0,0 +1,75 @@
---
base_model: Qwen/Qwen3.5-0.8B
library_name: mlx
tags:
- mlx
- qwen3.5
- vision-language-model
- quantized
- 4bit
license: apache-2.0
---
# Qwen3.5-0.8B-MLX-4bit
This is a 4-bit quantized MLX version of [Qwen/Qwen3.5-0.8B](https://huggingface.co/Qwen/Qwen3.5-0.8B) for Apple Silicon.
## Model Details
- **Original Model:** [Qwen/Qwen3.5-0.8B](https://huggingface.co/Qwen/Qwen3.5-0.8B)
- **Quantization:** 4-bit (5.863 bits per weight)
- **Group Size:** 64
- **Format:** MLX SafeTensors
- **Framework:** [mlx-vlm](https://github.com/Blaizzy/mlx-vlm)
- **Disk Size:** ~622M
## Conversion Details
This model was converted using `mlx-vlm` from the [`pc/fix-qwen35-predicate`](https://github.com/Blaizzy/mlx-vlm/tree/pc/fix-qwen35-predicate) branch, which includes fixes for Qwen3.5 model support (proper handling of MoE gate layers, `shared_expert_gate`, and `A_log` casting).
**Conversion command:**
```bash
python3 -m mlx_vlm convert \
--hf-path "Qwen/Qwen3.5-0.8B" \
--mlx-path "./Qwen3.5-0.8B-MLX-4bit" \
-q --q-bits 4 --q-group-size 64
```
## Important Note
A better, more optimized conversion may be available from **@Prince** ([@Blaizzy](https://huggingface.co/Blaizzy)) in the MLX VLM community. Check the [mlx-community](https://huggingface.co/mlx-community) organization for updated versions as official Qwen3.5 support is merged into the main `mlx-vlm` branch.
## Related Models
- **bf16 (full precision):** [mlx-community/Qwen3.5-0.8B-MLX-bf16](https://huggingface.co/mlx-community/Qwen3.5-0.8B-MLX-bf16)
- **8-bit quantized:** [mlx-community/Qwen3.5-0.8B-MLX-8bit](https://huggingface.co/mlx-community/Qwen3.5-0.8B-MLX-8bit)
- **Original:** [Qwen/Qwen3.5-0.8B](https://huggingface.co/Qwen/Qwen3.5-0.8B)
## Usage
```python
from mlx_vlm import load, generate
model, processor = load("mlx-community/Qwen3.5-0.8B-MLX-4bit")
output = generate(
model,
processor,
prompt="Describe this image.",
image="path/to/image.jpg",
max_tokens=512
)
print(output)
```
**CLI:**
```bash
python3 -m mlx_vlm.generate \
--model mlx-community/Qwen3.5-0.8B-MLX-4bit \
--image path/to/image.jpg \
--prompt "Describe this image."
```
## License
This model inherits the [Apache 2.0 license](https://huggingface.co/Qwen/Qwen3.5-0.8B) from the original Qwen model.

View file

@ -0,0 +1,154 @@
{%- set image_count = namespace(value=0) %}
{%- set video_count = namespace(value=0) %}
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
{%- if content is string %}
{{- content }}
{%- elif content is iterable and content is not mapping %}
{%- for item in content %}
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain images.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set image_count.value = image_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Picture ' ~ image_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
{%- elif 'video' in item or item.type == 'video' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain videos.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set video_count.value = video_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Video ' ~ video_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
{%- elif 'text' in item %}
{{- item.text }}
{%- else %}
{{- raise_exception('Unexpected item type in content.') }}
{%- endif %}
{%- endfor %}
{%- elif content is none or content is undefined %}
{{- '' }}
{%- else %}
{{- raise_exception('Unexpected content type.') }}
{%- endif %}
{%- endmacro %}
{%- if not messages %}
{{- raise_exception('No messages provided.') }}
{%- endif %}
{%- if tools and tools is iterable and tools is not mapping %}
{{- '<|im_start|>system\n' }}
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>" }}
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{%- if content %}
{{- '\n\n' + content }}
{%- endif %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- else %}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
{%- for message in messages[::-1] %}
{%- set index = (messages|length - 1) - loop.index0 %}
{%- if ns.multi_step_tool and message.role == "user" %}
{%- set content = render_content(message.content, false)|trim %}
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
{%- set ns.multi_step_tool = false %}
{%- set ns.last_query_index = index %}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if ns.multi_step_tool %}
{{- raise_exception('No user query found in messages.') }}
{%- endif %}
{%- for message in messages %}
{%- set content = render_content(message.content, true)|trim %}
{%- if message.role == "system" %}
{%- if not loop.first %}
{{- raise_exception('System message must be at the beginning.') }}
{%- endif %}
{%- elif message.role == "user" %}
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{%- set reasoning_content = '' %}
{%- if message.reasoning_content is string %}
{%- set reasoning_content = message.reasoning_content %}
{%- else %}
{%- if '</think>' in content %}
{%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
{%- set content = content.split('</think>')[-1].lstrip('\n') %}
{%- endif %}
{%- endif %}
{%- set reasoning_content = reasoning_content|trim %}
{%- if loop.index0 > ns.last_query_index %}
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
{%- else %}
{{- '<|im_start|>' + message.role + '\n' + content }}
{%- endif %}
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{%- if loop.first %}
{%- if content|trim %}
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- else %}
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- else %}
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- if tool_call.arguments is defined %}
{%- for args_name, args_value in tool_call.arguments|items %}
{{- '<parameter=' + args_name + '>\n' }}
{%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
{{- args_value }}
{{- '\n</parameter>\n' }}
{%- endfor %}
{%- endif %}
{{- '</function>\n</tool_call>' }}
{%- endfor %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if loop.previtem and loop.previtem.role != "tool" %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- content }}
{{- '\n</tool_response>' }}
{%- if not loop.last and loop.nextitem.role != "tool" %}
{{- '<|im_end|>\n' }}
{%- elif loop.last %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- else %}
{{- raise_exception('Unexpected message role.') }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is true %}
{{- '<think>\n' }}
{%- else %}
{{- '<think>\n\n</think>\n\n' }}
{%- endif %}
{%- endif %}

View file

@ -0,0 +1,106 @@
{
"architectures": [
"Qwen3_5ForConditionalGeneration"
],
"image_token_id": 248056,
"model_type": "qwen3_5",
"quantization": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"quantization_config": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attn_output_gate": true,
"dtype": "bfloat16",
"eos_token_id": 248044,
"full_attention_interval": 4,
"head_dim": 256,
"hidden_act": "silu",
"hidden_size": 1024,
"initializer_range": 0.02,
"intermediate_size": 3584,
"layer_types": [
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention"
],
"linear_conv_kernel_dim": 4,
"linear_key_head_dim": 128,
"linear_num_key_heads": 16,
"linear_num_value_heads": 16,
"linear_value_head_dim": 128,
"max_position_embeddings": 262144,
"mlp_only_layers": [],
"model_type": "qwen3_5_text",
"mtp_num_hidden_layers": 1,
"mtp_use_dedicated_embeddings": false,
"num_attention_heads": 8,
"num_hidden_layers": 24,
"num_key_value_heads": 2,
"rms_norm_eps": 1e-06,
"tie_word_embeddings": true,
"use_cache": true,
"vocab_size": 248320,
"mamba_ssm_dtype": "float32",
"rope_parameters": {
"mrope_interleaved": true,
"mrope_section": [
11,
11,
10
],
"rope_type": "default",
"rope_theta": 10000000,
"partial_rotary_factor": 0.25
}
},
"tie_word_embeddings": true,
"transformers_version": "4.57.0.dev0",
"video_token_id": 248057,
"vision_config": {
"deepstack_visual_indexes": [],
"depth": 12,
"hidden_act": "gelu_pytorch_tanh",
"hidden_size": 768,
"in_channels": 3,
"initializer_range": 0.02,
"intermediate_size": 3072,
"model_type": "qwen3_5",
"num_heads": 12,
"num_position_embeddings": 2304,
"out_hidden_size": 1024,
"patch_size": 16,
"spatial_merge_size": 2,
"temporal_patch_size": 2
},
"vision_end_token_id": 248054,
"vision_start_token_id": 248053
}

Binary file not shown.

View file

@ -0,0 +1,854 @@
{
"metadata": {
"total_size": 625124032
},
"weight_map": {
"language_model.model.embed_tokens.biases": "model.safetensors",
"language_model.model.embed_tokens.scales": "model.safetensors",
"language_model.model.embed_tokens.weight": "model.safetensors",
"language_model.model.layers.0.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.0.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.0.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.1.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.1.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.1.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.10.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.10.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.10.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.11.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.12.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.12.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.12.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.13.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.13.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.13.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.14.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.14.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.14.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.15.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.16.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.16.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.16.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.17.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.17.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.17.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.18.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.18.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.18.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.19.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.2.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.2.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.2.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.20.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.20.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.20.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.21.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.21.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.21.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.22.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.22.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.22.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.23.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.3.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.3.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.4.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.4.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.4.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.5.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.5.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.5.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.6.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.6.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.6.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.7.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.8.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.8.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.8.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.9.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.9.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.9.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.norm.weight": "model.safetensors",
"vision_tower.blocks.0.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.0.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.0.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.0.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.0.norm1.bias": "model.safetensors",
"vision_tower.blocks.0.norm1.weight": "model.safetensors",
"vision_tower.blocks.0.norm2.bias": "model.safetensors",
"vision_tower.blocks.0.norm2.weight": "model.safetensors",
"vision_tower.blocks.1.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.1.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.1.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.1.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.1.norm1.bias": "model.safetensors",
"vision_tower.blocks.1.norm1.weight": "model.safetensors",
"vision_tower.blocks.1.norm2.bias": "model.safetensors",
"vision_tower.blocks.1.norm2.weight": "model.safetensors",
"vision_tower.blocks.10.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.10.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.10.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.10.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.10.norm1.bias": "model.safetensors",
"vision_tower.blocks.10.norm1.weight": "model.safetensors",
"vision_tower.blocks.10.norm2.bias": "model.safetensors",
"vision_tower.blocks.10.norm2.weight": "model.safetensors",
"vision_tower.blocks.11.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.11.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.11.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.11.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.11.norm1.bias": "model.safetensors",
"vision_tower.blocks.11.norm1.weight": "model.safetensors",
"vision_tower.blocks.11.norm2.bias": "model.safetensors",
"vision_tower.blocks.11.norm2.weight": "model.safetensors",
"vision_tower.blocks.2.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.2.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.2.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.2.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.2.norm1.bias": "model.safetensors",
"vision_tower.blocks.2.norm1.weight": "model.safetensors",
"vision_tower.blocks.2.norm2.bias": "model.safetensors",
"vision_tower.blocks.2.norm2.weight": "model.safetensors",
"vision_tower.blocks.3.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.3.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.3.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.3.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.3.norm1.bias": "model.safetensors",
"vision_tower.blocks.3.norm1.weight": "model.safetensors",
"vision_tower.blocks.3.norm2.bias": "model.safetensors",
"vision_tower.blocks.3.norm2.weight": "model.safetensors",
"vision_tower.blocks.4.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.4.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.4.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.4.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.4.norm1.bias": "model.safetensors",
"vision_tower.blocks.4.norm1.weight": "model.safetensors",
"vision_tower.blocks.4.norm2.bias": "model.safetensors",
"vision_tower.blocks.4.norm2.weight": "model.safetensors",
"vision_tower.blocks.5.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.5.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.5.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.5.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.5.norm1.bias": "model.safetensors",
"vision_tower.blocks.5.norm1.weight": "model.safetensors",
"vision_tower.blocks.5.norm2.bias": "model.safetensors",
"vision_tower.blocks.5.norm2.weight": "model.safetensors",
"vision_tower.blocks.6.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.6.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.6.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.6.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.6.norm1.bias": "model.safetensors",
"vision_tower.blocks.6.norm1.weight": "model.safetensors",
"vision_tower.blocks.6.norm2.bias": "model.safetensors",
"vision_tower.blocks.6.norm2.weight": "model.safetensors",
"vision_tower.blocks.7.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.7.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.7.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.7.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.7.norm1.bias": "model.safetensors",
"vision_tower.blocks.7.norm1.weight": "model.safetensors",
"vision_tower.blocks.7.norm2.bias": "model.safetensors",
"vision_tower.blocks.7.norm2.weight": "model.safetensors",
"vision_tower.blocks.8.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.8.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.8.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.8.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.8.norm1.bias": "model.safetensors",
"vision_tower.blocks.8.norm1.weight": "model.safetensors",
"vision_tower.blocks.8.norm2.bias": "model.safetensors",
"vision_tower.blocks.8.norm2.weight": "model.safetensors",
"vision_tower.blocks.9.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.9.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.9.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.9.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.9.norm1.bias": "model.safetensors",
"vision_tower.blocks.9.norm1.weight": "model.safetensors",
"vision_tower.blocks.9.norm2.bias": "model.safetensors",
"vision_tower.blocks.9.norm2.weight": "model.safetensors",
"vision_tower.merger.linear_fc1.bias": "model.safetensors",
"vision_tower.merger.linear_fc1.weight": "model.safetensors",
"vision_tower.merger.linear_fc2.bias": "model.safetensors",
"vision_tower.merger.linear_fc2.weight": "model.safetensors",
"vision_tower.merger.norm.bias": "model.safetensors",
"vision_tower.merger.norm.weight": "model.safetensors",
"vision_tower.patch_embed.proj.bias": "model.safetensors",
"vision_tower.patch_embed.proj.weight": "model.safetensors",
"vision_tower.pos_embed.weight": "model.safetensors"
}
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"image_processor_type": "Qwen2VLImageProcessorFast"
}

View file

@ -0,0 +1,63 @@
{
"image_processor": {
"data_format": "channels_first",
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"image_mean": [
0.5,
0.5,
0.5
],
"image_processor_type": "Qwen2VLImageProcessorFast",
"image_std": [
0.5,
0.5,
0.5
],
"merge_size": 2,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"temporal_patch_size": 2
},
"processor_class": "Qwen3VLProcessor",
"video_processor": {
"data_format": "channels_first",
"default_to_square": true,
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"do_sample_frames": true,
"fps": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"max_frames": 768,
"merge_size": 2,
"min_frames": 4,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"return_metadata": false,
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"temporal_patch_size": 2,
"video_processor_type": "Qwen3VLVideoProcessor"
}
}

BIN
chat/mlx/mlx-community/Qwen3.5-0.8B-MLX-4bit/tokenizer.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,32 @@
{
"add_prefix_space": false,
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"image_token": "<|image_pad|>",
"is_local": true,
"model_max_length": 262144,
"model_specific_special_tokens": {
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"image_token": "<|image_pad|>",
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
},
"pad_token": "<|endoftext|>",
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
"processor_class": "Qwen3VLProcessor",
"split_special_tokens": false,
"tokenizer_class": "TokenizersBackend",
"unk_token": null,
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"video_processor_type": "Qwen3VLVideoProcessor"
}

BIN
chat/mlx/mlx-community/Qwen3.5-0.8B-MLX-4bit/vocab.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

View file

@ -0,0 +1,75 @@
---
base_model: Qwen/Qwen3.5-2B
library_name: mlx
tags:
- mlx
- qwen3.5
- vision-language-model
- quantized
- 4bit
license: apache-2.0
---
# Qwen3.5-2B-MLX-4bit
This is a 4-bit quantized MLX version of [Qwen/Qwen3.5-2B](https://huggingface.co/Qwen/Qwen3.5-2B) for Apple Silicon.
## Model Details
- **Original Model:** [Qwen/Qwen3.5-2B](https://huggingface.co/Qwen/Qwen3.5-2B)
- **Quantization:** 4-bit (6.225 bits per weight)
- **Group Size:** 64
- **Format:** MLX SafeTensors
- **Framework:** [mlx-vlm](https://github.com/Blaizzy/mlx-vlm)
- **Disk Size:** ~1.6G
## Conversion Details
This model was converted using `mlx-vlm` from the [`pc/fix-qwen35-predicate`](https://github.com/Blaizzy/mlx-vlm/tree/pc/fix-qwen35-predicate) branch, which includes fixes for Qwen3.5 model support (proper handling of MoE gate layers, `shared_expert_gate`, and `A_log` casting).
**Conversion command:**
```bash
python3 -m mlx_vlm convert \
--hf-path "Qwen/Qwen3.5-2B" \
--mlx-path "./Qwen3.5-2B-MLX-4bit" \
-q --q-bits 4 --q-group-size 64
```
## Important Note
A better, more optimized conversion may be available from **@Prince** ([@Blaizzy](https://huggingface.co/Blaizzy)) in the MLX VLM community. Check the [mlx-community](https://huggingface.co/mlx-community) organization for updated versions as official Qwen3.5 support is merged into the main `mlx-vlm` branch.
## Related Models
- **bf16 (full precision):** [mlx-community/Qwen3.5-2B-MLX-bf16](https://huggingface.co/mlx-community/Qwen3.5-2B-MLX-bf16)
- **8-bit quantized:** [mlx-community/Qwen3.5-2B-MLX-8bit](https://huggingface.co/mlx-community/Qwen3.5-2B-MLX-8bit)
- **Original:** [Qwen/Qwen3.5-2B](https://huggingface.co/Qwen/Qwen3.5-2B)
## Usage
```python
from mlx_vlm import load, generate
model, processor = load("mlx-community/Qwen3.5-2B-MLX-4bit")
output = generate(
model,
processor,
prompt="Describe this image.",
image="path/to/image.jpg",
max_tokens=512
)
print(output)
```
**CLI:**
```bash
python3 -m mlx_vlm.generate \
--model mlx-community/Qwen3.5-2B-MLX-4bit \
--image path/to/image.jpg \
--prompt "Describe this image."
```
## License
This model inherits the [Apache 2.0 license](https://huggingface.co/Qwen/Qwen3.5-2B) from the original Qwen model.

View file

@ -0,0 +1,154 @@
{%- set image_count = namespace(value=0) %}
{%- set video_count = namespace(value=0) %}
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
{%- if content is string %}
{{- content }}
{%- elif content is iterable and content is not mapping %}
{%- for item in content %}
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain images.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set image_count.value = image_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Picture ' ~ image_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
{%- elif 'video' in item or item.type == 'video' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain videos.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set video_count.value = video_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Video ' ~ video_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
{%- elif 'text' in item %}
{{- item.text }}
{%- else %}
{{- raise_exception('Unexpected item type in content.') }}
{%- endif %}
{%- endfor %}
{%- elif content is none or content is undefined %}
{{- '' }}
{%- else %}
{{- raise_exception('Unexpected content type.') }}
{%- endif %}
{%- endmacro %}
{%- if not messages %}
{{- raise_exception('No messages provided.') }}
{%- endif %}
{%- if tools and tools is iterable and tools is not mapping %}
{{- '<|im_start|>system\n' }}
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>" }}
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{%- if content %}
{{- '\n\n' + content }}
{%- endif %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- else %}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
{%- for message in messages[::-1] %}
{%- set index = (messages|length - 1) - loop.index0 %}
{%- if ns.multi_step_tool and message.role == "user" %}
{%- set content = render_content(message.content, false)|trim %}
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
{%- set ns.multi_step_tool = false %}
{%- set ns.last_query_index = index %}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if ns.multi_step_tool %}
{{- raise_exception('No user query found in messages.') }}
{%- endif %}
{%- for message in messages %}
{%- set content = render_content(message.content, true)|trim %}
{%- if message.role == "system" %}
{%- if not loop.first %}
{{- raise_exception('System message must be at the beginning.') }}
{%- endif %}
{%- elif message.role == "user" %}
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{%- set reasoning_content = '' %}
{%- if message.reasoning_content is string %}
{%- set reasoning_content = message.reasoning_content %}
{%- else %}
{%- if '</think>' in content %}
{%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
{%- set content = content.split('</think>')[-1].lstrip('\n') %}
{%- endif %}
{%- endif %}
{%- set reasoning_content = reasoning_content|trim %}
{%- if loop.index0 > ns.last_query_index %}
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
{%- else %}
{{- '<|im_start|>' + message.role + '\n' + content }}
{%- endif %}
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{%- if loop.first %}
{%- if content|trim %}
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- else %}
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- else %}
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- if tool_call.arguments is defined %}
{%- for args_name, args_value in tool_call.arguments|items %}
{{- '<parameter=' + args_name + '>\n' }}
{%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
{{- args_value }}
{{- '\n</parameter>\n' }}
{%- endfor %}
{%- endif %}
{{- '</function>\n</tool_call>' }}
{%- endfor %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if loop.previtem and loop.previtem.role != "tool" %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- content }}
{{- '\n</tool_response>' }}
{%- if not loop.last and loop.nextitem.role != "tool" %}
{{- '<|im_end|>\n' }}
{%- elif loop.last %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- else %}
{{- raise_exception('Unexpected message role.') }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is true %}
{{- '<think>\n' }}
{%- else %}
{{- '<think>\n\n</think>\n\n' }}
{%- endif %}
{%- endif %}

View file

@ -0,0 +1,106 @@
{
"architectures": [
"Qwen3_5ForConditionalGeneration"
],
"image_token_id": 248056,
"model_type": "qwen3_5",
"quantization": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"quantization_config": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attn_output_gate": true,
"dtype": "bfloat16",
"eos_token_id": 248044,
"full_attention_interval": 4,
"head_dim": 256,
"hidden_act": "silu",
"hidden_size": 2048,
"initializer_range": 0.02,
"intermediate_size": 6144,
"layer_types": [
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention"
],
"linear_conv_kernel_dim": 4,
"linear_key_head_dim": 128,
"linear_num_key_heads": 16,
"linear_num_value_heads": 16,
"linear_value_head_dim": 128,
"max_position_embeddings": 262144,
"mlp_only_layers": [],
"model_type": "qwen3_5_text",
"mtp_num_hidden_layers": 1,
"mtp_use_dedicated_embeddings": false,
"num_attention_heads": 8,
"num_hidden_layers": 24,
"num_key_value_heads": 2,
"rms_norm_eps": 1e-06,
"tie_word_embeddings": true,
"use_cache": true,
"vocab_size": 248320,
"mamba_ssm_dtype": "float32",
"rope_parameters": {
"mrope_interleaved": true,
"mrope_section": [
11,
11,
10
],
"rope_type": "default",
"rope_theta": 10000000,
"partial_rotary_factor": 0.25
}
},
"tie_word_embeddings": true,
"transformers_version": "4.57.0.dev0",
"video_token_id": 248057,
"vision_config": {
"deepstack_visual_indexes": [],
"depth": 24,
"hidden_act": "gelu_pytorch_tanh",
"hidden_size": 1024,
"in_channels": 3,
"initializer_range": 0.02,
"intermediate_size": 4096,
"model_type": "qwen3_5",
"num_heads": 16,
"num_position_embeddings": 2304,
"out_hidden_size": 2048,
"patch_size": 16,
"spatial_merge_size": 2,
"temporal_patch_size": 2
},
"vision_end_token_id": 248054,
"vision_start_token_id": 248053
}

BIN
chat/mlx/mlx-community/Qwen3.5-2B-MLX-4bit/model.safetensors (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,998 @@
{
"metadata": {
"total_size": 1722149056
},
"weight_map": {
"language_model.model.embed_tokens.biases": "model.safetensors",
"language_model.model.embed_tokens.scales": "model.safetensors",
"language_model.model.embed_tokens.weight": "model.safetensors",
"language_model.model.layers.0.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.0.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.0.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.0.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.0.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.1.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.1.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.1.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.1.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.1.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.10.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.10.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.10.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.10.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.10.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.11.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.11.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.11.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.12.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.12.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.12.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.12.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.12.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.13.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.13.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.13.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.13.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.13.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.14.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.14.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.14.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.14.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.14.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.15.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.15.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.15.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.16.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.16.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.16.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.16.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.16.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.17.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.17.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.17.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.17.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.17.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.18.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.18.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.18.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.18.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.18.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.19.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.19.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.19.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.2.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.2.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.2.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.2.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.2.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.20.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.20.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.20.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.20.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.20.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.21.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.21.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.21.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.21.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.21.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.22.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.22.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.22.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.22.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.22.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.23.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.23.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.23.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.3.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.3.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.3.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.3.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.4.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.4.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.4.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.4.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.4.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.5.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.5.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.5.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.5.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.5.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.6.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.6.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.6.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.6.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.6.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.7.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.7.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.k_norm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.k_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.o_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.q_norm.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.q_proj.weight": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.biases": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.scales": "model.safetensors",
"language_model.model.layers.7.self_attn.v_proj.weight": "model.safetensors",
"language_model.model.layers.8.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.8.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.8.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.8.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.8.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.layers.9.input_layernorm.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.A_log": "model.safetensors",
"language_model.model.layers.9.linear_attn.conv1d.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.dt_bias": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_a.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_b.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_qkv.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.in_proj_z.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.norm.weight": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.biases": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.scales": "model.safetensors",
"language_model.model.layers.9.linear_attn.out_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.down_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.gate_proj.weight": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.biases": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.scales": "model.safetensors",
"language_model.model.layers.9.mlp.up_proj.weight": "model.safetensors",
"language_model.model.layers.9.post_attention_layernorm.weight": "model.safetensors",
"language_model.model.norm.weight": "model.safetensors",
"vision_tower.blocks.0.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.0.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.0.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.0.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.0.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.0.norm1.bias": "model.safetensors",
"vision_tower.blocks.0.norm1.weight": "model.safetensors",
"vision_tower.blocks.0.norm2.bias": "model.safetensors",
"vision_tower.blocks.0.norm2.weight": "model.safetensors",
"vision_tower.blocks.1.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.1.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.1.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.1.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.1.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.1.norm1.bias": "model.safetensors",
"vision_tower.blocks.1.norm1.weight": "model.safetensors",
"vision_tower.blocks.1.norm2.bias": "model.safetensors",
"vision_tower.blocks.1.norm2.weight": "model.safetensors",
"vision_tower.blocks.10.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.10.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.10.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.10.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.10.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.10.norm1.bias": "model.safetensors",
"vision_tower.blocks.10.norm1.weight": "model.safetensors",
"vision_tower.blocks.10.norm2.bias": "model.safetensors",
"vision_tower.blocks.10.norm2.weight": "model.safetensors",
"vision_tower.blocks.11.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.11.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.11.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.11.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.11.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.11.norm1.bias": "model.safetensors",
"vision_tower.blocks.11.norm1.weight": "model.safetensors",
"vision_tower.blocks.11.norm2.bias": "model.safetensors",
"vision_tower.blocks.11.norm2.weight": "model.safetensors",
"vision_tower.blocks.12.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.12.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.12.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.12.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.12.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.12.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.12.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.12.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.12.norm1.bias": "model.safetensors",
"vision_tower.blocks.12.norm1.weight": "model.safetensors",
"vision_tower.blocks.12.norm2.bias": "model.safetensors",
"vision_tower.blocks.12.norm2.weight": "model.safetensors",
"vision_tower.blocks.13.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.13.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.13.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.13.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.13.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.13.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.13.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.13.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.13.norm1.bias": "model.safetensors",
"vision_tower.blocks.13.norm1.weight": "model.safetensors",
"vision_tower.blocks.13.norm2.bias": "model.safetensors",
"vision_tower.blocks.13.norm2.weight": "model.safetensors",
"vision_tower.blocks.14.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.14.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.14.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.14.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.14.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.14.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.14.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.14.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.14.norm1.bias": "model.safetensors",
"vision_tower.blocks.14.norm1.weight": "model.safetensors",
"vision_tower.blocks.14.norm2.bias": "model.safetensors",
"vision_tower.blocks.14.norm2.weight": "model.safetensors",
"vision_tower.blocks.15.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.15.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.15.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.15.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.15.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.15.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.15.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.15.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.15.norm1.bias": "model.safetensors",
"vision_tower.blocks.15.norm1.weight": "model.safetensors",
"vision_tower.blocks.15.norm2.bias": "model.safetensors",
"vision_tower.blocks.15.norm2.weight": "model.safetensors",
"vision_tower.blocks.16.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.16.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.16.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.16.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.16.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.16.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.16.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.16.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.16.norm1.bias": "model.safetensors",
"vision_tower.blocks.16.norm1.weight": "model.safetensors",
"vision_tower.blocks.16.norm2.bias": "model.safetensors",
"vision_tower.blocks.16.norm2.weight": "model.safetensors",
"vision_tower.blocks.17.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.17.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.17.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.17.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.17.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.17.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.17.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.17.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.17.norm1.bias": "model.safetensors",
"vision_tower.blocks.17.norm1.weight": "model.safetensors",
"vision_tower.blocks.17.norm2.bias": "model.safetensors",
"vision_tower.blocks.17.norm2.weight": "model.safetensors",
"vision_tower.blocks.18.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.18.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.18.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.18.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.18.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.18.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.18.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.18.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.18.norm1.bias": "model.safetensors",
"vision_tower.blocks.18.norm1.weight": "model.safetensors",
"vision_tower.blocks.18.norm2.bias": "model.safetensors",
"vision_tower.blocks.18.norm2.weight": "model.safetensors",
"vision_tower.blocks.19.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.19.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.19.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.19.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.19.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.19.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.19.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.19.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.19.norm1.bias": "model.safetensors",
"vision_tower.blocks.19.norm1.weight": "model.safetensors",
"vision_tower.blocks.19.norm2.bias": "model.safetensors",
"vision_tower.blocks.19.norm2.weight": "model.safetensors",
"vision_tower.blocks.2.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.2.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.2.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.2.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.2.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.2.norm1.bias": "model.safetensors",
"vision_tower.blocks.2.norm1.weight": "model.safetensors",
"vision_tower.blocks.2.norm2.bias": "model.safetensors",
"vision_tower.blocks.2.norm2.weight": "model.safetensors",
"vision_tower.blocks.20.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.20.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.20.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.20.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.20.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.20.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.20.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.20.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.20.norm1.bias": "model.safetensors",
"vision_tower.blocks.20.norm1.weight": "model.safetensors",
"vision_tower.blocks.20.norm2.bias": "model.safetensors",
"vision_tower.blocks.20.norm2.weight": "model.safetensors",
"vision_tower.blocks.21.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.21.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.21.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.21.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.21.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.21.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.21.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.21.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.21.norm1.bias": "model.safetensors",
"vision_tower.blocks.21.norm1.weight": "model.safetensors",
"vision_tower.blocks.21.norm2.bias": "model.safetensors",
"vision_tower.blocks.21.norm2.weight": "model.safetensors",
"vision_tower.blocks.22.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.22.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.22.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.22.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.22.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.22.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.22.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.22.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.22.norm1.bias": "model.safetensors",
"vision_tower.blocks.22.norm1.weight": "model.safetensors",
"vision_tower.blocks.22.norm2.bias": "model.safetensors",
"vision_tower.blocks.22.norm2.weight": "model.safetensors",
"vision_tower.blocks.23.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.23.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.23.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.23.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.23.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.23.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.23.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.23.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.23.norm1.bias": "model.safetensors",
"vision_tower.blocks.23.norm1.weight": "model.safetensors",
"vision_tower.blocks.23.norm2.bias": "model.safetensors",
"vision_tower.blocks.23.norm2.weight": "model.safetensors",
"vision_tower.blocks.3.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.3.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.3.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.3.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.3.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.3.norm1.bias": "model.safetensors",
"vision_tower.blocks.3.norm1.weight": "model.safetensors",
"vision_tower.blocks.3.norm2.bias": "model.safetensors",
"vision_tower.blocks.3.norm2.weight": "model.safetensors",
"vision_tower.blocks.4.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.4.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.4.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.4.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.4.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.4.norm1.bias": "model.safetensors",
"vision_tower.blocks.4.norm1.weight": "model.safetensors",
"vision_tower.blocks.4.norm2.bias": "model.safetensors",
"vision_tower.blocks.4.norm2.weight": "model.safetensors",
"vision_tower.blocks.5.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.5.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.5.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.5.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.5.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.5.norm1.bias": "model.safetensors",
"vision_tower.blocks.5.norm1.weight": "model.safetensors",
"vision_tower.blocks.5.norm2.bias": "model.safetensors",
"vision_tower.blocks.5.norm2.weight": "model.safetensors",
"vision_tower.blocks.6.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.6.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.6.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.6.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.6.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.6.norm1.bias": "model.safetensors",
"vision_tower.blocks.6.norm1.weight": "model.safetensors",
"vision_tower.blocks.6.norm2.bias": "model.safetensors",
"vision_tower.blocks.6.norm2.weight": "model.safetensors",
"vision_tower.blocks.7.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.7.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.7.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.7.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.7.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.7.norm1.bias": "model.safetensors",
"vision_tower.blocks.7.norm1.weight": "model.safetensors",
"vision_tower.blocks.7.norm2.bias": "model.safetensors",
"vision_tower.blocks.7.norm2.weight": "model.safetensors",
"vision_tower.blocks.8.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.8.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.8.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.8.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.8.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.8.norm1.bias": "model.safetensors",
"vision_tower.blocks.8.norm1.weight": "model.safetensors",
"vision_tower.blocks.8.norm2.bias": "model.safetensors",
"vision_tower.blocks.8.norm2.weight": "model.safetensors",
"vision_tower.blocks.9.attn.proj.bias": "model.safetensors",
"vision_tower.blocks.9.attn.proj.weight": "model.safetensors",
"vision_tower.blocks.9.attn.qkv.bias": "model.safetensors",
"vision_tower.blocks.9.attn.qkv.weight": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc1.bias": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc1.weight": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc2.bias": "model.safetensors",
"vision_tower.blocks.9.mlp.linear_fc2.weight": "model.safetensors",
"vision_tower.blocks.9.norm1.bias": "model.safetensors",
"vision_tower.blocks.9.norm1.weight": "model.safetensors",
"vision_tower.blocks.9.norm2.bias": "model.safetensors",
"vision_tower.blocks.9.norm2.weight": "model.safetensors",
"vision_tower.merger.linear_fc1.bias": "model.safetensors",
"vision_tower.merger.linear_fc1.weight": "model.safetensors",
"vision_tower.merger.linear_fc2.bias": "model.safetensors",
"vision_tower.merger.linear_fc2.weight": "model.safetensors",
"vision_tower.merger.norm.bias": "model.safetensors",
"vision_tower.merger.norm.weight": "model.safetensors",
"vision_tower.patch_embed.proj.bias": "model.safetensors",
"vision_tower.patch_embed.proj.weight": "model.safetensors",
"vision_tower.pos_embed.weight": "model.safetensors"
}
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"image_processor_type": "Qwen2VLImageProcessorFast"
}

View file

@ -0,0 +1,63 @@
{
"image_processor": {
"data_format": "channels_first",
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"image_mean": [
0.5,
0.5,
0.5
],
"image_processor_type": "Qwen2VLImageProcessorFast",
"image_std": [
0.5,
0.5,
0.5
],
"merge_size": 2,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"temporal_patch_size": 2
},
"processor_class": "Qwen3VLProcessor",
"video_processor": {
"data_format": "channels_first",
"default_to_square": true,
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"do_sample_frames": true,
"fps": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"max_frames": 768,
"merge_size": 2,
"min_frames": 4,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"return_metadata": false,
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"temporal_patch_size": 2,
"video_processor_type": "Qwen3VLVideoProcessor"
}
}

BIN
chat/mlx/mlx-community/Qwen3.5-2B-MLX-4bit/tokenizer.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,32 @@
{
"add_prefix_space": false,
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"image_token": "<|image_pad|>",
"is_local": true,
"model_max_length": 262144,
"model_specific_special_tokens": {
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"image_token": "<|image_pad|>",
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
},
"pad_token": "<|endoftext|>",
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
"processor_class": "Qwen3VLProcessor",
"split_special_tokens": false,
"tokenizer_class": "TokenizersBackend",
"unk_token": null,
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"video_processor_type": "Qwen3VLVideoProcessor"
}

BIN
chat/mlx/mlx-community/Qwen3.5-2B-MLX-4bit/vocab.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

View file

@ -0,0 +1,75 @@
---
base_model: Qwen/Qwen3.5-4B
library_name: mlx
tags:
- mlx
- qwen3.5
- vision-language-model
- quantized
- 4bit
license: apache-2.0
---
# Qwen3.5-4B-MLX-4bit
This is a 4-bit quantized MLX version of [Qwen/Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B) for Apple Silicon.
## Model Details
- **Original Model:** [Qwen/Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B)
- **Quantization:** 4-bit (5.347 bits per weight)
- **Group Size:** 64
- **Format:** MLX SafeTensors
- **Framework:** [mlx-vlm](https://github.com/Blaizzy/mlx-vlm)
- **Disk Size:** ~2.9G
## Conversion Details
This model was converted using `mlx-vlm` from the [`pc/fix-qwen35-predicate`](https://github.com/Blaizzy/mlx-vlm/tree/pc/fix-qwen35-predicate) branch, which includes fixes for Qwen3.5 model support (proper handling of MoE gate layers, `shared_expert_gate`, and `A_log` casting).
**Conversion command:**
```bash
python3 -m mlx_vlm convert \
--hf-path "Qwen/Qwen3.5-4B" \
--mlx-path "./Qwen3.5-4B-MLX-4bit" \
-q --q-bits 4 --q-group-size 64
```
## Important Note
A better, more optimized conversion may be available from **@Prince** ([@Blaizzy](https://huggingface.co/Blaizzy)) in the MLX VLM community. Check the [mlx-community](https://huggingface.co/mlx-community) organization for updated versions as official Qwen3.5 support is merged into the main `mlx-vlm` branch.
## Related Models
- **bf16 (full precision):** [mlx-community/Qwen3.5-4B-MLX-bf16](https://huggingface.co/mlx-community/Qwen3.5-4B-MLX-bf16)
- **8-bit quantized:** [mlx-community/Qwen3.5-4B-MLX-8bit](https://huggingface.co/mlx-community/Qwen3.5-4B-MLX-8bit)
- **Original:** [Qwen/Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B)
## Usage
```python
from mlx_vlm import load, generate
model, processor = load("mlx-community/Qwen3.5-4B-MLX-4bit")
output = generate(
model,
processor,
prompt="Describe this image.",
image="path/to/image.jpg",
max_tokens=512
)
print(output)
```
**CLI:**
```bash
python3 -m mlx_vlm.generate \
--model mlx-community/Qwen3.5-4B-MLX-4bit \
--image path/to/image.jpg \
--prompt "Describe this image."
```
## License
This model inherits the [Apache 2.0 license](https://huggingface.co/Qwen/Qwen3.5-4B) from the original Qwen model.

View file

@ -0,0 +1,154 @@
{%- set image_count = namespace(value=0) %}
{%- set video_count = namespace(value=0) %}
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
{%- if content is string %}
{{- content }}
{%- elif content is iterable and content is not mapping %}
{%- for item in content %}
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain images.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set image_count.value = image_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Picture ' ~ image_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
{%- elif 'video' in item or item.type == 'video' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain videos.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set video_count.value = video_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Video ' ~ video_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
{%- elif 'text' in item %}
{{- item.text }}
{%- else %}
{{- raise_exception('Unexpected item type in content.') }}
{%- endif %}
{%- endfor %}
{%- elif content is none or content is undefined %}
{{- '' }}
{%- else %}
{{- raise_exception('Unexpected content type.') }}
{%- endif %}
{%- endmacro %}
{%- if not messages %}
{{- raise_exception('No messages provided.') }}
{%- endif %}
{%- if tools and tools is iterable and tools is not mapping %}
{{- '<|im_start|>system\n' }}
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>" }}
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{%- if content %}
{{- '\n\n' + content }}
{%- endif %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- else %}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
{%- for message in messages[::-1] %}
{%- set index = (messages|length - 1) - loop.index0 %}
{%- if ns.multi_step_tool and message.role == "user" %}
{%- set content = render_content(message.content, false)|trim %}
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
{%- set ns.multi_step_tool = false %}
{%- set ns.last_query_index = index %}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if ns.multi_step_tool %}
{{- raise_exception('No user query found in messages.') }}
{%- endif %}
{%- for message in messages %}
{%- set content = render_content(message.content, true)|trim %}
{%- if message.role == "system" %}
{%- if not loop.first %}
{{- raise_exception('System message must be at the beginning.') }}
{%- endif %}
{%- elif message.role == "user" %}
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{%- set reasoning_content = '' %}
{%- if message.reasoning_content is string %}
{%- set reasoning_content = message.reasoning_content %}
{%- else %}
{%- if '</think>' in content %}
{%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
{%- set content = content.split('</think>')[-1].lstrip('\n') %}
{%- endif %}
{%- endif %}
{%- set reasoning_content = reasoning_content|trim %}
{%- if loop.index0 > ns.last_query_index %}
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
{%- else %}
{{- '<|im_start|>' + message.role + '\n' + content }}
{%- endif %}
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{%- if loop.first %}
{%- if content|trim %}
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- else %}
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- else %}
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- if tool_call.arguments is defined %}
{%- for args_name, args_value in tool_call.arguments|items %}
{{- '<parameter=' + args_name + '>\n' }}
{%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
{{- args_value }}
{{- '\n</parameter>\n' }}
{%- endfor %}
{%- endif %}
{{- '</function>\n</tool_call>' }}
{%- endfor %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if loop.previtem and loop.previtem.role != "tool" %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- content }}
{{- '\n</tool_response>' }}
{%- if not loop.last and loop.nextitem.role != "tool" %}
{{- '<|im_end|>\n' }}
{%- elif loop.last %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- else %}
{{- raise_exception('Unexpected message role.') }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is false %}
{{- '<think>\n\n</think>\n\n' }}
{%- else %}
{{- '<think>\n' }}
{%- endif %}
{%- endif %}

View file

@ -0,0 +1,114 @@
{
"architectures": [
"Qwen3_5ForConditionalGeneration"
],
"image_token_id": 248056,
"model_type": "qwen3_5",
"quantization": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"quantization_config": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attn_output_gate": true,
"dtype": "bfloat16",
"eos_token_id": 248044,
"full_attention_interval": 4,
"head_dim": 256,
"hidden_act": "silu",
"hidden_size": 2560,
"initializer_range": 0.02,
"intermediate_size": 9216,
"layer_types": [
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention"
],
"linear_conv_kernel_dim": 4,
"linear_key_head_dim": 128,
"linear_num_key_heads": 16,
"linear_num_value_heads": 32,
"linear_value_head_dim": 128,
"max_position_embeddings": 262144,
"mlp_only_layers": [],
"model_type": "qwen3_5_text",
"mtp_num_hidden_layers": 1,
"mtp_use_dedicated_embeddings": false,
"num_attention_heads": 16,
"num_hidden_layers": 32,
"num_key_value_heads": 4,
"rms_norm_eps": 1e-06,
"tie_word_embeddings": true,
"use_cache": true,
"vocab_size": 248320,
"mamba_ssm_dtype": "float32",
"rope_parameters": {
"mrope_interleaved": true,
"mrope_section": [
11,
11,
10
],
"rope_type": "default",
"rope_theta": 10000000,
"partial_rotary_factor": 0.25
}
},
"tie_word_embeddings": true,
"transformers_version": "4.57.0.dev0",
"video_token_id": 248057,
"vision_config": {
"deepstack_visual_indexes": [],
"depth": 24,
"hidden_act": "gelu_pytorch_tanh",
"hidden_size": 1024,
"in_channels": 3,
"initializer_range": 0.02,
"intermediate_size": 4096,
"model_type": "qwen3_5",
"num_heads": 16,
"num_position_embeddings": 2304,
"out_hidden_size": 2560,
"patch_size": 16,
"spatial_merge_size": 2,
"temporal_patch_size": 2
},
"vision_end_token_id": 248054,
"vision_start_token_id": 248053
}

BIN
chat/mlx/mlx-community/Qwen3.5-4B-MLX-4bit/model.safetensors (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"image_processor_type": "Qwen2VLImageProcessorFast"
}

View file

@ -0,0 +1,63 @@
{
"image_processor": {
"data_format": "channels_first",
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"image_mean": [
0.5,
0.5,
0.5
],
"image_processor_type": "Qwen2VLImageProcessorFast",
"image_std": [
0.5,
0.5,
0.5
],
"merge_size": 2,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"temporal_patch_size": 2
},
"processor_class": "Qwen3VLProcessor",
"video_processor": {
"data_format": "channels_first",
"default_to_square": true,
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"do_sample_frames": true,
"fps": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"max_frames": 768,
"merge_size": 2,
"min_frames": 4,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"return_metadata": false,
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"temporal_patch_size": 2,
"video_processor_type": "Qwen3VLVideoProcessor"
}
}

BIN
chat/mlx/mlx-community/Qwen3.5-4B-MLX-4bit/tokenizer.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,32 @@
{
"add_prefix_space": false,
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"image_token": "<|image_pad|>",
"is_local": true,
"model_max_length": 262144,
"model_specific_special_tokens": {
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"image_token": "<|image_pad|>",
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
},
"pad_token": "<|endoftext|>",
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
"processor_class": "Qwen3VLProcessor",
"split_special_tokens": false,
"tokenizer_class": "TokenizersBackend",
"unk_token": null,
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"video_processor_type": "Qwen3VLVideoProcessor"
}

BIN
chat/mlx/mlx-community/Qwen3.5-4B-MLX-4bit/vocab.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

View file

@ -0,0 +1,76 @@
---
base_model: Qwen/Qwen3.5-9B
library_name: mlx
pipeline_tag: image-text-to-text
tags:
- mlx
- qwen3.5
- vision-language-model
- quantized
- 4bit
license: apache-2.0
---
# Qwen3.5-9B-MLX-4bit
This is a quantized MLX version of [Qwen/Qwen3.5-9B](https://huggingface.co/Qwen/Qwen3.5-9B) for Apple Silicon.
## Model Details
- **Original Model:** [Qwen/Qwen3.5-9B](https://huggingface.co/Qwen/Qwen3.5-9B)
- **Quantization:** 4-bit (~5.059 bits per weight)
- **Group Size:** 64
- **Format:** MLX SafeTensors
- **Framework:** [mlx-vlm](https://github.com/Blaizzy/mlx-vlm)
## Conversion Details
This model was converted using `mlx-vlm` with 4-bit quantization.
**Conversion command:**
```bash
python3 -m mlx_vlm convert \
--hf-path "Qwen/Qwen3.5-9B" \
--mlx-path "./mlx_models/Qwen3.5-9B-MLX-4bit" \
-q --q-bits 4 --q-group-size 64
```
## Important Note
A better, more optimized conversion may be available from **@Prince** ([@Blaizzy](https://huggingface.co/Blaizzy)) in the MLX VLM community. Check the [mlx-community](https://huggingface.co/mlx-community) organization for updated versions as official Qwen3.5 support is merged into the main `mlx-vlm` branch.
## Usage
```python
from mlx_vlm import load, generate
model, processor = load("mlx-community/Qwen3.5-9B-MLX-4bit")
output = generate(
model,
processor,
prompt="Describe this image in detail",
image="path/to/image.jpg",
max_tokens=200
)
print(output)
```
Or from the command line:
```bash
mlx_vlm generate \
--model mlx-community/Qwen3.5-9B-MLX-4bit \
--prompt "Describe this image" \
--image path/to/image.jpg \
--max-tokens 200
```
## Performance
- **Disk Size:** ~5.6 GB
- Runs efficiently on Apple Silicon Macs (M1/M2/M3/M4)
- Lower memory footprint compared to 8-bit quantization
## License
This model inherits the [Apache 2.0 license](https://huggingface.co/Qwen/Qwen3.5-9B/blob/main/LICENSE) from the original Qwen3.5-9B model.

View file

@ -0,0 +1,154 @@
{%- set image_count = namespace(value=0) %}
{%- set video_count = namespace(value=0) %}
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
{%- if content is string %}
{{- content }}
{%- elif content is iterable and content is not mapping %}
{%- for item in content %}
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain images.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set image_count.value = image_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Picture ' ~ image_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
{%- elif 'video' in item or item.type == 'video' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain videos.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set video_count.value = video_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Video ' ~ video_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
{%- elif 'text' in item %}
{{- item.text }}
{%- else %}
{{- raise_exception('Unexpected item type in content.') }}
{%- endif %}
{%- endfor %}
{%- elif content is none or content is undefined %}
{{- '' }}
{%- else %}
{{- raise_exception('Unexpected content type.') }}
{%- endif %}
{%- endmacro %}
{%- if not messages %}
{{- raise_exception('No messages provided.') }}
{%- endif %}
{%- if tools and tools is iterable and tools is not mapping %}
{{- '<|im_start|>system\n' }}
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>" }}
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{%- if content %}
{{- '\n\n' + content }}
{%- endif %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- else %}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
{%- for message in messages[::-1] %}
{%- set index = (messages|length - 1) - loop.index0 %}
{%- if ns.multi_step_tool and message.role == "user" %}
{%- set content = render_content(message.content, false)|trim %}
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
{%- set ns.multi_step_tool = false %}
{%- set ns.last_query_index = index %}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if ns.multi_step_tool %}
{{- raise_exception('No user query found in messages.') }}
{%- endif %}
{%- for message in messages %}
{%- set content = render_content(message.content, true)|trim %}
{%- if message.role == "system" %}
{%- if not loop.first %}
{{- raise_exception('System message must be at the beginning.') }}
{%- endif %}
{%- elif message.role == "user" %}
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{%- set reasoning_content = '' %}
{%- if message.reasoning_content is string %}
{%- set reasoning_content = message.reasoning_content %}
{%- else %}
{%- if '</think>' in content %}
{%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
{%- set content = content.split('</think>')[-1].lstrip('\n') %}
{%- endif %}
{%- endif %}
{%- set reasoning_content = reasoning_content|trim %}
{%- if loop.index0 > ns.last_query_index %}
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
{%- else %}
{{- '<|im_start|>' + message.role + '\n' + content }}
{%- endif %}
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{%- if loop.first %}
{%- if content|trim %}
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- else %}
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- else %}
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- if tool_call.arguments is defined %}
{%- for args_name, args_value in tool_call.arguments|items %}
{{- '<parameter=' + args_name + '>\n' }}
{%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}
{{- args_value }}
{{- '\n</parameter>\n' }}
{%- endfor %}
{%- endif %}
{{- '</function>\n</tool_call>' }}
{%- endfor %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if loop.previtem and loop.previtem.role != "tool" %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- content }}
{{- '\n</tool_response>' }}
{%- if not loop.last and loop.nextitem.role != "tool" %}
{{- '<|im_end|>\n' }}
{%- elif loop.last %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- else %}
{{- raise_exception('Unexpected message role.') }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is false %}
{{- '<think>\n\n</think>\n\n' }}
{%- else %}
{{- '<think>\n' }}
{%- endif %}
{%- endif %}

View file

@ -0,0 +1,113 @@
{
"architectures": [
"Qwen3_5ForConditionalGeneration"
],
"image_token_id": 248056,
"model_type": "qwen3_5",
"quantization": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"quantization_config": {
"group_size": 64,
"bits": 4,
"mode": "affine"
},
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attn_output_gate": true,
"dtype": "bfloat16",
"eos_token_id": 248044,
"full_attention_interval": 4,
"head_dim": 256,
"hidden_act": "silu",
"hidden_size": 4096,
"initializer_range": 0.02,
"intermediate_size": 12288,
"layer_types": [
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention"
],
"linear_conv_kernel_dim": 4,
"linear_key_head_dim": 128,
"linear_num_key_heads": 16,
"linear_num_value_heads": 32,
"linear_value_head_dim": 128,
"max_position_embeddings": 262144,
"mlp_only_layers": [],
"model_type": "qwen3_5_text",
"mtp_num_hidden_layers": 1,
"mtp_use_dedicated_embeddings": false,
"num_attention_heads": 16,
"num_hidden_layers": 32,
"num_key_value_heads": 4,
"rms_norm_eps": 1e-06,
"use_cache": true,
"vocab_size": 248320,
"mamba_ssm_dtype": "float32",
"rope_parameters": {
"mrope_interleaved": true,
"mrope_section": [
11,
11,
10
],
"rope_type": "default",
"rope_theta": 10000000,
"partial_rotary_factor": 0.25
}
},
"tie_word_embeddings": false,
"transformers_version": "4.57.0.dev0",
"video_token_id": 248057,
"vision_config": {
"deepstack_visual_indexes": [],
"depth": 27,
"hidden_act": "gelu_pytorch_tanh",
"hidden_size": 1152,
"in_channels": 3,
"initializer_range": 0.02,
"intermediate_size": 4304,
"model_type": "qwen3_5",
"num_heads": 16,
"num_position_embeddings": 2304,
"out_hidden_size": 4096,
"patch_size": 16,
"spatial_merge_size": 2,
"temporal_patch_size": 2
},
"vision_end_token_id": 248054,
"vision_start_token_id": 248053
}

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"image_processor_type": "Qwen2VLImageProcessorFast"
}

View file

@ -0,0 +1,63 @@
{
"image_processor": {
"data_format": "channels_first",
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"image_mean": [
0.5,
0.5,
0.5
],
"image_processor_type": "Qwen2VLImageProcessorFast",
"image_std": [
0.5,
0.5,
0.5
],
"merge_size": 2,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"temporal_patch_size": 2
},
"processor_class": "Qwen3VLProcessor",
"video_processor": {
"data_format": "channels_first",
"default_to_square": true,
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"do_sample_frames": true,
"fps": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"max_frames": 768,
"merge_size": 2,
"min_frames": 4,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"return_metadata": false,
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"temporal_patch_size": 2,
"video_processor_type": "Qwen3VLVideoProcessor"
}
}

BIN
chat/mlx/mlx-community/Qwen3.5-9B-MLX-4bit/tokenizer.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,32 @@
{
"add_prefix_space": false,
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"image_token": "<|image_pad|>",
"is_local": true,
"model_max_length": 262144,
"model_specific_special_tokens": {
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"image_token": "<|image_pad|>",
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
},
"pad_token": "<|endoftext|>",
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
"processor_class": "Qwen3VLProcessor",
"split_special_tokens": false,
"tokenizer_class": "TokenizersBackend",
"unk_token": null,
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"video_processor_type": "Qwen3VLVideoProcessor"
}

BIN
chat/mlx/mlx-community/Qwen3.5-9B-MLX-4bit/vocab.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

View file

@ -0,0 +1,25 @@
---
library_name: mlx
license: apache-2.0
license_link: https://huggingface.co/Qwen/Qwen3.6-35B-A3B/blob/main/LICENSE
pipeline_tag: image-text-to-text
tags:
- mlx
base_model: Qwen/Qwen3.6-35B-A3B
---
# mlx-community/Qwen3.6-35B-A3B-4bit
This model was converted to MLX format from [`Qwen/Qwen3.6-35B-A3B`](https://huggingface.co/Qwen/Qwen3.6-35B-A3B)
using mlx-vlm version **0.4.4**.
Refer to the [original model card](https://huggingface.co/Qwen/Qwen3.6-35B-A3B) for more details on the model.
## Use with mlx
```bash
pip install -U mlx-vlm
```
```bash
python -m mlx_vlm.generate --model mlx-community/Qwen3.6-35B-A3B-4bit --max-tokens 100 --temperature 0.0 --prompt "Describe this image." --image <path_to_image>
```

View file

@ -0,0 +1,154 @@
{%- set image_count = namespace(value=0) %}
{%- set video_count = namespace(value=0) %}
{%- macro render_content(content, do_vision_count, is_system_content=false) %}
{%- if content is string %}
{{- content }}
{%- elif content is iterable and content is not mapping %}
{%- for item in content %}
{%- if 'image' in item or 'image_url' in item or item.type == 'image' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain images.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set image_count.value = image_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Picture ' ~ image_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|image_pad|><|vision_end|>' }}
{%- elif 'video' in item or item.type == 'video' %}
{%- if is_system_content %}
{{- raise_exception('System message cannot contain videos.') }}
{%- endif %}
{%- if do_vision_count %}
{%- set video_count.value = video_count.value + 1 %}
{%- endif %}
{%- if add_vision_id %}
{{- 'Video ' ~ video_count.value ~ ': ' }}
{%- endif %}
{{- '<|vision_start|><|video_pad|><|vision_end|>' }}
{%- elif 'text' in item %}
{{- item.text }}
{%- else %}
{{- raise_exception('Unexpected item type in content.') }}
{%- endif %}
{%- endfor %}
{%- elif content is none or content is undefined %}
{{- '' }}
{%- else %}
{{- raise_exception('Unexpected content type.') }}
{%- endif %}
{%- endmacro %}
{%- if not messages %}
{{- raise_exception('No messages provided.') }}
{%- endif %}
{%- if tools and tools is iterable and tools is not mapping %}
{{- '<|im_start|>system\n' }}
{{- "# Tools\n\nYou have access to the following functions:\n\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>" }}
{{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n<tool_call>\n<function=example_function_name>\n<parameter=example_parameter_1>\nvalue_1\n</parameter>\n<parameter=example_parameter_2>\nThis is the value for the second parameter\nthat can span\nmultiple lines\n</parameter>\n</function>\n</tool_call>\n\n<IMPORTANT>\nReminder:\n- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n</IMPORTANT>' }}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{%- if content %}
{{- '\n\n' + content }}
{%- endif %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- else %}
{%- if messages[0].role == 'system' %}
{%- set content = render_content(messages[0].content, false, true)|trim %}
{{- '<|im_start|>system\n' + content + '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}
{%- for message in messages[::-1] %}
{%- set index = (messages|length - 1) - loop.index0 %}
{%- if ns.multi_step_tool and message.role == "user" %}
{%- set content = render_content(message.content, false)|trim %}
{%- if not(content.startswith('<tool_response>') and content.endswith('</tool_response>')) %}
{%- set ns.multi_step_tool = false %}
{%- set ns.last_query_index = index %}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if ns.multi_step_tool %}
{{- raise_exception('No user query found in messages.') }}
{%- endif %}
{%- for message in messages %}
{%- set content = render_content(message.content, true)|trim %}
{%- if message.role == "system" %}
{%- if not loop.first %}
{{- raise_exception('System message must be at the beginning.') }}
{%- endif %}
{%- elif message.role == "user" %}
{{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{%- set reasoning_content = '' %}
{%- if message.reasoning_content is string %}
{%- set reasoning_content = message.reasoning_content %}
{%- else %}
{%- if '</think>' in content %}
{%- set reasoning_content = content.split('</think>')[0].rstrip('\n').split('<think>')[-1].lstrip('\n') %}
{%- set content = content.split('</think>')[-1].lstrip('\n') %}
{%- endif %}
{%- endif %}
{%- set reasoning_content = reasoning_content|trim %}
{%- if (preserve_thinking is defined and preserve_thinking is true) or (loop.index0 > ns.last_query_index) %}
{{- '<|im_start|>' + message.role + '\n<think>\n' + reasoning_content + '\n</think>\n\n' + content }}
{%- else %}
{{- '<|im_start|>' + message.role + '\n' + content }}
{%- endif %}
{%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{%- if loop.first %}
{%- if content|trim %}
{{- '\n\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- else %}
{{- '<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- else %}
{{- '\n<tool_call>\n<function=' + tool_call.name + '>\n' }}
{%- endif %}
{%- if tool_call.arguments is defined %}
{%- for args_name, args_value in tool_call.arguments|items %}
{{- '<parameter=' + args_name + '>\n' }}
{%- set args_value = args_value | string if args_value is string else args_value | tojson | safe %}
{{- args_value }}
{{- '\n</parameter>\n' }}
{%- endfor %}
{%- endif %}
{{- '</function>\n</tool_call>' }}
{%- endfor %}
{%- endif %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if loop.previtem and loop.previtem.role != "tool" %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- content }}
{{- '\n</tool_response>' }}
{%- if not loop.last and loop.nextitem.role != "tool" %}
{{- '<|im_end|>\n' }}
{%- elif loop.last %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- else %}
{{- raise_exception('Unexpected message role.') }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- if enable_thinking is defined and enable_thinking is false %}
{{- '<think>\n\n</think>\n\n' }}
{%- else %}
{{- '<think>\n' }}
{%- endif %}
{%- endif %}

View file

@ -0,0 +1,773 @@
{
"architectures": [
"Qwen3_5MoeForConditionalGeneration"
],
"eos_token_id": [
248046,
248044
],
"image_token_id": 248056,
"model_type": "qwen3_5_moe",
"quantization": {
"group_size": 64,
"bits": 4,
"mode": "affine",
"language_model.model.layers.0.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.0.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.1.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.1.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.2.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.2.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.3.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.3.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.4.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.4.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.5.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.5.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.6.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.6.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.7.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.7.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.8.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.8.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.9.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.9.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.10.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.10.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.11.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.11.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.12.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.12.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.13.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.13.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.14.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.14.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.15.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.15.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.16.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.16.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.17.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.17.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.18.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.18.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.19.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.19.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.20.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.20.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.21.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.21.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.22.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.22.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.23.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.23.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.24.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.24.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.25.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.25.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.26.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.26.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.27.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.27.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.28.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.28.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.29.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.29.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.30.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.30.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.31.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.31.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.32.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.32.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.33.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.33.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.34.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.34.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.35.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.35.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.36.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.36.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.37.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.37.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.38.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.38.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.39.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.39.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
}
},
"quantization_config": {
"group_size": 64,
"bits": 4,
"mode": "affine",
"language_model.model.layers.0.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.0.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.1.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.1.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.2.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.2.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.3.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.3.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.4.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.4.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.5.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.5.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.6.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.6.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.7.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.7.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.8.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.8.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.9.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.9.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.10.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.10.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.11.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.11.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.12.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.12.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.13.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.13.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.14.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.14.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.15.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.15.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.16.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.16.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.17.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.17.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.18.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.18.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.19.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.19.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.20.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.20.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.21.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.21.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.22.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.22.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.23.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.23.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.24.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.24.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.25.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.25.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.26.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.26.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.27.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.27.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.28.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.28.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.29.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.29.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.30.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.30.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.31.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.31.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.32.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.32.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.33.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.33.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.34.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.34.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.35.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.35.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.36.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.36.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.37.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.37.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.38.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.38.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.39.mlp.gate": {
"group_size": 64,
"bits": 8
},
"language_model.model.layers.39.mlp.shared_expert_gate": {
"group_size": 64,
"bits": 8
}
},
"text_config": {
"attention_bias": false,
"attention_dropout": 0.0,
"attn_output_gate": true,
"bos_token_id": 248044,
"dtype": "bfloat16",
"eos_token_id": 248044,
"full_attention_interval": 4,
"head_dim": 256,
"hidden_act": "silu",
"hidden_size": 2048,
"initializer_range": 0.02,
"layer_types": [
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention",
"linear_attention",
"linear_attention",
"linear_attention",
"full_attention"
],
"linear_conv_kernel_dim": 4,
"linear_key_head_dim": 128,
"linear_num_key_heads": 16,
"linear_num_value_heads": 32,
"linear_value_head_dim": 128,
"mamba_ssm_dtype": "float32",
"max_position_embeddings": 262144,
"model_type": "qwen3_5_moe_text",
"moe_intermediate_size": 512,
"mtp_num_hidden_layers": 1,
"mtp_use_dedicated_embeddings": false,
"num_attention_heads": 16,
"num_experts": 256,
"num_experts_per_tok": 8,
"num_hidden_layers": 40,
"num_key_value_heads": 2,
"output_router_logits": false,
"pad_token_id": null,
"partial_rotary_factor": 0.25,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"mrope_interleaved": true,
"mrope_section": [
11,
11,
10
],
"partial_rotary_factor": 0.25,
"rope_theta": 10000000,
"rope_type": "default"
},
"router_aux_loss_coef": 0.001,
"shared_expert_intermediate_size": 512,
"tie_word_embeddings": false,
"use_cache": true,
"vocab_size": 248320
},
"tie_word_embeddings": false,
"transformers_version": "4.57.1",
"video_token_id": 248057,
"vision_config": {
"deepstack_visual_indexes": [],
"depth": 27,
"hidden_act": "gelu_pytorch_tanh",
"hidden_size": 1152,
"in_channels": 3,
"initializer_range": 0.02,
"intermediate_size": 4304,
"model_type": "qwen3_5_moe",
"num_heads": 16,
"num_position_embeddings": 2304,
"out_hidden_size": 2048,
"patch_size": 16,
"spatial_merge_size": 2,
"temporal_patch_size": 2
},
"vision_end_token_id": 248054,
"vision_start_token_id": 248053
}

View file

@ -0,0 +1 @@
{"framework":"Pytorch","task":"visual-question-answering"}

View file

@ -0,0 +1,12 @@
{
"bos_token_id": 248044,
"do_sample": true,
"eos_token_id": [
248046,
248044
],
"pad_token_id": 248044,
"temperature": 1.0,
"top_k": 20,
"top_p": 0.95
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"image_processor_type": "Qwen2VLImageProcessorFast"
}

View file

@ -0,0 +1,64 @@
{
"image_processor": {
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"image_mean": [
0.5,
0.5,
0.5
],
"image_processor_type": "Qwen2VLImageProcessor",
"image_std": [
0.5,
0.5,
0.5
],
"max_pixels": 16777216,
"merge_size": 2,
"min_pixels": 65536,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"size": {
"longest_edge": 16777216,
"shortest_edge": 65536
},
"temporal_patch_size": 2
},
"processor_class": "Qwen3VLProcessor",
"video_processor": {
"data_format": "channels_first",
"default_to_square": true,
"do_convert_rgb": true,
"do_normalize": true,
"do_rescale": true,
"do_resize": true,
"do_sample_frames": true,
"fps": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"max_frames": 768,
"merge_size": 2,
"min_frames": 4,
"patch_size": 16,
"resample": 3,
"rescale_factor": 0.00392156862745098,
"return_metadata": false,
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"temporal_patch_size": 2,
"video_processor_type": "Qwen3VLVideoProcessor"
}
}

BIN
chat/mlx/mlx-community/Qwen3.6-35B-A3B-4bit/tokenizer.json (Stored with Git LFS) Normal file

Binary file not shown.

View file

@ -0,0 +1,32 @@
{
"add_prefix_space": false,
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"image_token": "<|image_pad|>",
"is_local": true,
"model_max_length": 262144,
"model_specific_special_tokens": {
"audio_bos_token": "<|audio_start|>",
"audio_eos_token": "<|audio_end|>",
"audio_token": "<|audio_pad|>",
"image_token": "<|image_pad|>",
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
},
"pad_token": "<|endoftext|>",
"pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+",
"processor_class": "Qwen3VLProcessor",
"split_special_tokens": false,
"tokenizer_class": "TokenizersBackend",
"unk_token": null,
"video_token": "<|video_pad|>",
"vision_bos_token": "<|vision_start|>",
"vision_eos_token": "<|vision_end|>"
}

View file

@ -0,0 +1,21 @@
{
"size": {
"longest_edge": 25165824,
"shortest_edge": 4096
},
"patch_size": 16,
"temporal_patch_size": 2,
"merge_size": 2,
"image_mean": [
0.5,
0.5,
0.5
],
"image_std": [
0.5,
0.5,
0.5
],
"processor_class": "Qwen3VLProcessor",
"video_processor_type": "Qwen3VLVideoProcessor"
}

Some files were not shown because too many files have changed in this diff Show more