Model Coverage Overview

View as Markdown

NeMo AutoModel integrates with Hugging Face transformers. Any LLM or VLM that can be instantiated through transformers can also be used with NeMo AutoModel, subject to runtime, third-party software dependencies, and feature compatibility.

Supported Hugging Face Auto Classes

Auto ClassTaskStatusDetails
AutoModelForCausalLMText Generation (LLM)SupportedSee LLM model list
AutoModelForSeq2SeqLMText-to-Text (Encoder-Decoder)SupportedSee the HF compatibility mapping and T5 example recipe
Block-Diffusion LLMsText Generation (Diffusion LLM)SupportedSee Diffusion LLM model list
AutoModelForImageTextToTextImage-Text-to-Text (VLM)SupportedSee VLM model list
Custom multimodal modelsUnified multimodal trainingSupportedSee Multimodal model list
AutoModelForSequenceClassificationSequence ClassificationWork in ProgressEarly support; interfaces might change
Diffusers PipelinesDiffusion Generation (T2I, T2V)SupportedSee Diffusion model list
NeMoAutoModelBiEncoderEmbedding ModelsSupportedSee Embedding model list
NeMoAutoModelCrossEncoderReranking ModelsSupportedSee Reranking model list

Release Log

The table below tracks when model support and key features were added across NeMo AutoModel releases. For the full list of tested architectures and example configs, see the LLM, VLM, and Multimodal pages.

ReleaseDateNew ModelsKey Features
0.3.0 (upcoming)Not announcedKimi-VL, Kimi-K25-VL, Gemma 3n, Nemotron-Parse, Qwen3-VL-MoE, Qwen3-Omni, InternVL 3.5, Ministral3, Phi-4-multimodal, Devstral-Small-2, Step-3.5-Flash, Qwen3-Next, Nemotron-3-Nano-30B, FLUX.1-dev, Wan 2.1 T2V, HunyuanVideo 1.5Mixture-of-Experts (MoE) LoRA, expanded VLM coverage, diffusion model training (flow matching)
0.2.0December 2025GPT-OSS 20B/120B, Qwen3, Qwen3-MoE, GLM-4/4-MoE, Qwen2.5-VL, Qwen3-VLSingle- and multi-turn tool calling, streaming dataset, QAT for SFT, sequence classification, async DCP checkpointing, MLflow, CP and sequence packing for MoE
0.1.0October 2025DeepSeek V3/V3.2, more than 40 LLM architectures, Gemma 3 VLMPretraining, knowledge distillation, FP8 (torchao), pipeline parallelism, HSDP, auto pipelining, ColumnMapped dataset
0.1.0a0September 2025Initial LLM and VLM support (Llama, Mistral, Qwen2, Gemma, Phi, and more)MegatronFSDP, packed sequences, Triton LoRA kernels

Day-0 Support

  • NeMo AutoModel closely tracks the latest transformers version and updates its dependency regularly.
  • New models released on the Hugging Face Hub might require the latest transformers version, necessitating a package upgrade.
  • The team is developing a CI pipeline that automatically updates the supported transformers version when a new release is detected, enabling faster day-0 support.

Custom Model Registry

NeMo AutoModel includes a custom model registry that allows teams to:

  • Add custom implementations to extend support to models not yet covered upstream.
  • Provide optimized or faster implementations for specific models while retaining the same NeMo AutoModel interface.

Register an Architecture

The registry matches an architecture name against the first value in the checkpoint’s config.json architectures list. The name is case-sensitive. The registered class must be a torch.nn.Module class that is compatible with the selected NeMoAutoModel* loader and accepts the resolved Hugging Face config as its first constructor argument.

Register in Python

Call register_architecture before constructing or loading the model:

1from nemo_automodel import NeMoAutoModelForCausalLM, register_architecture
2
3from my_package.models import MyModelForCausalLM
4
5register_architecture("MyModelForCausalLM", MyModelForCausalLM)
6model = NeMoAutoModelForCausalLM.from_pretrained("my-org/my-model")

