fix(template): keep MiMo dependencies optional - #9886
Merged
hjh0119 merged 1 commit intoAug 11, 2026
Conversation
Delay qwen_vl_utils imports until MiMo media processing so unrelated template, dataset, and trainer imports keep working without the optional package. Add a subprocess regression test that blocks the dependency explicitly. Test: python tests/run.py --test_dir tests/general --pattern test_optional_template_dependencies.py
Contributor
Author
|
CI note: the new optional-dependency regression test passes in the CUDA run |
hjh0119
approved these changes
Aug 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR type
PR information
MiMo-V2.5 support added
qwen_vl_utilsas a module-level import inswift.template.templates.mimo. Because all template modules are registeredwhen
swift.templateis imported, environments without that model-specificoptional dependency could no longer import unrelated template, dataset,
inference, trainer, or export modules.
This is visible in the NPU job for #9880, where 34 test modules failed during
collection with:
The dependency is already declared in the MiMo model's
requireslist. Thischange follows the existing Qwen, Llava, Dots, and Valley template pattern by
importing
fetch_imageandfetch_videoonly when MiMo media is actuallyprocessed. MiMo users still receive the dependency error at the relevant
feature boundary, while unrelated imports remain available.
A subprocess regression test explicitly blocks every
qwen_vl_utilsimportand verifies that
swift.templatestill imports successfully.Experiment results
Before:
After:
The local environment does not have
qwen-vl-utilsinstalled, so the directswift.template,swift.infer_engine.protocol, andswift.datasetimportsalso verify the real missing-dependency path.