Hi,
There is no builtin way to do this.
But you can do it by using multiple convs:
if you want your filter to be a MLP that takes an chan_in x in x in patch, then the hidden layer has hidden size and then output chan_out values so that the whole thing transforms an image of size Batch x chan x in x in -> Batch x chan_out x 1 x 1 (increasing the size in will increase the output size from 1 to something else depending on stride/padding).
You can use 2 conv with the following parameters:

first convolution will change the channels from chan_in to hidden and kernel size will be in x in with the stride and padding of the original conv
Add a Relu or whatever non-linearity you want here.
second conv will change channels from hidden to chan_out and kernel size will be 1 x 1, stride 1 and no padding.

I haven’t tested so some numbers might be off, but that should work