Based on @Roland.Reyer's answer up there, my solution would be this: Make a for-each loop. The max iterations should be set to the number of different, random offsets you wish to instance, so if you want 20 different animations, set it to 20.
Inside that for-each loop, add a time node, add a random number to it that changes (current_iteration into seed), then a modulo for looping (modulo returns the remainder of a division, so if you have 40 frames and a modulo set to 40, on frame 41 it will return 1, frame 42 returns 2, etc). Plug the modulo into the frame input of your alembic read node and connect that to the output f the loop.
This will generate the number of instance geometries you want, with random animations.


Jason Brown
Software Developer, Bifrost