i think i understand the difference between the overlapping SBM and
mixed-membership SBM (introduced by Airoldi et al, 2009).

in MMSBM, a given node can be in multiple blocks, their membership is
discrete (0-1)

in overlapping SBM, a given node can also be a member of multiple blocks,
but it with some probability (i.e., node v is in block B1 with probability
1/2, block B2 with probability 2/3, and all other blocks with probability
0).

is there any way to implement MMSBM in graph-tool?

also, slightly unrelated, is there any way to fit a hierarchical model with
2 levels where the top level is overlapping and the bottom level is not?

i think i understand the difference between the overlapping SBM and
mixed-membership SBM (introduced by Airoldi et al, 2009).

in MMSBM, a given node can be in multiple blocks, their membership is
discrete (0-1)

in overlapping SBM, a given node can also be a member of multiple blocks,
but it with some probability (i.e., node v is in block B1 with probability
1/2, block B2 with probability 2/3, and all other blocks with probability
0).

is there any way to implement MMSBM in graph-tool?

Yes, just select "deg_corr=False" when using the overlapping model.

also, slightly unrelated, is there any way to fit a hierarchical model with
2 levels where the top level is overlapping and the bottom level is not?