Downloads · 30 days
9
9% of all-time downloads
Don-oz/Tess-4-35B-A3B
Tess-4-35B-A3B is a image-text-to-text model from Don-oz. Use it for the image-text-to-text task on the model card, and read the license before you ship it in a product. It is set up for transformers. The card lists the license as apache-2.0.
This repository is an unmodified weight copy of the original model. Original: migtissera/Tess-4-35B-A3B by Migel Tissera. No fine-tuning, quantization, or weight changes were applied here. The only addition is this RE…
Downloads · 30 days
9
9% of all-time downloads
All-time downloads
98
Public
Parameters
36B
71.9 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors71.9 GB · 100%
From the Hugging Face model README
This repository is an unmodified weight copy of the original model.
Original: migtissera/Tess-4-35B-A3B by Migel Tissera.
No fine-tuning, quantization, or weight changes were applied here. The only addition is this README — the upstream BF16 model card was empty, so documentation was assembled from the author’s GGUF card, the sibling Tess-4-27B card,config.json, and public announcements. Prefer the original repo and author sources for the canonical release.
Reasoning that scales with the problem — on an architecture light enough to run interactively on a single consumer machine.
Tess-4-35B-A3B is the Mixture-of-Experts member of the Tess-4 family by Migel Tissera. It is an agentic, thinking-native post-train of Qwen/Qwen3.6-35B-A3B: private deliberation in explicit <think>…</think> blocks, native tool use, and long-context agentic behavior — with sparse activation so you get ~35B-class breadth at ~3B-class decode cost.
| Original model | migtissera/Tess-4-35B-A3B |
| Base (pre-Tess) | Qwen/Qwen3.6-35B-A3B |
| Author | Migel Tissera (@migtissera) |
| This repo | Unmodified copy of the original weights + this README only |
| License | Apache 2.0 (inherited) |
| Precision | BF16 Safetensors (~72 GB, 26 shards) |
| Architecture | Qwen3_5MoeForConditionalGeneration / qwen3_5_moe |
| Total / active params | ~35–36B total · ~3B active (8 of 256 experts) |
| Context (trained) | 262,144 tokens |
| Multimodal | Yes — inherits Qwen3.6 vision tower (image/video tokens present in config) |
Tess-4 models are post-trained on 64K-token long-context agentic traces — real engineering work done with Fable-5, not synthetic single-turn data. Reasoning style is distilled from a three-model teacher ensemble (Opus-4.8, GPT-5.5, and GLM-5.2) into coherent deliberation patterns, using explicit <think>…</think> blocks for private reasoning before the visible answer.
The same dataset and recipe produced Tess-4-27B (dense), which community BenchLocal runs placed first at 81% (122/150) ahead of larger models including Qwen3.6-35B-A3B and Gemma-4-31B (community-reported; see Tess-4-27B discussions).
Tess-4-35B-A3B applies that recipe to the MoE base: 35B-class capacity with sparse activation for local/interactive use.
vision_config, image/video token IDs).config.json)| Property | Value |
|---|---|
| Layers | 40 |
| Hidden size | 2048 |
| Attention | Hybrid: gated-delta-net linear attention, with full GQA every 4th layer (full_attention_interval: 4) |
| Full-attn heads | 16 query heads · 2 KV heads · head_dim 256 |
| Experts | 256 total · 8 active per token |
| MoE intermediate | 512 (shared expert intermediate also 512) |
| Vocab | 248,320 |
| RoPE | θ = 10,000,000 · partial rotary 0.25 · MRoPE sections [11, 11, 10] |
| Max position embeddings | 262,144 |
| MTP | mtp_num_hidden_layers: 1 (base supports multi-token prediction) |
| Dtype (release) | bfloat16 |
| KV cost note | Only ~10/40 layers carry full KV (linear-attn layers are cheaper) — long context is relatively inexpensive vs dense full-attn MoEs |
Sparse activation is the practical win on local hardware: ~3B active parameters per token with a wide expert pool.
Qwen3.5-family chat template with explicit think blocks (embedded as chat_template.jinja in this repo):
<|im_start|>user
Your prompt here<|im_end|>
<|im_start|>assistant
<think>
… private reasoning …
</think>
… visible answer …<|im_end|>
processor.apply_chat_template(messages, add_generation_prompt=True)--jinja (template is in the GGUFs / can be loaded from this repo’s jinja file)Tool calling is intended to work through the same chat template path (family + GGUF card).
| Repo | Format | Notes |
|---|---|---|
| migtissera/Tess-4-35B-A3B (this model) | BF16 Safetensors | Full weights; ~72 GB across 26 shards |
| migtissera/Tess-4-35B-A3B-GGUF | GGUF + native MTP | Q8_0 / Q6_K / Q4_K_M trunks with spliced MTP for self-speculation in a supporting llama.cpp fork |
| Author announcements | NVFP4 and other optimized profiles | Mentioned on release; check the author’s org for latest quants |
The GGUF repo is not a plain trunk dump: each main file embeds a multi-token-prediction (MTP) block for native self-speculative decoding (no separate -md draft model). Author-reported gains on Apple M4 Max (128 GiB), production gate p_min=0.70, include roughly +23–50% decode on code-heavy loads (e.g. Q8_0 code ~75 → ~110 tok/s). Every draft token is verified by the full trunk.
Important runtime notes (from the GGUF card):
--spec-type draft-mtp). Untested on stock llama.cpp; extra blk.40.* tensors may be rejected by strict loaders.-np 1 for speculation.--spec-draft-p-min 0.70 (default 0.0 ungated drafting hurts throughput and greedy reproducibility).Example (GGUF / fork):
llama-server -m Tess-4-35B-A3B-Q8_0-MTP-Q4D-Q4H-PV64K.gguf \
-c 32768 -ub 2048 -np 1 -ngl 99 -fa on --jinja --metrics \
--spec-type draft-mtp \
--spec-draft-n-max 5 --spec-draft-n-min 0 --spec-draft-p-min 0.70 \
--host 127.0.0.1 --port 8787
Requires a recent transformers with Qwen3.5 / Qwen3.6 MoE multimodal support.
import torch
from transformers import AutoProcessor, AutoModelForImageTextToText
model_id = "migtissera/Tess-4-35B-A3B"
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForImageTextToText.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True,
)
messages = [
{
"role": "user",
"content": "Refactor this function and explain your reasoning.",
}
]
inputs = processor.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
out = model.generate(**inputs, max_new_tokens=1024)
print(processor.decode(out[0][inputs["input_ids"].shape[-1] :], skip_special_tokens=True))
Multimodal: pass image (+ text) content blocks the same way as other Qwen3.5-VL / Qwen3.6 multimodal checkpoints (see Tess-4-27B card for a worked image example).
# vLLM (version must support qwen3_5_moe)
vllm serve migtissera/Tess-4-35B-A3B
# SGLang
python3 -m sglang.launch_server \
--model-path migtissera/Tess-4-35B-A3B \
--host 0.0.0.0 \
--port 30000
Pin stack versions that explicitly list Qwen3.6-35B-A3B / qwen3_5_moe support; older builds will fail on architecture or hybrid attention.
Prefer the GGUF repo and a runtime that understands the architecture (and MTP morph if you want speculation). For plain trunk decode, serve without --spec-type.
# Example: HF-hub launch of a quant tag (app/runtime dependent)
llama-server -hf migtissera/Tess-4-35B-A3B-GGUF:Q4_K_M --jinja -c 32768 -ngl 99
| Setup | Rough expectation |
|---|---|
| BF16 full weights | Multi-GPU or high-VRAM; ~72 GB weights alone before KV |
| GGUF Q4_K_M (~22 GB) | Fits many 24 GB class GPUs with room for context; fastest trunk among published MTP set |
| GGUF Q8_0 (~38 GB) | Higher fidelity; needs more VRAM/unified memory |
| Apple M4 Max 128 GB (author figures) | Interactive decode; MTP Q8 code workloads reported ~110 tok/s class under gated speculation |
Context is comparatively cheap: author note ~20 KB/token scale when raising server context on this architecture (only a minority of layers keep full KV). Keep server -c ≥ client ceiling.
| Resource | URL |
|---|---|
| Original model (use this as canonical) | https://huggingface.co/migtissera/Tess-4-35B-A3B |
| GGUF + MTP (author) | https://huggingface.co/migtissera/Tess-4-35B-A3B-GGUF |
| Dense sibling | https://huggingface.co/migtissera/Tess-4-27B |
| Base (pre-Tess) | https://huggingface.co/Qwen/Qwen3.6-35B-A3B |
| Author | https://huggingface.co/migtissera |
Code samples above that load migtissera/Tess-4-35B-A3B work unchanged against this mirror if you swap in this repo id.
Apache License 2.0, inherited from the original model / Qwen base. Redistribution here does not change the license terms.
The original author release:
@misc{tess4-35b-a3b,
title = {Tess-4-35B-A3B: an agentic, thinking-native Mixture-of-Experts
model with native MTP self-speculation},
author = {Tissera, Migel},
year = {2026},
url = {https://huggingface.co/migtissera/Tess-4-35B-A3B}
}
Unofficial mirror of Tess-4-35B-A3B (Migel Tissera) with documentation only. Community evaluations for the MoE variant are still catching up to the denser Tess-4-27B BenchLocal results; treat third-party scores as provisional until more independent runs land.