Registering a built-in or previously registered name raises ValueError, even when the same class is registered again. Pass exist_ok=True only when you intentionally want to replace the existing model class.

Register from an Installed Package

An installed package can advertise model classes without requiring application startup code. Add an entry point for each architecture to the package’s pyproject.toml:

1[project.entry-points."nemo_automodel.architectures"]
2MyModelForCausalLM = "my_package.models:MyModelForCausalLM"

The entry-point name is the architecture name, and its value must use the module.path:ClassName format. NeMo AutoModel discovers these entry points when its model registry initializes and imports the target module only when it resolves that architecture. Install the package before starting the Python process. If an entry-point name conflicts with a built-in or another discovered architecture, NeMo AutoModel skips it and logs a warning; use register_architecture(..., exist_ok=True) in application code for an intentional override.

Architecture registration selects a model implementation after the Hugging Face config is resolved. It does not register a new model_type, so the checkpoint config must already be loadable by the installed versions of Hugging Face transformers or NeMo AutoModel.

Ready-to-Run Architectures

The following table lists architectures represented by the ready-to-run YAML recipes in this repository. It includes both NeMo-native implementations and models that use the standard Hugging Face implementation path.

This is a practical starting set rather than an exhaustive compatibility list. NeMo AutoModel can also work with additional models supported by the installed version of the Hugging Face transformers library, although models without a checked-in recipe might require some configuration for a particular training setup.

