@@ -448,7 +448,8 @@ def sample(
448
448
random_seed = [random_seed ]
449
449
if random_seed is None or isinstance (random_seed , int ):
450
450
if random_seed is not None :
451
- np .random .seed (random_seed )
451
+ # np.random.seed(random_seed)
452
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
452
453
random_seed = [np .random .randint (2 ** 30 ) for _ in range (chains )]
453
454
if not isinstance (random_seed , abc .Iterable ):
454
455
raise TypeError ("Invalid value for `random_seed`. Must be tuple, list or int" )
@@ -971,7 +972,8 @@ def _iter_sample(
971
972
model = modelcontext (model )
972
973
draws = int (draws )
973
974
if random_seed is not None :
974
- np .random .seed (random_seed )
975
+ # np.random.seed(random_seed)
976
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
975
977
if draws < 1 :
976
978
raise ValueError ("Argument `draws` must be greater than 0." )
977
979
@@ -1239,7 +1241,8 @@ def _prepare_iter_population(
1239
1241
model = modelcontext (model )
1240
1242
draws = int (draws )
1241
1243
if random_seed is not None :
1242
- np .random .seed (random_seed )
1244
+ # np.random.seed(random_seed)
1245
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
1243
1246
if draws < 1 :
1244
1247
raise ValueError ("Argument `draws` should be above 0." )
1245
1248
@@ -1710,7 +1713,8 @@ def sample_posterior_predictive(
1710
1713
vars_ = model .observed_RVs
1711
1714
1712
1715
if random_seed is not None :
1713
- np .random .seed (random_seed )
1716
+ # np.random.seed(random_seed)
1717
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
1714
1718
1715
1719
indices = np .arange (samples )
1716
1720
@@ -1820,7 +1824,7 @@ def sample_posterior_predictive_w(
1820
1824
Dictionary with the variables as keys. The values corresponding to the
1821
1825
posterior predictive samples from the weighted models.
1822
1826
"""
1823
- np .random .seed (random_seed )
1827
+ # np.random.seed(random_seed)
1824
1828
1825
1829
if isinstance (traces [0 ], InferenceData ):
1826
1830
n_samples = [
@@ -1837,6 +1841,8 @@ def sample_posterior_predictive_w(
1837
1841
models = [modelcontext (models )] * len (traces )
1838
1842
1839
1843
for model in models :
1844
+ if random_seed :
1845
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
1840
1846
if model .potentials :
1841
1847
warnings .warn (
1842
1848
"The effect of Potentials on other parameters is ignored during posterior predictive sampling. "
@@ -1976,7 +1982,8 @@ def sample_prior_predictive(
1976
1982
vars_ = set (var_names )
1977
1983
1978
1984
if random_seed is not None :
1979
- np .random .seed (random_seed )
1985
+ # np.random.seed(random_seed)
1986
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
1980
1987
1981
1988
names = get_default_varnames (vars_ , include_transformed = False )
1982
1989
@@ -2123,7 +2130,8 @@ def init_nuts(
2123
2130
2124
2131
if random_seed is not None :
2125
2132
random_seed = int (np .atleast_1d (random_seed )[0 ])
2126
- np .random .seed (random_seed )
2133
+ # np.random.seed(random_seed)
2134
+ model .default_rng .get_value (borrow = True ).seed (random_seed )
2127
2135
2128
2136
cb = [
2129
2137
pm .callbacks .CheckParametersConvergence (tolerance = 1e-2 , diff = "absolute" ),
0 commit comments