Throw this in a point wrangle inside of a for loop with a foreach metada plugged into input 2 to create groups of points per each loop iteration. Great way to group out individual objects that are mashed into one alembic without proper names if you create a "for each connected piece" loop and change it to run over points instead of primitives.
// Set point group name based on for loop iteration
// foreach metadata must be in input 2
setpointgroup(0, sprintf("group_%i", int(detail(1, "iteration", 0))), @ptnum, 1, "set");