A variable representing the likelihood knows what shape it’s supposed to have because you give it observed data. It can figure out the shape from that. I can’t run your script since I don’t have your data generating function but I can tell you that the most likely solution is to pass the keyword argument shape=size to the appropriate variable constructor (which I’m guessing is C but I’m not sure).