ArchitectureSourceImplementation
BagelForConditionalGenerationNeMo nativenemo_automodel.components.models.bagel.model.BagelForUnifiedMultimodal
BagelForUnifiedMultimodalNeMo nativenemo_automodel.components.models.bagel.model.BagelForUnifiedMultimodal
BailingMoeV2ForCausalLMNeMo nativenemo_automodel.components.models.ling_v2.model.BailingMoeV2ForCausalLM
DeepseekV32ForCausalLMNeMo nativenemo_automodel.components.models.deepseek_v32.model.DeepseekV32ForCausalLM
DeepseekV3ForCausalLMNeMo nativenemo_automodel.components.models.deepseek_v3.model.DeepseekV3ForCausalLM
DeepseekV4ForCausalLMNeMo nativenemo_automodel.components.models.deepseek_v4.model.DeepseekV4ForCausalLM
DiffusionGemmaForBlockDiffusionNeMo nativenemo_automodel.components.models.diffusion_gemma.model.DiffusionGemmaForBlockDiffusion
Gemma4ForConditionalGenerationNeMo nativenemo_automodel.components.models.gemma4_moe.model.Gemma4ForConditionalGeneration
Gemma4UnifiedForConditionalGenerationNeMo nativenemo_automodel.components.models.gemma4_unified.model.Gemma4UnifiedForConditionalGeneration
Glm4MoeForCausalLMNeMo nativenemo_automodel.components.models.glm4_moe.model.Glm4MoeForCausalLM
Glm4MoeLiteForCausalLMNeMo nativenemo_automodel.components.models.glm4_moe_lite.model.Glm4MoeLiteForCausalLM
Glm5NextForConditionalGenerationNeMo nativenemo_automodel.components.models.glm5_next.model.Glm5NextForConditionalGeneration
GlmMoeDsaForCausalLMNeMo nativenemo_automodel.components.models.glm_moe_dsa.model.GlmMoeDsaForCausalLM
GptOssForCausalLMNeMo nativenemo_automodel.components.models.gpt_oss.model.GptOssForCausalLM
HyMT2ForCausalLMNeMo nativenemo_automodel.components.models.hy_mt2.model.HyMT2ForCausalLM
HYV3ForCausalLMNeMo nativenemo_automodel.components.models.hy_v3.model.HYV3ForCausalLM
InklingForConditionalGenerationNeMo nativenemo_automodel.components.models.inkling.model.InklingForConditionalGeneration
KimiK3ForCausalLMNeMo nativenemo_automodel.components.models.kimi_k3.model.KimiK3ForCausalLM
KimiLinear48BForCausalLMNeMo nativenemo_automodel.components.models.kimi_linear.model.KimiLinear48BForCausalLM
KimiVLForConditionalGenerationNeMo nativenemo_automodel.components.models.kimivl.model.KimiVLForConditionalGeneration
LagunaForCausalLMNeMo nativenemo_automodel.components.models.laguna.model.LagunaForCausalLM
GritLM (LlamaBidirectionalForSequenceClassification)NeMo nativenemo_automodel.components.models.llama_bidirectional.model.LlamaBidirectionalForSequenceClassification
GritLM (LlamaBidirectionalModel)NeMo nativenemo_automodel.components.models.llama_bidirectional.model.LlamaBidirectionalModel
LlamaForCausalLMNeMo nativenemo_automodel.components.models.llama.model.LlamaForCausalLM
MiMoV2FlashForCausalLMNeMo nativenemo_automodel.components.models.mimo_v2_flash.model.MiMoV2FlashForCausalLM
MiniMaxM2ForCausalLMNeMo nativenemo_automodel.components.models.minimax_m2.model.MiniMaxM2ForCausalLM
MiniMaxM3SparseForConditionalGenerationNeMo nativenemo_automodel.components.models.minimax_m3_vl.model.MiniMaxM3SparseForConditionalGeneration
Mistral3ForConditionalGeneration (Ministral3BidirectionalModel)NeMo nativenemo_automodel.components.models.ministral_bidirectional.model.Ministral3BidirectionalModel
Mistral3ForConditionalGenerationNeMo nativenemo_automodel.components.models.mistral4.model.Mistral3ForConditionalGeneration
MuseGlimmerForConditionalGenerationNeMo nativenemo_automodel.components.models.muse_glimmer.model.MuseGlimmerForConditionalGeneration
NemotronH_Nano_Omni_Reasoning_V3NeMo nativenemo_automodel.components.models.nemotron_omni.model.NemotronOmniForConditionalGeneration
NemotronHForCausalLMNeMo nativenemo_automodel.components.models.nemotron_v3.model.NemotronHForCausalLM
NemotronParseForConditionalGenerationNeMo nativenemo_automodel.components.models.nemotron_parse.model.NemotronParseForConditionalGeneration
Qwen2_5OmniForConditionalGenerationNeMo nativenemo_automodel.components.models.qwen2_5_omni.model.Qwen2_5OmniThinkerForConditionalGeneration
Qwen2ForCausalLMNeMo nativenemo_automodel.components.models.qwen2.model.Qwen2ForCausalLM
Qwen3.5 (Qwen3_5ForConditionalGeneration)NeMo nativenemo_automodel.components.models.qwen3_5.model.Qwen3_5ForConditionalGeneration
Qwen3.5-MoE (Qwen3_5MoeForConditionalGeneration)NeMo nativenemo_automodel.components.models.qwen3_5_moe.model.Qwen3_5MoeForConditionalGeneration
Qwen3_8_FlashNextForConditionalGenerationNeMo nativenemo_automodel.components.models.qwen3_8_flash_next.model.Qwen3_8_FlashNextForConditionalGeneration
Qwen3ForCausalLMNeMo nativenemo_automodel.components.models.qwen3.model.Qwen3ForCausalLM
Qwen3MoeForCausalLMNeMo nativenemo_automodel.components.models.qwen3_moe.model.Qwen3MoeForCausalLM
Qwen3NextForCausalLMNeMo nativenemo_automodel.components.models.qwen3_next.model.Qwen3NextForCausalLM
Qwen3VLForConditionalGenerationNeMo nativenemo_automodel.components.models.qwen3_vl.model.Qwen3VLForConditionalGeneration
Step3p5ForCausalLMNeMo nativenemo_automodel.components.models.step3p5.model.Step3p5ForCausalLM
Step3p7ForConditionalGenerationNeMo nativenemo_automodel.components.models.step3p7.model.Step3p7ForConditionalGeneration
AquilaForCausalLMHugging Facetransformers
BaiChuanForCausalLMHugging Facetransformers
BambaForCausalLMHugging Facetransformers
ChatGLMModelHugging Facetransformers
Cohere2ForCausalLMHugging Facetransformers
CohereCompassForConditionalGenerationHugging Facetransformers
CohereForCausalLMHugging Facetransformers
DeciLMForCausalLMHugging Facetransformers
DeepseekForCausalLMHugging Facetransformers
DFlashDraftModelHugging Facetransformers
ExaoneForCausalLMHugging Facetransformers
FalconForCausalLMHugging Facetransformers
Gemma2ForCausalLMHugging Facetransformers
Gemma3ForCausalLMHugging Facetransformers
Gemma3ForConditionalGenerationHugging Facetransformers
GemmaForCausalLMHugging Facetransformers
Glm4ForCausalLMHugging Facetransformers
GlmForCausalLMHugging Facetransformers
GPT2LMHeadModelHugging Facetransformers
GPTBigCodeForCausalLMHugging Facetransformers
GPTJForCausalLMHugging Facetransformers
GPTNeoXForCausalLMHugging Facetransformers
GraniteForCausalLMHugging Facetransformers
GraniteMoeForCausalLMHugging Facetransformers
GritLMHugging Facetransformers
InternLM2ForCausalLMHugging Facetransformers
InternLM3ForCausalLMHugging Facetransformers
InternLMForCausalLMHugging Facetransformers
InternVLForConditionalGenerationHugging Facetransformers
JAISLMHeadModelHugging Facetransformers
LLaDA2MoeModelLMHugging Facetransformers
LLaDAModelLMHugging Facetransformers
Llama4ForConditionalGenerationHugging Facetransformers
LlavaForConditionalGenerationHugging Facetransformers
LlavaNextForConditionalGenerationHugging Facetransformers
LlavaOnevisionForConditionalGeneration (LlavaOneVisionForConditionalGeneration)Hugging Facetransformers
MiniCPM3ForCausalLMHugging Facetransformers
MiniCPM5ForCausalLMHugging Facetransformers
MiniCPMForCausalLMHugging Facetransformers
Ministral3ModelHugging Facetransformers
MistralForCausalLMHugging Facetransformers
MistralForConditionalGenerationHugging Facetransformers
MixtralForCausalLMHugging Facetransformers
NemotronFlashForCausalLMHugging Facetransformers
NemotronForCausalLMHugging Facetransformers
NemotronLabsDiffusionModelHugging Facetransformers
OLMo2ForCausalLMHugging Facetransformers
OLMoEForCausalLMHugging Facetransformers
OLMoForCausalLMHugging Facetransformers
OrionForCausalLMHugging Facetransformers
Phi3ForCausalLMHugging Facetransformers
Phi3SmallForCausalLMHugging Facetransformers
Phi4MultimodalForCausalLMHugging Facetransformers
PhiForCausalLMHugging Facetransformers
Qwen2_5VLForConditionalGenerationHugging Facetransformers
Qwen2MoeForCausalLMHugging Facetransformers
Qwen3OmniForConditionalGenerationHugging Facetransformers
SmolVLMForConditionalGenerationHugging Facetransformers
SolarForCausalLMHugging Facetransformers
StableLmForCausalLMHugging Facetransformers
Starcoder2ForCausalLMHugging Facetransformers
T5ForConditionalGenerationHugging Facetransformers

Having Issues?

If a model from the Hugging Face Hub does not work as expected, see Troubleshooting for common issues and solutions.