How to augment gamma correction randomly?

The document us how to add gamma correction, but it seems to use a constant gain for the transformation. Is there any way to adjust randommly?

You could write a custom transformation using the functional API es described here.
You could pass the desired ranges for gamma and gain, sample these values randomly in the __call__ method, and apply them on your images.

class RandomGammaCorrection(object):
Apply Gamma Correction to the images

def __init__(self, gamma = None):
    self.gamma = gamma
def __call__(self,image):
    if self.gamma == None:
        # more chances of selecting 0 (original image)
        gammas = [0,0,0,0.5,1,1.5]
        self.gamma = random.choice(gammas)
    if self.gamma == 0:
        return image
        return TF.adjust_gamma(image, self.gamma, gain=1)