I’m not sure how you are using the code, which yields the error message, but I guess you are trying to print the gradients of model.down.weight.
If that’s the case, not that you are creating a new parameter as self.down.weight, while it seems you would like to replace the filter kernels from the conv layer.
If my guess is right, you should use self.down[1].weight = nn.Parameter(...).