hiyouga/LlamaFactory · error · ValueError
This model does not support image input. Please check whethe
Error message
This model does not support image input. Please check whether the correct `template` is used.
What it means
ValueError from BasePlugin._validate_inputs during multimodal preprocessing: the sample contains images, but the active mm_plugin/template defines no image_token (e.g. the plugin's IMAGE_TOKEN is None), meaning this model/template combination has no image input support. It is a template-vs-modality mismatch, detected before any processor call.
Source
Thrown at src/llamafactory/data/mm_plugin.py:163
expand_mm_tokens: bool = True
def _validate_input(
self,
processor: Optional["MMProcessor"],
images: list["ImageInput"],
videos: list["VideoInput"],
audios: list["AudioInput"],
) -> None:
r"""Validate if this model accepts the input modalities."""
image_processor: BaseImageProcessor = getattr(processor, "image_processor", None)
video_processor: BaseImageProcessor = getattr(
processor, "video_processor", getattr(processor, "image_processor", None)
)
feature_extractor: SequenceFeatureExtractor = getattr(processor, "feature_extractor", None) or getattr(
processor, "audio_processor", None
)
if len(images) != 0 and self.image_token is None:
raise ValueError(
"This model does not support image input. Please check whether the correct `template` is used."
)
if len(videos) != 0 and self.video_token is None:
raise ValueError(
"This model does not support video input. Please check whether the correct `template` is used."
)
if len(audios) != 0 and self.audio_token is None:
raise ValueError(
"This model does not support audio input. Please check whether the correct `template` is used."
)
if self.image_token is not None and processor is None:
raise ValueError("Processor was not found, please check and update your model file.")
if self.image_token is not None and image_processor is None:
raise ValueError("Image processor was not found, please check and update your model file.")View on GitHub (pinned to f28afaf635)
Solutions
- Set template in the YAML to the model's official multimodal template (e.g. qwen, llava, mllama) so an image-capable plugin is selected.
- Confirm model_name_or_path points to the full multimodal checkpoint, not the language-model-only backbone.
- If training text-only, remove images/`<image>` placeholders from the dataset.
- Check data/template.py to verify the chosen template registers an mm_plugin with an image token.
Example fix
# before (train.yaml for Qwen2-VL) template: llama3 # after template: qwen
Defensive patterns
Strategy: validation
Validate before calling
# before training: confirm the chosen plugin supports images
from llamafactory.data.template import get_template_and_fix_tokenizer
# plugin check happens at preprocessing; cheap proxy:
def template_supports_image(template_name: str, mm_plugins: dict) -> bool:
return mm_plugins.get(template_name, {}).get("image_token") is not None Prevention
- Always set template to the model's official multimodal template name from data/template.py.
- Change template whenever you change model_name_or_path to a different modality family.
- Strip images/<image> tags for text-only runs.
When it happens
Trigger: Using a multimodal dataset (images column or <image> placeholders) with a text-only template (e.g. default llama template) or a template whose registration maps to a plugin without image support; setting a vision model's template string incorrectly so the wrong plugin is selected.
Common situations: Fine-tuning a VLM (Qwen-VL, Llava, etc.) while leaving template: default or a chat template from the base LLM; forgetting to switch the template after changing model_name_or_path to a multimodal checkpoint.
Related errors
- This model does not support video input. Please check whethe
- This model does not support audio input. Please check whethe
- Please upgrade `transformers` to 4.34.0
- Unable to process key {key}
- Invalid length
AI-assisted analysis of hiyouga/LlamaFactory@f28afaf635 (2026-08-14).
Data as JSON: /api/errors/75f56a911d096b3f.
Report an issue: GitHub.