If you know an easy way to put some delays into a python script that don't just use CPU cycles doing nothing, but actually return CPU time to be used for other things, feel free to try it.
There's also an item on the programming work
wiki page about modifying the process class to make the AIs lower priority, which might help make the UI more responsive.
You could possibly also tell the server to only send turn updates to one or two AIs at a time, and wait until the others finish their turns before sending out the current turn's update to the others. That would ensure only one or two are actively processing at any given time.