Pytorch-lightining - 无法导入名称“_TRANSFORMERS_GREATER_EQUAL_4_4”

问题描述 投票:0回答:1

当我尝试进行以下导入时:

import torch
from torch.nn import functional as F
from torch import nn
from torch.utils.data import TensorDataset, DataLoader

from torchvision import datasets, transforms

from pytorch_lightning.core.lightning import LightningModule
from pytorch_lightning import Trainer
from torchmetrics.functional.classification.accuracy import accuracy

我收到导入错误:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
Cell In[77], line 8
      4 from torch.utils.data import TensorDataset, DataLoader
      6 from torchvision import datasets, transforms
----> 8 from pytorch_lightning.core.lightning import LightningModule
      9 from pytorch_lightning import Trainer
     10 from torchmetrics.functional.classification.accuracy import accuracy

File d:\anaconda3\envs\dl\Lib\site-packages\pytorch_lightning\__init__.py:26
     23     _logger.propagate = False
     25 from lightning_fabric.utilities.seed import seed_everything  # noqa: E402
---> 26 from pytorch_lightning.callbacks import Callback  # noqa: E402
     27 from pytorch_lightning.core import LightningDataModule, LightningModule  # noqa: E402
     28 from pytorch_lightning.trainer import Trainer  # noqa: E402

File d:\anaconda3\envs\dl\Lib\site-packages\pytorch_lightning\callbacks\__init__.py:14
      1 # Copyright The Lightning AI team.
      2 #
      3 # Licensed under the Apache License, Version 2.0 (the "License");
   (...)
     12 # See the License for the specific language governing permissions and
     13 # limitations under the License.
---> 14 from pytorch_lightning.callbacks.batch_size_finder import BatchSizeFinder
     15 from pytorch_lightning.callbacks.callback import Callback
...
---> 28 from torchmetrics.utilities.imports import _TRANSFORMERS_GREATER_EQUAL_4_4
     30 if _TRANSFORMERS_GREATER_EQUAL_4_4:
     31     from torchmetrics.functional.text.bert import bert_score

ImportError: cannot import name '_TRANSFORMERS_GREATER_EQUAL_4_4' from 'torchmetrics.utilities.imports' (d:\anaconda3\envs\dl\Lib\site-packages\torchmetrics\utilities\imports.py)

如何解决这个问题?我已经尝试重新安装 torch 和 pytorch lighting。我也尝试安装旧版本的 pytorch-lightining 但没有任何帮助。

编辑: 将 torchmetrics 降级到 0.7.0 时,导入错误消息已更改为:

ImportError: cannot import name 'pit' from 'torchmetrics.functional.audio.pit' (d:\anaconda3\envs\dl\Lib\site-packages\torchmetrics\functional\audio\pit.py)

python pytorch python-import importerror
1个回答
0
投票

创建新的 conda 环境并重新安装所有库有帮助。我还注意到我使用了旧版本的 pytorch 导入,因此有必要进行更改

from pytorch_lightning.core.lightning import LightningModule
import lightning.pytorch as pl
,然后根据文档使用
pl.LightningModule
https://lightning.ai/docs/pytorch/stable/starter/introduction.html

© www.soinside.com 2019 - 2024. All rights reserved.