An Apple Silicon MLX conversion of akhilaaa3/Jev-Omni for local inference on a Mac mini with 16GB unified memory. This repository keeps the upstream Jev-Omni unified multimodal checkpoint and its trained 256-way decision head, then converts the language-model weights to 4-bit affine quantization with group size 64. The vision weights remain BF16 and the decision head remains FP32. It is an independent conversion. It is not an official TypeSafe Jev release and does not claim to reproduce TypeSafe's proprietary system. It is also not a new fine-tune. - Mac mini, Apple M4, 10 CPU cores, 16GB unified memory - macOS 26.5.1 - Python 3.13.12 - MLX 0.32.2 - MLX-VLM 0.7.1 - single request, batch…
Open-weight model · Image and text to text
SDRPN-Gemma-4-12B
by Yuhengsss YuhengSSS/SDRPN-Gemma-4-12B
SDRPN-Gemma-4-12B is an open-weight model for image and text to text from Yuhengsss, released under Apache License 2.0. It has 12.6B parameters and a 262,144-token context. At 16-bit it needs about 30.4 GB of GPU memory, which fits on 1x MI300X from $1.85 an hour, at the lowest prices in the SAVRN Index.
Papers: https://arxiv.org/abs/2609.19745 (Vision-RL²) · https://arxiv.org/abs/2509.16944 (SD-RPN) SD-RPN stage-1 checkpoint: a self-distilled RoI predictor twig (K = 27, T = 3) trained on a frozen, encoder-free google/gemma-4-12B-it.
Runs On
What it takes to serve SDRPN-Gemma-4-12B (12.6B parameters): the memory its weights need at each precision, and the cheapest way to rent enough data-center GPUs to hold them.
| Precision | Weights | Memory needed | Cheapest setup | Per hour | Also fits |
|---|---|---|---|---|---|
| 16-bit | 25.3 GB | 30.4 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 8-bit | 12.6 GB | 15.2 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
| 4-bit | 6.3 GB | 7.6 GB | 1x MI300X (192 GB) Vultr |
$1.85 | 1x H100 $1.99 · 1x MI325X $2.00 |
Memory is the weights at that precision plus 20% for the runtime and a short context; a long context needs more. Prices are the lowest on-demand hourly rates in the SAVRN Index, read Sep 24, 2026.
SDRPN-Gemma-4-12B on every accelerator the SAVRN Index prices, at every precision
Model Card
By Yuhengsss, published under apache-2.0, revision 6afc24575a52.
Papers: https://arxiv.org/abs/2609.19745 (Vision-RL²) · https://arxiv.org/abs/2509.16944 (SD-RPN) SD-RPN stage-1 checkpoint: a self-distilled RoI predictor twig (K = 27, T = 3) trained on a frozen, encoder-free google/gemma-4-12B-it. This is the initialisation of the Vision-RL² RL run The backbone weights are unchanged from the base model; only the three attached twig blocks are trained, from self-distilled attention pseudo-labels (no human RoI annotation). The Gemma stage-1 driver trains the delta and its assemble stage turns it into the full directory; both forms are published so you can start from either. These weights need the modeling code in YuHengsss/VisionRL2. They are not loadable…
Read Yuhengsss's full model card
Papers: https://arxiv.org/abs/2609.19745 (Vision-RL²) · https://arxiv.org/abs/2509.16944 (SD-RPN)
SD-RPN stage-1 checkpoint: a self-distilled RoI predictor twig (K = 27, T = 3) trained on a
frozen, encoder-free google/gemma-4-12B-it. This
is the initialisation of the Vision-RL² RL run
YuhengSSS/VisionRL2-Gemma-4-12B.
The backbone weights are unchanged from the base model; only the three attached twig blocks are trained, from self-distilled attention pseudo-labels (no human RoI annotation).
Repository contents
| path | what |
|---|---|
model-0000*-of-00002.safetensors, model.safetensors.index.json, config.json, ... |
full loadable model directory (frozen backbone + trained twig) |
twig_delta/twig_delta_final.pt |
twig-only delta (~1.4 GB), the artefact the Gemma stage-1 driver writes natively |
The Gemma stage-1 driver trains the delta and its assemble stage turns it into the full
directory; both forms are published so you can start from either.
Configuration
| item | value |
|---|---|
| backbone | google/gemma-4-12B-it (frozen, encoder-free) |
| twig | K = 27, T = 3 |
| stage | 1 (SD-RPN self-distilled pseudo-label training) |
| source tier | 1120 visual tokens, RoI crop target 256 tokens |
| next stage | region-level RL → YuhengSSS/VisionRL2-Gemma-4-12B |
How to use
These weights need the modeling code in
YuHengsss/VisionRL2. They are not loadable for
RoI inference through a plain AutoModel / AutoModelForCausalLM call: the RoI gating path
(heatmap head, peak-relative gate, connected-component crop, sub-image splice) lives in the
repository's model classes and evaluation harness.
git clone https://github.com/YuHengsss/VisionRL2
cd VisionRL2
hf download YuhengSSS/SDRPN-Gemma-4-12B --local-dir output/sdrpn/gemma4-12b-sdrpn-K27T3
# stage 2: region-level RL starting from this checkpoint
PHASE_A_CKPT=output/sdrpn/gemma4-12b-sdrpn-K27T3 \
DATASET_ROOT=datasets GPU_IDS=0,1 bash scripts/train_rl_gemma4_12b.sh
# evaluate the stage-1 checkpoint itself (training-aligned protocol, dense crop)
CHECKPOINT=output/sdrpn/gemma4-12b-sdrpn-K27T3 ROI_MODE=dense bash scripts/aligned_eval_gemma4.sh
To start from the delta instead, download only twig_delta/twig_delta_final.pt and run
qwen_src/gemma4_unified/assemble_full_checkpoint.py against the base model (see
docs/GEMMA4.md).
Expected numbers (sanity check after download)
Training-aligned protocol (rule metrics, no judge), source tier 1120 - the
SD-RPN (stage 1), dense crop row of the Vision-RL² README:
| Model | V* | ZoomBench | HR-4K | HR-8K | MME-RW Lite | InfoVQA | Avg. |
|---|---|---|---|---|---|---|---|
| Gemma-4-12B-it (base) | 69.6 | 43.9 | 67.1 | 61.8 | 47.3 | 76.4 | 61.0 |
| SD-RPN (stage 1), dense crop, this checkpoint | 75.4 | 50.9 | 72.9 | 71.1 | 48.1 | 78.3 | 66.1 |
| Vision-RL² (stage 2), sparse crop | 82.2 | 56.2 | 77.6 | 73.4 | 51.0 | 79.1 | 69.9 |
Links
- Code: https://github.com/YuHengsss/VisionRL2
- Data (SD-RPN corpora, RL pools, evidence maps): https://huggingface.co/datasets/YuhengSSS/VisionRL2-data
- Collection: https://huggingface.co/collections/YuhengSSS/visionrl2
- Project page: https://yuhengsss.github.io/VisionRL2/
Citation
@article{shi2026visionrl2,
title = {Region-Level Policy Optimization for Fine-grained MLLM Perception},
author = {Shi, Yuheng and Pei, Xiaohuan and Dong, Minjing and Xu, Chang},
journal = {arXiv preprint arXiv:2609.19745},
year = {2026}
}
@inproceedings{shi2026sdrpn,
title = {Catching the Details: Self-Distilled RoI Predictors for Fine-Grained MLLM Perception},
author = {Shi, Yuheng and Pei, Xiaohuan and Dong, Minjing and Xu, Chang},
booktitle = {ICLR},
year = {2026}
}
Configuration
- Architecture
- Gemma4UnifiedForConditionalGeneration
- Context length (tokens)
- 262,144
- Layers
- 48
- Hidden size
- 3,840
- Feed-forward size
- 15,360
- Attention heads
- 16
- Key/value heads
- 8
- Head dimension
- 256
- Vocabulary size
- 262,144
- Sliding window (tokens)
- 1,024
- Model type
- gemma4_unified
Identity and Version
- Repository
- YuhengSSS/SDRPN-Gemma-4-12B
- Publisher
- Yuhengsss
- Task
- Image and text to text
- Modality
- Image and text
- Library
- Not stated by the source
- Parameters
- 12.6B parameters
- Languages
- sd-rpn
- Revision
- 6afc24575a52998b1e0a05ce7d7658dd10edbd98
- First published
- 2026-09-24
- Last updated
- 2026-09-24
Files and Weights
12 files, 26.7 GB in total. The weights are 3 files totalling 26.7 GB in pt, safetensors.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| model-00001-of-00002.safetensors | Weights | 23.9 GB | 5a84cb313260 |
| model-00002-of-00002.safetensors | Weights | 1.4 GB | 931325006c55 |
| twig_delta/twig_delta_final.pt | Weights | 1.4 GB | 73032068931b |
| config.json | Configuration | 4.8 KB | — |
| generation_config.json | Configuration | 260 B | — |
| model.safetensors.index.json | Configuration | 70.5 KB | — |
| processor_config.json | Configuration | 1.4 KB | — |
| README.md | Documentation | 4.3 KB | — |
| chat_template.jinja | Other | 18.7 KB | — |
| .gitattributes | Repository | 1.6 KB | — |
| tokenizer.json | Tokenizer | 32.2 MB | cc8d3a0ce364 |
| tokenizer_config.json | Tokenizer | 3.1 KB | — |
License and Download
- License
- apache-2.0
- Access
- Open weights, no gate
- Download size
- 26.7 GB
Released by Yuhengsss through its official repository on Hugging Face. Read the license.
Built From
- Derived from google/gemma-4-12B-it
- Described by arXiv:2509.16944
- Described by arXiv:2609.19745
Memory Requirements
| Precision | Weights in memory |
|---|---|
| As published | 26.7 GB |
| 16-bit | 25.3 GB |
| 8-bit | 12.6 GB |
| 4-bit | 6.3 GB |
Weights only, from the published parameter count; the key-value cache and runtime add to this.
Questions About SDRPN-Gemma-4-12B
How much GPU memory does SDRPN-Gemma-4-12B need?
About 30.4 GB at 16-bit and 7.6 GB at 4-bit: the weights (12.6B parameters) plus a working margin. A long context needs more.
What is the cheapest GPU to run SDRPN-Gemma-4-12B on?
At 16-bit, 1x MI300X from $1.85 an hour; at 4-bit, 1x MI300X from $1.85 an hour, at the lowest on-demand prices the SAVRN Index lists.
Can I use SDRPN-Gemma-4-12B commercially?
Yes. SDRPN-Gemma-4-12B is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.
What is SDRPN-Gemma-4-12B's context length?
262,144 tokens, from the maximum position embeddings in its published configuration.
Similar Models
Runs on SparkInfer, SGLang and vLLM unmodified — configs for all three are below. Serving many users at once? See concurrency. SparkInfer × this NVFP4 build × the DSpark v2 drafter — an engine, a checkpoint, and a speculative drafter optimized against each other, compounding to 4.3×. The drafter never changes what the model says: the target verifies every drafted token. GeForce RTX 5090–specific NVFP4 checkpoint of Qwen/Qwen3.8-27B, quantized with NVIDIA Model Optimizer. Serves the full native 262,144-token context on 32 GB. With the DSpark v2 drafter: 264.8 tok/s overall — up to 420 on code — on SparkInfer (its bench harness; the HTTP server is autoregressive-only today) and 161.7 tok/s on…
Papers: https://arxiv.org/abs/2609.19745 (Vision-RL²) · https://arxiv.org/abs/2509.16944 (SD-RPN) SD-RPN stage-1 checkpoint: a self-distilled RoI predictor twig (K = 21, T = 3) trained on a frozen Qwen/Qwen3.5-9B. This is the initialisation of the Vision-RL² RL run YuhengSSS/VisionRL2-Qwen3.5-9B. The backbone weights are unchanged from the base model; only the three attached twig blocks are trained, from self-distilled attention pseudo-labels (no human RoI annotation). These weights need the modeling code in YuHengsss/VisionRL2. They are not loadable for RoI inference through a plain AutoModel / AutoModelForCausalLM call: the RoI gating path (heatmap head, peak-relative gate…
VLX-Seek-1.5-10B is the open-source 10B model in the VLX-Seek 1.5 family, designed for fine-grained perception and visual grounding in embodied scenarios. It targets practical settings such as drones, robots, robotic dogs, surveillance cameras, inspection systems, and other edge-side visual intelligence applications where a model must identify what is present, localize the right instance, and avoid grounding objects that are absent. Unlike coordinate-generation-based VLMs that directly decode bounding-box numbers, VLX-Seek reformulates localization as region retrieval and region reference. Candidate visual regions are represented as addressable entities, and the model answers by selecting…
Over recent months, we have intensified our focus on developing foundation models that deliver exceptional utility and performance. Qwen3.5 represents a significant leap forward, integrating breakthroughs in multimodal learning, architectural efficiency, reinforcement learning scale, and global accessibility to empower developers and enterprises with unprecedented capability and efficiency. For more details, please refer to our blog post Qwen3.5. WMT24++: a harder subset of WMT24 after difficulty labeling and rebalancing; we report the averaged scores on 55 languages using XCOMET-XXL. Empty cells (--) indicate scores not yet available or not applicable. Empty cells (--) indicate scores not…
This repo quantizes the model using data-free quantization technique. As of 2026-02-25, make sure your system has cuda12.8 installed. Then, create a fresh Python environment (e.g. python3.12 venv) and run: Over recent months, we have intensified our focus on developing foundation models that deliver exceptional utility and performance. Qwen3.5 represents a significant leap forward, integrating breakthroughs in multimodal learning, architectural efficiency, reinforcement learning scale, and global accessibility to empower developers and enterprises with unprecedented capability and efficiency. For more details, please refer to our blog post Qwen3.5. WMT24++: a harder subset of WMT24 after…