True, but this entire loop happens within the model, if you would return an output at every intermediate step the model would be extremely slow.
My take on why they have build the output layer like it is, is that next to feeling more human, it also forces you to be a bit more thoughtfull with your requests, and thus spam the system less. In the end it is still really expensive to run these models..