About random function in numpy

sir, I want to know how the random function works as it can even give random numbers in a given range.
it would be a great help if you may tell me the algorithm for it.