From d338df2b803362ae60147f61905fb4a4a6721b75 Mon Sep 17 00:00:00 2001 From: Hongsheng Liu Date: Sat, 8 Aug 2026 21:47:01 +0800 Subject: [PATCH] docs: add general architecture overview Signed-off-by: Hongsheng Liu --- docs/design/architecture_overview.md | 56 +++++++++++++++++----------- 1 file changed, 34 insertions(+), 22 deletions(-) diff --git a/docs/design/architecture_overview.md b/docs/design/architecture_overview.md index 09785730d..63892739f 100644 --- a/docs/design/architecture_overview.md +++ b/docs/design/architecture_overview.md @@ -256,32 +256,44 @@ resources. ## System architecture -The runtime is organized around an engine, an orchestrator, stage lifecycle -management, and independent AR and diffusion stage implementations. +The overview below adapts the [general vLLM-Omni architecture +slide](https://docs.google.com/presentation/d/111-L8zF7A1j_YI_cR8JsblofdScdRr2f/edit?slide=id.p17#slide=id.p17) +to the current stage-based runtime. It keeps only the main components: +entrypoints, the shared `AsyncOmniEngine`, request orchestration, stage +lifecycle management, AR and diffusion execution modules, model/layer +operations, connector transport, and multimodal outputs. `AsyncOmniEngine` is +the composition root between the entrypoints and the orchestrator. ```mermaid flowchart TB - entry["Entrypoints
Omni / AsyncOmni / CLI / OpenAI-compatible APIs / duplex WebSocket"] - engine["AsyncOmniEngine
engine composition root and background loop"] - orchestrator["Orchestrator
request state, cross-stage routing, correlation, and output ordering"] - runtime["StageRuntime or DistStageRuntime
placement, replicas, readiness, and lifecycle"] - clients["StagePool and stage clients
StageEngineCoreClient / StageDiffusionClient"] - ar["AR stages
vLLM engine, scheduler, worker, and model runner"] - diffusion["Diffusion stages
DiffusionEngine, scheduler, executor, worker, and pipeline"] - connector["OmniConnector
payload and KV transport plus synchronization"] - outputs["MultimodalPayload and OmniRequestOutput
tensors, metadata, streaming chunks, and final artifacts"] + subgraph omni["vLLM-Omni"] + subgraph entry["Entry points"] + api["API server"] + client["Omni / AsyncOmni"] + end + engine["AsyncOmniEngine
composition root and background loop"] + orchestrator["Orchestrator
request state and cross-stage routing"] + runtime["StageRuntime
placement, replicas, readiness, and lifecycle"] + ar["AR module
vLLM engine, scheduler, cache, executor, worker, and model runner"] + diffusion["Diffusion module
scheduler, worker, model runner, and pipeline"] + ops["Model / layer / ops
attention, parallelism, and quantization"] + connector["OmniConnector
payload and KV transport plus synchronization"] + outputs["Multimodal outputs
streaming chunks and final artifacts"] - entry --> engine - engine --> orchestrator - engine --> runtime - runtime --> clients - clients --> ar - clients --> diffusion - ar <--> connector - diffusion <--> connector - ar --> outputs - diffusion --> outputs - outputs --> entry + api --> engine + client --> engine + engine --> orchestrator + engine --> runtime + orchestrator --> runtime + runtime --> ar + runtime --> diffusion + ar -. uses .-> ops + diffusion -. uses .-> ops + ar -. transports through .-> connector + diffusion -. transports through .-> connector + ar --> outputs + diffusion --> outputs + end ``` ### Key components