How to move alot of objects by "Force Field" each one in a different speed
Giving each object a unique weight is the right idea and can be done with two lines of code.
The following loops over every object in a collection, generating and assigning a random mass value between 0 and 1 for each object.
    import bpy
    import random
    
    
    for obj in bpy.data.collections['obs'].all_objects:
        obj.rigid_body.mass = random.random()

If you want to specify limits on the values of mass, the following sets each object's rigid body mass to a random value between 0.2 and 0.5:
    import bpy
    import random
    
    
    for obj in bpy.data.collections['obs'].all_objects:
    obj.rigid_body.mass = random.uniform( 0.2 , 0.5 )

This is straight forward within Blender:
1.Make sure all your objects are in their own collection - here I've named it 'obs'


Open a new text editor window:



Create new text file:



Add code, using the name of your collection ('obs' in this case) then click the run button to execute.