It also creates and updates models, uses those models to make predictions, and guides the stochastic generation by comparing the output to those models and reworks them in real time.