SaRDinE is a novel MoE-alternative architecture. Unlike traditional MoE which fragments model capacity across experts, SaRDinE:
1import torch
2from transformers import AutoTokenizer
3
4# Clone the repo for the model code
5# The model uses trust_remote_code=True
6
7# Load tokenizer from base model
8tokenizer = AutoTokenizer.from_pretrained(
9 "mistralai/Ministral-3-14B-Reasoning-2512",
10 trust_remote_code=True
11)
12
13# Load SRDE model
14from huggingface_hub import hf_hub_download
15import sys
16sys.path.insert(0, hf_hub_download("MinimaML/SaRDinE-14B8x4P", "modeling_sardine.py", local_dir="."))
17
18from modeling_sardine import SaRDinEForCausalLM
19
20model = SaRDinEForCausalLM.from_pretrained(
21 "MinimaML/SaRDinE-14B8x4P",
22 torch_dtype=torch.bfloat16,
23 device_map="auto"
24)
25
26# Generate
27prompt = "Solve step by step: What is 15% of 80?"
28inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
29outputs = model.generate(**inputs, max_new_tokens=256, do_sample=True, temperature=0.7)
30print(tokenizer.decode(outputs[0], skip_special_tokens=True))
1import torch
2from transformers import AutoTokenizer, BitsAndBytesConfig
3
4# Quantization config for base model
5bnb_config = BitsAndBytesConfig(
6 load_in_4bit=True,
7 bnb_4bit_compute_dtype=torch.bfloat16,
8 bnb_4bit_use_double_quant=True,
9 bnb_4bit_quant_type="nf4"
10)
11
12# Load with quantization
13from modeling_sardine import SaRDinEForCausalLM
14
15model = SaRDinEForCausalLM.from_pretrained(
16 "MinimaML/SaRDinE-14B8x4P",
17 quantization_config=bnb_config,
18 device_map="auto"
19)
1@misc{sardine2025,
2 title={SaRDinE: Sparse Routed Delta Experts},
3 author={MinimaML},
4 year={2025},
5 url={https://github.com/MinimaML/srde-mistral}
6}