I don’t believe this was ever in question. You can think of the model as a giant function that takes a list vectors as input and spits out a new vector. If you want the model to remember something, you have to include it in the list of input vectors for every request going forward.
It’s stateful in the web demo. But they do so by prepending chat history to new requests and automatically summarizing history once the model’s context window is exceeded.