Среда:
Google Colab (Python 3.12)
PyTorch Lightning: 2.5.6 (последняя версия)
NumPy: 2.2.1 (последняя версия от Colab)
PyTorch: 2.5.1+cu121
Контрольная точка: обучение на более старых версиях в 2023 году.
Код:
Код: Выделить всё
import pytorch_lightning as pl
from experiment import LitModel
# Attempt 1: Direct loading
model = LitModel.load_from_checkpoint('checkpoints/ffhq256_autoenc.ckpt', map_location='cuda', strict=False)
Код: Выделить всё
ModuleNotFoundError: No module named 'numpy.lib.function_base'
Traceback:
File "/content/DiffProtect/experiment.py", line 8, in
import pytorch_lightning as pl
...
Попытка 1: Альтернативный метод загрузки
Код: Выделить всё
import torch
checkpoint = torch.load('checkpoints/ffhq256_autoenc.ckpt', map_location='cuda')
model = LitModel(conf)
model.load_state_dict(checkpoint['state_dict'], strict=False)
Попытка 2: проверка версии numpy
Код: Выделить всё
import numpy as np
print(np.__version__) # 2.2.1
В руководстве по миграции NumPy 2.0 упоминается:
Код: Выделить всё
numpy.lib.function_basePyTorch Lightning менял формат контрольной точки между версиями
Последний раз репозиторий DiffProtect обновлялся в 2023 году (до NumPy 2.0)
Вопрос:
Как я могу успешно загрузить эту старую контрольную точку в современной среде Google Colab? Мне нужно решение, которое:
- Работает в Google Colab (среда 2024/2025)
- Загружает контрольную точку PyTorch Lightning 2023 года
- Не нарушает другие зависимости
- Позволяет модели выполнять логические выводы на графическом процессоре
Подробнее здесь: https://stackoverflow.com/questions/798 ... en-loading
Мобильная версия