Dynamic loading of in-game generated content

I’m starting to work on a project that generates a random city on a new game start. This involves generating buildings, floors, rooms, furniture etc. As there will be a large number of buildings and floors I need to dynamically load and unload parts of them, similar to what level streaming is usually used for.

There’s no problem in generating triggers etc, but how can I divide the runtime generated content into separate sections, so that I can dynamically load/save/unload them? I’m only familiar with creating levels for level streaming in-editor. Is there some built-in functionality in UE5 that allows to define them during runtime?