# Building a hierarchical model using a Black Box loglikelihood function

**URL:** <https://discourse.pymc.io/t/building-a-hierarchical-model-using-a-black-box-loglikelihood-function/10435>\
**Category:** version agnostic\
**Created:** [September 20, 2022, 7:40pm UTC](https://discourse.pymc.io/t/building-a-hierarchical-model-using-a-black-box-loglikelihood-function/10435 "2022-09-20T19:40:35Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mmurrow95](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.pymc.io/mmurrow95/32/3574_2.png) [@mmurrow95](https://discourse.pymc.io/u/mmurrow95)\
**Post date:** [September 20, 2022, 7:40pm UTC](https://discourse.pymc.io/t/building-a-hierarchical-model-using-a-black-box-loglikelihood-function/10435/1 "2022-09-20T19:40:35Z")

</div>

I have a question about how to build a hierarchical model using the black box loglikelihood tutorial notebook. In that example, one data set is provided, then the loglikelihood of that data set is calculated using pm.Potential.

Say instead you have 50 data sets you want to fit hierarchically. What does PyMC require be output by Potential in that situation? Should it output a single loglikelihood value corresponding to the total loglikelihood of all participants combined? Or, should it output a vector containing the loglikelihood for each individual data set? Appreciate any input on this!

---

<div class="post-metadata">

**Author:** ![ricardoV94](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.pymc.io/ricardov94/32/5775_2.png) [@ricardoV94](https://discourse.pymc.io/u/ricardoV94)\
**Post date:** [September 20, 2022, 8:13pm UTC](https://discourse.pymc.io/t/building-a-hierarchical-model-using-a-black-box-loglikelihood-function/10435/2 "2022-09-20T20:13:10Z")

</div>

It doesn’t matter. The outputs of a Potential will be summed anyway. For sampling purposes the model logp is always reduced into a scalar.
