diff --git a/pyannote/audio/cli/train.py b/pyannote/audio/cli/train.py index 6e04fcde5..825d7f8ae 100644 --- a/pyannote/audio/cli/train.py +++ b/pyannote/audio/cli/train.py @@ -37,7 +37,7 @@ RichProgressBar, ) from pytorch_lightning.loggers import TensorBoardLogger -from pytorch_lightning.utilities.seed import seed_everything +from lightning_lite.utilities.seed import seed_everything from torch_audiomentations.utils.config import from_dict as get_augmentation from pyannote.audio.core.io import get_torchaudio_info diff --git a/pyannote/audio/core/model.py b/pyannote/audio/core/model.py index 2a49360b9..000b469b6 100644 --- a/pyannote/audio/core/model.py +++ b/pyannote/audio/core/model.py @@ -36,7 +36,7 @@ from huggingface_hub import hf_hub_download from huggingface_hub.utils import RepositoryNotFoundError from pyannote.core import SlidingWindow -from pytorch_lightning.utilities.cloud_io import load as pl_load +from lightning_lite.utilities.cloud_io import _load as pl_load from pytorch_lightning.utilities.model_summary import ModelSummary from semver import VersionInfo from torch.utils.data import DataLoader diff --git a/pyannote/audio/pipelines/voice_activity_detection.py b/pyannote/audio/pipelines/voice_activity_detection.py index 4328e1cbf..0edbea42f 100644 --- a/pyannote/audio/pipelines/voice_activity_detection.py +++ b/pyannote/audio/pipelines/voice_activity_detection.py @@ -346,7 +346,8 @@ def configure_optimizers(model): with tempfile.TemporaryDirectory() as default_root_dir: trainer = Trainer( max_epochs=self.num_epochs, - gpus=1, + accelerator="gpu", + devices=1, callbacks=[GraduallyUnfreeze(epochs_per_stage=self.num_epochs + 1)], enable_checkpointing=False, default_root_dir=default_root_dir, diff --git a/requirements.txt b/requirements.txt index df2e9c1d6..b2d000a27 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,7 @@ pyannote.core >=4.4,<5.0 pyannote.database >=4.1.1,<5.0 pyannote.metrics >=3.2,<4.0 pyannote.pipeline >=2.3,<3.0 -pytorch_lightning >=1.5.4,<1.7 +pytorch_lightning >=1.8.0,<1.9 pytorch_metric_learning >=1.0.0,<2.0 rich >= 12.0.0 semver >=2.10.2,<3.0 diff --git a/tests/tasks/test_reproducibility.py b/tests/tasks/test_reproducibility.py index 39a950464..912548827 100644 --- a/tests/tasks/test_reproducibility.py +++ b/tests/tasks/test_reproducibility.py @@ -1,4 +1,4 @@ -import pytorch_lightning as pl +from lightning_lite.utilities.seed import seed_everything import torch from pyannote.audio.models.segmentation.debug import SimpleSegmentationModel @@ -30,7 +30,7 @@ def get_next5(dl): def test_seeding_ensures_data_loaders(): "Setting a global seed for the dataloaders ensures that we get data back in the same order" - pl.seed_everything(1) + seed_everything(1) for task in [VoiceActivityDetection, MultiLabelSegmentation]: protocol, vad = setup_tasks(task) @@ -50,12 +50,12 @@ def test_different_seeds(): for task in [VoiceActivityDetection, MultiLabelSegmentation]: protocol, vad = setup_tasks(task) - pl.seed_everything(4) + seed_everything(4) dl = create_dl(SimpleSegmentationModel, vad) last5a = get_next5(dl) protocol, vad = setup_tasks(task) - pl.seed_everything(5) + seed_everything(5) dl = create_dl(SimpleSegmentationModel, vad) last5b = get_next5(dl) diff --git a/tutorials/training_a_model.ipynb b/tutorials/training_a_model.ipynb index 167a48c9a..f062bd95d 100644 --- a/tutorials/training_a_model.ipynb +++ b/tutorials/training_a_model.ipynb @@ -180,7 +180,7 @@ ], "source": [ "import pytorch_lightning as pl\n", - "trainer = pl.Trainer(gpus=1, max_epochs=1)\n", + "trainer = pl.Trainer(devices=1, accelerator=\"gpu\", max_epochs=1)\n", "trainer.fit(vad_model)" ] }, @@ -545,7 +545,7 @@ } ], "source": [ - "trainer = pl.Trainer(gpus=1, max_epochs=1)\n", + "trainer = pl.Trainer(devices=1, accelerator=\"gpu\", max_epochs=1)\n", "trainer.fit(finetuned)" ] }, @@ -781,7 +781,7 @@ } ], "source": [ - "trainer = pl.Trainer(gpus=1, max_epochs=1)\n", + "trainer = pl.Trainer(devices=1, accelerator=\"gpu\", max_epochs=1)\n", "trainer.fit(osd_model)" ] }, @@ -854,7 +854,7 @@ "We also benefit from all the nice things [`pytorch-lightning`](ttps://pytorch-lightning.readthedocs.io) has to offer (like multi-gpu training, for instance).\n", "\n", "```python\n", - "trainer = Trainer(gpus=4, strategy='ddp')\n", + "trainer = Trainer(devices=4, accelerator=\"gpu\", strategy='ddp')\n", "trainer.fit(model)\n", "```\n", "\n", diff --git a/tutorials/voice_activity_detection.ipynb b/tutorials/voice_activity_detection.ipynb index 1b80bd391..df2cadd15 100644 --- a/tutorials/voice_activity_detection.ipynb +++ b/tutorials/voice_activity_detection.ipynb @@ -273,7 +273,7 @@ ], "source": [ "import pytorch_lightning as pl\n", - "trainer = pl.Trainer(gpus=1, max_epochs=2)\n", + "trainer = pl.Trainer(devices=1, accelerator=\"gpu\", max_epochs=2)\n", "trainer.fit(model)" ] },