ShawnYue
Person E: utils, experiment scripts, report figure generator; omit HF-rejected binaries
f102f56
Raw
History Blame
707 Bytes
"""Global RNG seeding for reproducible runs."""
import os
import random
import numpy as np
import torch
def set_seed(seed: int = 42, *, deterministic_cudnn: bool = True) -> None:
"""
Set Python / NumPy / Torch seeds for reproducibility.
Args:
seed: Integer seed.
deterministic_cudnn: If True, use deterministic cuDNN (slower, more reproducible).
"""
random.seed(seed)
np.random.seed(seed)
torch.manual_seed(seed)
if torch.cuda.is_available():
torch.cuda.manual_seed_all(seed)
if deterministic_cudnn:
torch.backends.cudnn.deterministic = True
torch.backends.cudnn.benchmark = False
os.environ["PYTHONHASHSEED"] = str(seed)