One word at a time
Here is the entire mechanical description of how a language model writes. Four steps.
It reads the text so far. It produces a score for every token in its vocabulary. One of those tokens is chosen. That token is added to the text, and the model runs again on the slightly longer version.
That is the loop. The model does not write a finished paragraph and reveal it word by word. Each token it commits changes the input for the next one.
Applications can build more around this. They can have the model write out reasoning the user never sees, run a search, or take a second pass over a finished draft. All of those are extra rounds of the same loop rather than a different mechanism. Within one pass, already emitted tokens are fixed unless the application starts another pass.
That single constraint, always forward, never back, explains a surprising amount of how these models behave, including a particular way they get themselves stuck.