Introducing SeedBank

Python programs, particularly data science applications, often need to interact with multiple different random number generators.

The SeedBank package provides a unified interface to seeding them, along with APIs for deriving additional RNG seeds in a predictable way (using NumPy 1.17’s new random infrastructure) and construction random generators.

Credit for the name “seedbank” goes to Keith Moore.

Quickstart

To get started, just use the seedbank.initialize() function to seed all available random number generators:

import seedbank
seedbank.initialize(65000)

SeedBank will seed all of the following generators that are available:

In addition, it will initialize a root seed for constructing new-style NumPy numpy.random.Generator() instances.

If SeedBank doesn’t support your RNG yet, please submit a pull request.