Source code for graphwar.utils.seed

import random
from numbers import Number
from typing import Optional

import numpy as np
import torch

__all__ = ["set_seed"]


[docs]def set_seed(seed: Optional[int] = None) -> Optional[int]: """Set random seed for reproduction. Parameters ---------- seed : Optional[int], optional random seed, by default None Returns ------- Optional[int] the random seed. Example ------- >>> from graphwar import set_seed >>> set_seed(42) 42 """ assert seed is None or isinstance(seed, Number), seed np.random.seed(seed) random.seed(seed) if seed is not None: torch.manual_seed(seed) torch.cuda.manual_seed(seed) # torch.cuda.manual_seed_all(seed) return seed