Yield reduces latency (the time you have to wait for the first result) and can reduce memory requirement (because you don't have to save all the results until the whole batch is complete).
If those things are importnat then yield could be beneficial, but if those things don't matter to your application then yield could just make your code less readble and slower. It is important to chekc whether generators are applicable to your application.
To use your analogy, if it turns out that most customers want 500 takoballs at a time, then running backwards and forwards fetching each one as soon as it is cooked is going to be very inefficient.