Packing spheres in volume of shape

For a rough approximation you can use the volume fraction approach Ethan gives above. The actual number of spheres would generally be less than predicted by this though, depending on their size relative to the volume, its shape, and how they are physically put in there

are these ball-bearings pouring into a hopper, oranges being carefully placed by hand…?

For a physics approach you can try this:
FillVolumeWithSpheres.gh (22.4 KB)
It uses a script which will ask for a reference assembly location, and you need to set the location of your KangarooSolver dll, which is generally
C:\Program Files\Rhino 6\Plug-ins\Grasshopper\Components
There’s a slider for the number of spheres, which you can gradually increase, and their colour is an indication of the pressure, or how much they are overlapping. So if you slowly slide up the number until they are no longer all green, you can see how many fit.
You could also optionally add a Grab component to let you give them a stir if needed to see if they can rearrange to a denser arrangement.
It would also be possible with a bit more work to script the adding of spheres, so it would automatically add them until it was full.