set_seed¶
- torchtune.training.set_seed(seed: Optional[int] = None, debug_mode: Optional[Union[int, str]] = None) int [source]¶
此函数为常用库中的伪随机数生成器设置种子。
这将为 PyTorch、NumPy 和 python.random 模块设置种子。对于分布式作业,每个本地进程都设置自己的种子,计算方式为:种子 + 进程排名。 更多详情,请参阅 https://pytorch.ac.cn/docs/stable/notes/randomness.html。
- 参数:
seed (Optional[int]) – 整数种子值。如果为 None,将生成并设置一个随机种子。
debug_mode (Optional[Union[str, int]]) –
控制 PyTorch 中确定性操作的 debug_mode 设置。
如果为 None,则不设置任何 PyTorch 全局值。
如果为 “default” 或 0,则不对非确定性操作报错或警告,并启用 PyTorch CuDNN 基准测试。
如果为 “warn” 或 1,则对非确定性操作发出警告,并禁用 PyTorch CuDNN 基准测试。
如果为 “error” 或 2,则对非确定性操作报错,并禁用 PyTorch CuDNN 基准测试。
更多详情,请参阅
torch.set_deterministic_debug_mode()
和 https://pytorch.ac.cn/docs/stable/notes/randomness.html#avoiding-nondeterministic-algorithms。
- 返回:
当前种子
- 返回类型:
- 抛出:
ValueError – 如果输入的种子值超出所需范围。