You can just clip the weights of the parameters after each optimization update.
class WeightClipper(object):
def __init__(self, frequency=5):
self.frequency = frequency
def __call__(self, module):
# filter the variables to get the ones you want
if hasattr(module, 'weight'):
w = module.weight.data
w = w.clamp(-1,1)
model = Net()
clipper = WeightClipper()
model.apply(clipper)
created with inspiration from this post