rohitg00/ai-engineering-from-scratch · error · ImportError

could not load {path}

Error message

could not load {path}

What it means

Error "could not load {path}" thrown in rohitg00/ai-engineering-from-scratch.

Source

Thrown at phases/19-capstone-projects/62-vision-language-pretraining/code/main.py:35

from pathlib import Path

import numpy as np
import torch
import torch.nn as nn
import torch.nn.functional as F

THIS_DIR = Path(__file__).resolve().parent
LESSON_59 = THIS_DIR.parent.parent / "59-vit-transformer" / "code"
LESSON_60 = THIS_DIR.parent.parent / "60-projection-layer-modality-align" / "code"
LESSON_61 = THIS_DIR.parent.parent / "61-cross-attention-fusion" / "code"


def _load_module(name: str, path: Path):
    if name in sys.modules:
        return sys.modules[name]
    spec = importlib.util.spec_from_file_location(name, path)
    if spec is None or spec.loader is None:
        raise ImportError(f"could not load {path}")
    mod = importlib.util.module_from_spec(spec)
    sys.modules[name] = mod
    spec.loader.exec_module(mod)
    return mod


_encoder_mod = _load_module("vit_encoder_lesson59", LESSON_59 / "main.py")
_align_mod = _load_module("align_lesson60", LESSON_60 / "main.py")
_dec_mod = _load_module("decoder_lesson61", LESSON_61 / "main.py")

ViTConfig = _encoder_mod.ViTConfig
VisionEncoder = _encoder_mod.VisionEncoder
synthesize_image = _encoder_mod.synthesize_image
MLPProjector = _align_mod.MLPProjector
DecoderConfig = _dec_mod.DecoderConfig
VisionLanguageDecoder = _dec_mod.VisionLanguageDecoder

View on GitHub (pinned to 39ea8a1c6d)

When it happens

Trigger: Thrown at phases/19-capstone-projects/62-vision-language-pretraining/code/main.py:35 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of rohitg00/ai-engineering-from-scratch@39ea8a1c6d (2026-08-26). Data as JSON: /api/errors/25eacac366978c0f. Report an issue: GitHub.