Nemotron 3 Nano: L'Ibrido Mamba-Transformer MoE per l'Agentic AI on-device
Modello ibrido Mamba-Transformer MoE da 3.9B parametri che ridefinisce efficienza e reasoning per l'AI on-device.

In Nemotron 3 Nano: Open, Efficient Mixture-of-Experts Hybrid Mamba-Transformer Model for Agentic Reasoning (arxiv:2512.20848), NVIDIA introduce un nuovo Small Language Model (SLM) progettato per l'esecuzione locale. Il modello combina l'efficienza lineare degli State Space Models (specificamente Mamba-2) con la capacità di retrieval contestuale dei Transformer, il tutto integrato in un'architettura Mixture-of-Experts (MoE).
Il risultato è un modello con 3.9 miliardi di parametri attivi che supera le prestazioni di competitor puramente Transformer (come Llama 3.2 3B e Gemma 2 2.6B) in task di ragionamento, matematica e coding, mantenendo un footprint di memoria ridotto per l'implementazione su consumer GPU e laptop.
Ecco i link di riferimento:
- Code: https://github.com/NVIDIA/NeMo
- Paper: https://arxiv.org/abs/2512.20848
- HuggingFace: https://huggingface.co/nvidia/nemotron-3-nano-4b-instruct
- Dataset: /
Nemotron 3 Nano: Obiettivi di ricerca
- L'architettura ibrida Mamba-Transformer può superare i Transformer puri su piccola scala? Sì. I benchmark dimostrano che integrando livelli Mamba (per la gestione efficiente dello stato e la compressione della sequenza) con livelli di Self-Attention (per la gestione delle dipendenze a lungo raggio), Nemotron 3 Nano ottiene punteggi superiori su IFEval e GSM8K rispetto a modelli dense di dimensioni simili come Llama 3.2.
- In che modo il design Mixture-of-Experts (MoE) influisce sull'efficienza di inferenza? L'utilizzo di MoE permette di avere un alto numero di parametri totali (capacità di memorizzazione) mantenendo bassi i parametri attivi durante l'inferenza. Questo disaccoppia la capacità del modello dal costo computazionale (FLOPs), garantendo un throughput elevato ideale per applicazioni real-time e agentic workflows.
- Il modello è adatto per task "Agentic" complessi come il Function Calling? Sì, il modello è stato specificamente ottimizzato per il function calling. Grazie a un fine-tuning supervisionato (SFT) su dataset sintetici di alta qualità, dimostra una capacità superiore nel selezionare e formattare correttamente le chiamate a tool esterni, una competenza critica per gli agenti AI autonomi.
Nemotron 3 Nano: Cosa ne pensa Mauro?
- Novità: 3/5. L'approccio ibrido è la vera innovazione. Mentre esistono tentativi precedenti (come Jamba), l'applicazione di un'architettura ibrida Mamba-Attention unita a una granularità fine di Mixture-of-Experts (MoE) su questa scala (SLM) rappresenta un passo avanti significativo per l'efficienza on-device.
- Chiarezza: 4/5. Il paper è ben strutturato, le motivazioni dietro la scelta dell'architettura ibrida sono spiegate chiaramente, con benchmark comparativi che isolano i benefici dei singoli componenti.
- Riproducibilità: 3/5. I pesi del modello sono disponibili su HuggingFace sotto licenza NVIDIA, permettendo l'uso immediato. Il framework di addestramento fa riferimento a NVIDIA NeMo (open source). Tuttavia, il codice esatto per la pipeline di data curation non è completamente trasparente.
- Costi: 2/5.
- Inference: Altamente accessibile. Il modello è progettato per girare su hardware consumer (es. NVIDIA GeForce RTX 4090 o laptop con RTX serie 40) con un memory footprint contenuto, specialmente se quantizzato.
- Training: Non replicabile da piccoli laboratori indipendenti. Il pre-training ha richiesto 4 trilioni di token su un cluster massiccio di GPU H100, un budget fuori portata per la maggior parte dei laboratori di ricerca accademici o singoli developer.
Nemotron 3 Nano: Metodi e tecniche
Le tecniche principali ruotano attorno all'ibridazione dell'architettura e all'uso avanzato dei dati sintetici.
Hybrid Architecture (Mamba-2 + Attention)
Il modello non è un semplice Transformer, ma alterna blocchi basati su Mamba-2 (State Space Models) e blocchi di Attention standard. Mamba-2 offre una complessità lineare per i dettagli critici.
La discretizzazione in Mamba trasforma parametri continui in discreti per la ricorrenza:
Dove è lo stato nascosto che comprime la storia passata. In Nemotron 3 Nano, questi blocchi sono intercalati con livelli di sliding window attention o global attention.
Mixture-of-Experts (MoE)
Il modello utilizza un router per attivare solo un sottoinsieme di "esperti" (Feed Forward Networks indipendenti) per ogni token.
Ecco una rappresentazione in pseudo-codice (PyTorch-like) di un blocco ibrido semplificato:
import torch
import torch.nn as nn
class HybridMoEBlock(nn.Module):
def __init__(self, dim, num_experts, active_experts, layer_type='mamba'):
super().__init__()
self.layer_type = layer_type
self.norm = nn.RMSNorm(dim)
# Core mixing layer: Mamba or Attention
if layer_type == 'mamba':
self.mixer = Mamba2Block(dim) # Linear complexity
else:
self.mixer = SelfAttention(dim) # Quadratic complexity
# MoE Router and Experts
self.router = nn.Linear(dim, num_experts)
self.experts = nn.ModuleList([
nn.Sequential(
nn.Linear(dim, 4 * dim),
nn.SiLU(),
nn.Linear(4 * dim, dim)
) for _ in range(num_experts)
])
self.num_active = active_experts
def forward(self, x):
residual = x
x = self.norm(x)
# 1. Token Mixing (Temporal interaction)
x = self.mixer(x)
# 2. MoE FeedForward (Channel interaction)
# Calcolo le probabilità del router
router_logits = self.router(x)
weights, selected_experts = torch.topk(router_logits, self.num_active, dim=-1)
weights = torch.softmax(weights, dim=-1)
# Esecuzione degli esperti selezionati (semplificato)
moe_out = torch.zeros_like(x)
for i in range(self.num_active):
expert_idx = selected_experts[:, :, i]
expert_out = self.experts[expert_idx](x)
moe_out += weights[:, :, i].unsqueeze(-1) * expert_out
return residual + moe_out
Two-Stage Training (Macaroni)
NVIDIA adotta una strategia simile a quella vista in Llama 3:
- General Pre-training: Su 4 trilioni di token per apprendere la struttura del linguaggio e la conoscenza del mondo.
- Annealing / Refinement: Una fase finale su dati di altissima qualità e distribuzioni più simili al task finale (instruction tuning, reasoning chains) per stabilizzare il modello prima del SFT.
Nemotron 3 Nano: Dataset
Il dataset utilizzato per il pre-training è una mixture proprietaria denominata "Macaroni". Non è pubblico, ma il paper descrive la sua composizione:
- Dimensione: 4 Trilioni di token.
- Mixture: Include un'alta quantità di codice, matematica e dati multilingua.
- Synthetic: Una parte significativa dei dati di fine-tuning (SFT) proviene da generazione sintetica filtrata tramite Nemotron-4 340B Reward Model, garantendo che solo esempi di alta qualità (con reasoning steps corretti) vengano mostrati al modello.
- Alignment: Utilizza Direct Preference Optimization (DPO) o varianti simili (come SteerLM) per allineare il modello alle preferenze umane, riducendo le allucinazioni.
Nemotron 3 Nano: Licenze
Il modello è rilasciato sotto la NVIDIA Open Model License. Questa licenza permette generalmente l'uso commerciale e di ricerca, la modifica e la distribuzione dei derivati, a patto di rispettare le policy di utilizzo accettabile (non generare malware, hate speech, ecc.). È una licenza "permissive" ma non strettamente Open Source secondo la definizione OSI (Open Source Initiative) a causa di alcune restrizioni legali tipiche dei modelli aziendali.