How powerful you are doesn't matter. To form an alliance you need the following conditions :
- BOTH of you must have the Alliance technology researched. (So if the other doesn't have it, it never hurts to just give it to them.)
- You MUST be "close" in your relations with them. Not friendly, not warm. Close.
Then you'll have the option for an alliance. Note that if your potential alliance partner gets attacked often, it might be wise to not make an alliance, since you'll have to go to war if they're attacked (or cancel the alliance), and that kills all your trade routes, which could wind up costing you 200 bc per week...
I think they need a little work, a race should be more hesitant to attack another race if they have alliances, and the allies really should come to your aid once you're at war. I've been allied with the humans many times, and everytime I have someone attack me, they declare war as well, then sit back and watch me do all the fighting.
Dirty humans!