Serving#

Serving in FlashDreams is integration-driven at the model/runtime layer, while WebRTC provides the shared browser-facing transport for realtime demos.

Serving building blocks#

  • Runner config defines serving-relevant I/O fields (prompts, control tensors, image paths, output transport).

  • Pipeline manages model lifecycle and cached state across steps.

  • Shared WebRTC transport handles browser session I/O, request routing, data-channel controls, and media responses for realtime demos.

  • Integration runtime owns model-specific checkpoint setup, conditioning, prompt/scene semantics, and chunk generation.

Reference integration#

The public WebRTC demos provide concrete examples of the shared serving stack:

  • shared transport code under flashdreams/flashdreams/serving/webrtc/,

  • LingBot runner and runtime wiring under integrations/lingbot/lingbot/,

  • OmniDreams WebRTC runtime wiring under integrations/omnidreams/omnidreams/webrtc/.

Launch patterns#

Single GPU:

uv run flashdreams-run \
    lingbot-world-fast --example-data True --total-blocks 21

Multi GPU:

uv run torchrun --nproc_per_node=2 --no-python flashdreams-run \
    lingbot-world-fast --example-data True --total-blocks 21

See also#