Hi,
no he meant to use the torch.nn.functional API 4.
So instead of writting nn.Conv2d and defining a Python object, which contains all the parameters, you would write F.conv2d(input, weight, bias, stride=1, padding=0, dilation=1, groups=1), which is just a Python function calling the convolution operation on your input. BUT you have to define your parameters by yourself in your nccuc function and give them as input to the function (e.g. F.conv2d).
Edit: What you where doing is defining you layers (as a object) every time you call the nccuc function and running them once with your input. This way your model and parameters get new defined every time you call nccuc.