Shortcuts

Source code for pytorch_lightning.utilities.seed

# Copyright The PyTorch Lightning team.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Utilities to help with reproducibility of models."""
from contextlib import contextmanager
from typing import Any, Generator

import torch

from lightning_lite.utilities.seed import _collect_rng_states, _set_rng_states
from lightning_lite.utilities.seed import pl_worker_init_function as new_pl_worker_init_function
from lightning_lite.utilities.seed import reset_seed as new_reset_seed
from lightning_lite.utilities.seed import seed_everything as new_seed_everything
from pytorch_lightning.utilities.rank_zero import rank_zero_deprecation


[docs]@contextmanager def isolate_rng() -> Generator[None, None, None]: """A context manager that resets the global random state on exit to what it was before entering. It supports isolating the states for PyTorch, Numpy, and Python built-in random number generators. Example: >>> torch.manual_seed(1) # doctest: +ELLIPSIS <torch._C.Generator object at ...> >>> with isolate_rng(): ... [torch.rand(1) for _ in range(3)] [tensor([0.7576]), tensor([0.2793]), tensor([0.4031])] >>> torch.rand(1) tensor([0.7576]) """ states = _collect_rng_states() yield _set_rng_states(states)
def seed_everything(*args: Any, **kwargs: Any) -> Any: rank_zero_deprecation( "`pytorch_lightning.utilities.seed.seed_everything` has been deprecated in v1.8.0 and will be" " removed in v1.10.0. Please use `lightning_lite.utilities.seed.seed_everything` instead." ) return new_seed_everything(*args, **kwargs) def reset_seed() -> None: rank_zero_deprecation( "`pytorch_lightning.utilities.seed.reset_seed` has been deprecated in v1.8.0 and will be" " removed in v1.10.0. Please use `lightning_lite.utilities.seed.reset_seed` instead." ) return new_reset_seed() def pl_worker_init_function(*args: Any, **kwargs: Any) -> None: rank_zero_deprecation( "`pytorch_lightning.utilities.seed.pl_worker_init_function` has been deprecated in v1.8.0 and will be" " removed in v1.10.0. Please use `lightning_lite.utilities.seed.pl_worker_init_function` instead." ) return new_pl_worker_init_function(*args, **kwargs)

© Copyright Copyright (c) 2018-2022, Lightning AI et al... Revision f4fcad36.

Built with Sphinx using a theme provided by Read the Docs.
Read the Docs v: latest
Versions
latest
stable
1.8.3post1
1.8.3.post0
1.8.3
1.8.2
1.8.1
1.8.0.post1
1.8.0
1.7.7
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
1.7.1
1.7.0
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.10
1.5.9
1.5.8
1.5.7
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.9
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.8
1.3.7
1.3.6
1.3.5
1.3.4
1.3.3
1.3.2
1.3.1
1.3.0
1.2.10
1.2.8
1.2.7
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.1.8
1.1.7
1.1.6
1.1.5
1.1.4
1.1.3
1.1.2
1.1.1
1.1.0
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.10.0
0.9.0
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.6
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.0
0.5.3
0.4.9
Downloads
html
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.