Skip to content

Commit b04a353

Browse files
committed
[docs]: highlight Dreamverse deployment paths + add Server B200 (SSH) guide
Prep for the Dreamverse release by making the deploy story discoverable: - apps/dreamverse/README.md: add a top-level Deployment overview table (Local GPU / Server B200 SSH / Docker / Modal) and a new "Server B200 deployment (SSH)" section with native (source install) and Docker options. Commands mirror the existing launch / docker / ffmpeg scripts; adds a first-boot warmup caveat. - README.md: add a Dreamverse highlight section and a Key Features bullet linking to the app, the live demo, and the deployment guide.
1 parent 2c13793 commit b04a353

2 files changed

Lines changed: 107 additions & 0 deletions

File tree

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ FastVideo has the following features:
4242
- Support H100, A100, 4090
4343
- Support Linux, Windows, MacOS
4444
- See this [page](https://hao-ai-lab.github.io/FastVideo/inference/support_matrix/) for full list of supported models, hardware assumptions, and optimization compatibility.
45+
- Realtime video generation & editing
46+
- [Dreamverse](apps/dreamverse/README.md): stream and "vibe direct" video in realtime ([live demo](https://dreamverse.fastvideo.org/)), deployable on local GPU, a self-hosted B200 server, Docker, or serverless Modal
4547

4648
## Getting Started
4749

@@ -69,6 +71,19 @@ See below for recipes and datasets:
6971
| [FastWan2.1-T2V-1.3B](https://huggingface.co/FastVideo/FastWan2.1-T2V-1.3B-Diffusers) | [Recipe](https://github.com/hao-ai-lab/FastVideo/tree/main/examples/distill/Wan2.1-T2V/Wan-Syn-Data-480P) | [FastVideo Synthetic Wan2.1 480P](https://huggingface.co/datasets/FastVideo/Wan-Syn_77x448x832_600k) |
7072
| [FastWan2.2-TI2V-5B](https://huggingface.co/FastVideo/FastWan2.2-TI2V-5B-Diffusers) | [Recipe](https://github.com/hao-ai-lab/FastVideo/tree/main/examples/distill/Wan2.2-TI2V-5B-Diffusers/Data-free) | [FastVideo Synthetic Wan2.2 720P](https://huggingface.co/datasets/FastVideo/Wan2.2-Syn-121x704x1280_32k) |
7173

74+
## Dreamverse — Realtime Video Generation & Editing
75+
76+
[Dreamverse](apps/dreamverse/README.md) is FastVideo's realtime video generation
77+
and editing platform — "vibe directing" a video as it streams. It lives in the
78+
monorepo under [`apps/dreamverse/`](apps/dreamverse/) and ships its own backend
79+
(`dreamverse-server`) plus a web UI.
80+
81+
Try the [live demo](https://dreamverse.fastvideo.org/), read the
82+
[blog](https://haoailab.com/blogs/dreamverse/), or run it yourself. Dreamverse
83+
deploys on a local GPU, a self-hosted B200 server over SSH, Docker, or
84+
serverless [Modal](apps/dreamverse/scripts/modal/README.md) — see the
85+
[Dreamverse deployment guide](apps/dreamverse/README.md#deployment).
86+
7287
## Inference
7388

7489
### Generating Your First Video

apps/dreamverse/README.md

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@
22

33
Dreamverse is the FastVideo realtime video generation & editing platform. It lives in this monorepo under `apps/dreamverse/`.
44

5+
## Deployment
6+
7+
Dreamverse runs anywhere you have a CUDA NVIDIA GPU. Pick the path that fits:
8+
9+
| Method | Best for | Guide |
10+
| --- | --- | --- |
11+
| **Local GPU (native)** | Dev boxes, quick local demos | [Quick Start: Local GPU](#quick-start-local-gpu) |
12+
| **Server / bare-metal B200 (SSH)** | Persistent self-hosted serving | [Server B200 deployment (SSH)](#server-b200-deployment-ssh) |
13+
| **Docker** | Reproducible container build/run | [`docker/README.md`](docker/README.md) |
14+
| **Modal (serverless B200)** | On-demand cloud GPU, no infra to manage | [`scripts/modal/README.md`](scripts/modal/README.md) |
15+
16+
Whatever the target, the backend needs the prompt-LLM keys (`CEREBRAS_API_KEY`
17+
and `GROQ_API_KEY`) and serves on port `8009`: `/healthz` reports liveness and
18+
`/readyz` returns `200` once model load and startup warmup finish.
19+
520
## Install Dreamverse
621

722
You can install Dreamverse using one of the methods below.
@@ -163,6 +178,83 @@ BACKEND_HOST=localhost BACKEND_PORT=8009 npm run dev
163178

164179
Open `http://localhost:5299`.
165180

181+
## Server B200 deployment (SSH)
182+
183+
For a persistent, self-hosted deployment, SSH into a CUDA-capable GPU host (for
184+
example a B200 box) and bring Dreamverse up there. Both paths below assume the
185+
host has recent NVIDIA drivers and CUDA-visible GPUs.
186+
187+
### Option A: Native (source install)
188+
189+
Best when you want to run and iterate on the checkout directly.
190+
191+
```bash
192+
ssh <user>@<b200-host>
193+
194+
# 1. Clone (or pull) FastVideo and install the Dreamverse extra
195+
git clone https://github.com/hao-ai-lab/FastVideo.git
196+
cd FastVideo
197+
pip install --upgrade pip && pip install uv
198+
uv venv .venv --python 3.12 && source .venv/bin/activate
199+
uv pip install -e ".[dreamverse]"
200+
201+
# 2. (Recommended) build the native FFmpeg for full streaming performance
202+
bash apps/dreamverse/scripts/install_native_ffmpeg.sh
203+
source apps/dreamverse/scripts/ffmpeg-env.sh
204+
205+
# 3. Export the prompt-LLM API keys (direct launches do not source ~/.env)
206+
export CEREBRAS_API_KEY=... # default prompt provider
207+
export GROQ_API_KEY=... # fallback provider
208+
209+
# 4. Start the backend; binds 0.0.0.0:8009 and starts one GPU worker
210+
dreamverse-server --host 0.0.0.0 --port 8009
211+
```
212+
213+
Serve the web UI from the same host (or point an external frontend at the
214+
backend):
215+
216+
```bash
217+
cd apps/dreamverse/web && npm ci
218+
BACKEND_HOST=<b200-host> BACKEND_PORT=8009 npm run dev
219+
```
220+
221+
Keep the backend alive across SSH sessions with your process manager of choice
222+
(`tmux`, `systemd`, `nohup`, ...), and wait for warmup before serving traffic:
223+
224+
```bash
225+
curl http://<b200-host>:8009/healthz # process is up
226+
curl http://<b200-host>:8009/readyz # 200 once model load + warmup finish
227+
```
228+
229+
### Option B: Docker (on the server)
230+
231+
Best for reproducible, isolated runs. Builds the image (which bundles the native
232+
FFmpeg build) and runs it with the GPUs exposed.
233+
234+
```bash
235+
ssh <user>@<b200-host>
236+
git clone https://github.com/hao-ai-lab/FastVideo.git
237+
cd FastVideo
238+
239+
# Build the image (defaults to dreamverse:dev; add BUILD_DREAMVERSE_UI=1 for the UI)
240+
apps/dreamverse/docker/docker_build.sh
241+
242+
# Run it: passes the keys, mounts the HF cache + outputs, maps host port 8009
243+
CEREBRAS_API_KEY="<your-key>" \
244+
GROQ_API_KEY="<your-key>" \
245+
apps/dreamverse/docker/docker_run.sh
246+
```
247+
248+
Pin a specific GPU with `DREAMVERSE_DOCKER_GPUS=device=<idx> FASTVIDEO_GPU_COUNT=1`.
249+
See [`docker/README.md`](docker/README.md) for build args, the UI image, GPU
250+
pinning, and the smoke script.
251+
252+
> **First-boot warmup:** with `torch.compile` + startup warmup enabled, the
253+
> first boot compiles the segment 1 and segment 2 inference paths and can take
254+
> tens of minutes on a cold cache; `/readyz` stays `503` until it finishes. For
255+
> a faster (uncompiled) startup while testing, set
256+
> `FASTVIDEO_ENABLE_STARTUP_WARMUP=0` before starting the backend.
257+
166258
## Quick Start: Mock Backend (For UI development)
167259

168260
The mock server emulates the Dreamverse backend protocol and streams a

0 commit comments

Comments
 (0)