How to compute the likelihood function based on kernel density estimation results?

For example, this example:
https://discourse.pymc.io/t/how-to-set-up-a-custom-likelihood-function-for-two-variables/906
provided a good answer how to use any blackbox likelihood function but it does not cover the case that computes the likelihood function based on some empirical density function estimated by KDE.

I think either I missed the part that how to work more with the interpolated function or something else. I have been searching around for hours but do not have luck… After trying for several hours, I think your sense on where the error is is correct. I think the mu that picked in the instance contains two parts, which is value and name, which makes KDE does not know how to deal with this case (it can only deal with number, not something working like a dict with two attributes). The return value from KDE needs to contain two parts as well, it can not be simply a raw number since in the model instance it require to have 2 attributes.

Could you give me some suggestions to modify my likelihood function so that it works with KDE and interpolated()?