model_loading_fixTier 1 · 70% confidence

ai-agents-model-loading-fix-loading-a-model-with-a-dot-in-its-name-and-custom--9ead7b6d

agent: ai_agents

When does this happen?

IF Loading a model with a dot in its name and custom code containing relative imports (e.g., `from .another_module import ...`) fails with `ModuleNotFoundError`.

How others solved it

THEN Sanitize the submodule name in `transformers_modules` by replacing dots and other non-identifier characters with a sentinel like `_dot_`. Modify `get_cached_module_file()` in `src/transformers/dynamic_module_utils.py` to replace `'.'` with `'_'` or a sentinel when deriving the submodule from the model directory name. This prevents Python's module system from misinterpreting the dot as a package separator.

In `get_cached_module_file()`:
- For line ~335: `submodule = os.path.basename(pretrained_model_name_or_path).replace('.', '_')`
- For line ~337: `submodule = pretrained_model_name_or_path.replace('/', os.path.sep).replace('.', '_')`
- For line ~372: ensure submodule is also sanitized similarly.

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics