I've tried a few three person programming sessions with a live pycharm collaborative session (whatever they call it) - what I thought was interesting is we naturally divided responsibilities.
2 people would do more direct pair programming of one doing more thinking / design / instructing and the other is the workhorse and supplemental designer. The third would be the polisher and tester, and participate in design as well when able to.
Idk if there is a role-based analogue in larger social groups but interesting to think about.
mob programming is a thing. one person at the keyboard and a huge screen or a projector and everyone else discussing what to do. it works because the display is the focus. people might break into smaller groups to have discussions, but they are still focused on the task and potentially they discuss different aspects or ideas and present results to the group.
in the end it is like every classroom or presentation or group discussion. people are either engaged or they aren't. but breaking into smaller groups is not necessarily a problem in itself if everyone is still focused.