StreamDiT: Real-Time Streaming Text-to-Video Generation
Paper: arXiv:2507.03745 Project: cumulo-autumn.github.io/StreamDiT Code: 代码搜索未找到开源实现(2026-05-19 检查 arXiv HTML、项目页、GitHub repo/code search;项目页没有公开实现仓库链接)
1. 论文定位与问题背景
1.1 一句话定位
StreamDiT 解决的是“扩散式 T2V 模型能否像流媒体/游戏引擎一样持续输出视频”的问题:它把原本离线生成一个短 clip 的 Movie Gen 风格 DiT,改造成一个可训练的 streaming denoising system,并用多步蒸馏把采样步数压到实时可用的 8 步。
这篇论文的核心不只是“更快采样”,而是把视频扩散模型的 denoising 状态组织成一个持续移动的 latent stream queue。每次只吐出最干净的 chunk,同时把新的高噪声 chunk 补进队列;模型在同一个 forward 中看到不同噪声等级的帧,因此能够用未来/过去上下文维持局部一致性,又避免完整长视频一次性自注意力带来的巨大成本。
1.2 为什么传统 T2V 不能直接 streaming
大多数高质量文本到视频模型依赖 DiT 或类似 transformer backbone。它们通常离线生成固定长度视频:先采样整段 latent,再统一 decode 成视频。这个流程有三个问题。
- 延迟不可接受:用户必须等完整 clip 采样完成后才能看到结果;对于交互式 prompt 更新或实时游戏场景,这个延迟会破坏体验。
- 长度被上下文和算力绑定:视频越长,token 数越多;full attention 的复杂度随时空 token 数显著增加,难以无限延长。
- 交互更新很弱:标准 T2V 的 prompt embedding 在整个采样过程中基本固定。即使中途改 prompt,后期 denoising 轨迹已经被早期引导锁定,难以发生大幅内容转向。
StreamDiT 的设定更接近在线系统:用户看到已经 decode 的 frames,同时生成线程持续更新 latent queue;如果用户输入新 prompt,text encoder 线程把 embedding 发给 DiT 线程,后续 cross-attention 立即使用新 embedding,视频内容从当前 stream 状态继续演化。
1.3 与已有方向的关系
论文把已有方法区分成三类。第一类是标准短视频 T2V,例如 Movie Gen 等大规模 DiT;它们质量高但离线。第二类是可扩展/长视频方法,例如 autoregressive video extension、ReuseDiffuse、FIFO-Diffusion;这些方法能延长视频,但往往依赖固定推理技巧,容易牺牲 motion richness 或无法真正训练模型适配 streaming 分布。第三类是 sampling efficiency,例如 progressive distillation、consistency/multistep models;它们减少 NFE,却没有处理“同一 buffer 内不同帧处于不同噪声等级”的 streaming 结构。
StreamDiT 的差异在于:它把 streaming 本身变成训练目标,而不是只在推理阶段套一个 FIFO 或 cache 机制。训练时模型看到 mixed partitioning 的 buffer,学习在不同 noise level 的帧之间交换信息;推理时同一模型可以切换不同 chunk size、reference frame、standard T2V 初始化、video-to-video editing 等配置。
1.4 关键信息
- 模型基座:4B 参数 T2V model,架构参考 Movie Gen;补充结果中还验证了 30B model 的可扩展性。
- 输入/输出分辨率:latent size 为 ;使用 temporal autoencoder,对应 64 frames、512p 输出。
- 训练阶段:task learning、task generalization、quality fine-tuning 三阶段,每阶段 10K iterations、128 NVIDIA H100;蒸馏阶段 64 H100、10K iterations。
- 实时配置:蒸馏后 chunk size ,8 sampling steps,无 CFG;单张 H100 上一步 482 ms,2 latent frames 经 4× TAE 变成 8 video frames,约 16 FPS。
2. 核心思想
2.1 核心 insight
StreamDiT 的核心 insight 是:如果把一段视频 latent buffer 切成若干 chunk,并让不同 chunk 对应 FM 轨迹上的不同时间/噪声等级,那么“长视频生成”可以被改写为一个持续移动的并行 denoising pipeline。每个 forward 不再只处理同一噪声等级的整段 clip,而是同时处理“快要输出的低噪声 chunk”和“刚进入队列的高噪声 chunk”;buffer 每前进一次,最干净 chunk 输出,新 chunk 注入,因而可以无限 streaming。
这个设计同时连接了两端:当 chunk size 等于整个上下文长度时,它退化为普通 bidirectional T2V;当 chunk size 为 1 且逐帧推进时,它接近 progressive autoregressive diffusion / FIFO 类方法。StreamDiT 通过 mixed training 覆盖这些 partitioning,使模型不仅能离线生成,也能用 streaming 模式稳定服务。
2.2 为什么不是简单 FIFO
FIFO-Diffusion 一类方法通常把 clean/reference frames 放进窗口,用它们稳定后续生成;但它主要是推理策略,模型训练分布不一定包含“同一窗口中帧噪声等级递增”的状态。StreamDiT 则在训练目标中显式构造这种状态,让模型学会在不同噪声段之间传播语义、运动和外观信息。论文认为这能缓解两种极端:纯 diagonal/AR 方案 streaming 但一致性低;纯 uniform/full-context 方案一致性高但不能 streaming。
2.3 为什么 mixed partitioning 重要
如果只用单一 chunk size 训练,模型容易过拟合固定噪声排布。比如只训练 时,它适配逐帧 streaming,但牺牲普通 T2V 的全局上下文特性;只训练 时,它就是标准 T2V,不能在线输出。mixed partitioning 把 chunk sizes 从 到 混合,让模型学到“不同噪声等级的 frame/block 如何互相提供上下文”的一般规则。实验中,chunk size 混合到 时质量分数最高,为 0.8144。
2.4 从系统角度看的创新
StreamDiT 同时修改了训练、模型、蒸馏和服务 pipeline:
- 训练层:Buffered Flow Matching 构造一个 moving buffer,每个 chunk 采样不同时间段的 noise level。
- 模型层:Time-varying DiT 允许每个 frame/chunk 使用不同 timestep embedding;window attention 降低 3D token attention 成本。
- 采样层:针对 streaming partition 做 multistep distillation,把 teacher 的 CFG steps 蒸馏为 student 的 conditional steps。
- 系统层:denoising、TAE decoding、text encoding 三线程并行,使视频能边生成边展示,prompt 能中途更新。
Figure 1 解读:teaser 强调 StreamDiT-4B 能边生成边输出,并通过项目页展示多种长视频和交互式样例。它不是单张静态比较图,而是论文应用目标的声明:视频生成从 offline clip 变成 streaming process。
3. 方法细节
3.1 Flow Matching 基础
论文以 Flow Matching 作为生成训练基础。对 clean latent video sample ,采样噪声 和 timestep ,用线性/OT path 构造: 对应 ground-truth velocity 为: 模型 在文本 prompt 条件下预测 velocity,训练目标是: 推理时用 Euler step: 传统 FM 假设整段 latent 共享一个 timestep。StreamDiT 的关键变化是把 timestep 从标量 扩展成 frame/chunk 维度上的序列 ,让同一 buffer 内的不同帧处于不同 denoising progress。
3.2 Buffered Flow Matching
Streaming video 被视作潜在无限长帧序列 。若基础 T2V 模型一次可处理长度为 的 frame buffer,则从第 帧开始的 clean sample 可写成 。StreamDiT 不再对 buffer 里所有帧使用同一个 ,而是为每个位置设置一个单调递增的噪声级别向量 。
训练样本由逐元素插值构造: 推理时同样按逐元素时间步更新: 直觉上,buffer 左侧可以是低噪声、即将输出的 chunk;右侧可以是高噪声、刚进入队列的 chunk。模型在每次 forward 中同时看见多个 denoising 阶段,因而可以用较干净片段为较噪片段提供语义/外观上下文,也能用较噪片段预示未来运动方向。
Figure 2 解读:buffer 被切成 个 reference frames 和 个 stream chunks;每个 chunk 有 帧和 个 micro denoising steps。图中从 clean 到 noise 的梯度就是 StreamDiT 与标准 T2V 的根本差别:同一个 forward 不是等噪声的完整 clip,而是一条正在推进的 denoising pipeline。
3.3 Partitioning scheme:reference frames、chunk、micro-step
StreamDiT 用三个超参数描述 streaming buffer。
- :context/reference frames,表示已经 fully denoised 的 clean frames。它们参与当前 forward 以增强 temporal consistency,但不再被 denoise。FIFO-Diffusion 可被看作 的特例。论文后续 streaming 主实验中设 ,说明模型经过训练后不依赖固定 clean reference frames 也能维持一致性。
- :stream chunks 数量。每个 chunk 拥有相同 noise level,每当一个 chunk 完成 pipeline,就从队列中输出。
- :每个 stream chunk 包含的帧数。较大的 更稳定、质量更高,但延迟更大;较小的 响应快但更依赖模型在局部噪声差中维持连贯性。
- :micro-denoising steps。它让每个 chunk 在同一空间/队列位置停留多个 denoising step 后再前进,增加有效采样步数而不增加 buffer 长度。
这几个量满足: 这里 是模型一次输入的总帧长, 是总 denoising steps。micro-step 的意义是:如果直接增加 ,buffer 变长,服务成本上升;而增加 能让每个 chunk 做更多局部 denoising,却不增加模型上下文长度。teacher 选择 ,因此总步数为 128;student 蒸馏后 ,只需要 8 steps。
3.4 Mixed Training
论文用表格说明三种 partitioning 的关系:
| Method | Scheme | Consistency | Streaming |
|---|---|---|---|
| Uniform / standard T2V | High | No | |
| Diagonal / progressive AR | Low | Yes | |
| StreamDiT | High | Yes |
训练时,第 个 chunk 的时间步从全局 denoising 区间的对应 segment 中采样: 这个训练方式可理解为并行训练完整 denoising range。对模型来说,输入并不是固定模式,而是许多不同的 chunk/noise 组合;这样推理时才能在 standard T2V 初始化、streaming generation、video-to-video editing、不同 chunk size 之间切换。
3.5 Time-Varying DiT
标准 adaLN DiT 用 timestep embedding 生成 scale/shift modulation,并把同一个 timestep 作用到整段 latent。StreamDiT 的输入 latent reshape 为 ,由于每个 frame/chunk 的噪声等级不同,timestep embedding 必须沿 frame dimension separable。论文把 scalar 改为序列 ,并将不同时间嵌入分别作用在对应 frame 的 scale/shift modulation 上。
这一步很关键:如果模型仍然只接收一个全局 timestep,它无法区分 queue 左侧低噪声 chunk 与右侧高噪声 chunk;velocity prediction 会把不同 denoising 阶段混在一起。Time-varying DiT 让模型明确知道每个 token 所处的轨迹位置,是 Buffered FM 能工作的架构前提。
Figure 3 解读:时间条件不是一个全局 scalar,而是在帧维度变化的 embedding;这些 embedding 进入 adaLN 的 scale/shift modulation。图里的不同噪声块对应不同 denoising stage,使模型能在一个 DiT pass 内完成 streaming queue 的联合更新。
3.6 Window Attention
为了降低 3D latent token 的 self-attention 成本,论文在所有 self-attention 层采用 window attention。latent 形状为 ,被划分为不重叠窗口 ;attention mask 让 token 只看同一窗口。为了跨窗口通信,每隔一层将窗口平移半个 window size,并把轴端 token wrap 到开头。多层累积后,全局信息仍可传播,但单层计算复杂度约为 full attention 的: 这个设计对 streaming 很自然:queue 中不同 chunk 的交互不需要每层都全局 attention;局部窗口能覆盖相邻帧/相邻空间区域,shifted windows 提供跨窗口的渐进信息流。
Figure 4 解读:regular windows 限制单层计算,shifted windows 让信息跨窗口移动。对实时生成而言,这比 full spatiotemporal attention 更符合 latency budget。
3.7 Multistep Distillation
Streaming partition 和 micro-step 让标准 sampling distillation 不能直接套用。StreamDiT 的 teacher 先选定 partitioning:,即 8 个 segment,每段内有 16 个 micro steps,总共 128 steps,并且 teacher 使用 CFG。蒸馏时把 FM trajectory 分成 个 segment,分别进行 step distillation;实际训练中同时做 step distillation 和 guidance distillation,把 teacher 的多步 CFG 轨迹压成 student 的单次 conditional forward。
蒸馏后 student 的 ,因此只需 steps,且不需要 CFG。这个学生模型仍遵循 StreamDiT 的 queue 结构,所以它不是普通 one-shot distillation,而是面向流式队列的多段蒸馏。论文的实时性能主要来自这一步:没有蒸馏,128 step teacher 即使质量可用,也不可能以 16 FPS 服务。
3.8 Streaming inference pipeline
补充材料给出系统 pipeline。Thread 1 负责 denoising、refill stream queue、从 queue 中吐出 denoised latent frames;Thread 2 并发执行 TAE decoder,把 latent 转成可渲染 video frames;Thread 3 持续监听新 prompt,调用 text encoders 得到 embedding,并发送给 DiT 线程。后续 denoising step 通过 cross-attention 使用新的 text embedding,从而改变生成方向。
在 T2V 场景中,StreamDiT 需要先做一次 standard chunk generation,以缓存中间 latent;然后按照当前 inference configuration,从缓存中取出对应噪声等级和帧位置的 blocks,填入 initial Stream Queue。queue 准备好后,模型就能连续 autoregressive stream denoising。若输入已有视频,则可以先 encode 视频 latent,再按对应 noise level 加噪填入 queue,这就是 video-to-video streaming 的入口。
Figure A 解读:denoising、decoder、text encoder 被拆成不同 process/thread,目标是把生成路径中必须串行的部分最小化。prompt 更新并不阻塞 frame render,而是异步更新 embedding,影响之后的 denoising trajectory。
Figure B 解读:T2V 初始化需要从标准生成中缓存 intermediate latents,再抽取合适 block 填充 Stream Queue;如果 ,同一架构还能退化为常规 video extension。图中体现了 mixed training 的实际用途:一个模型可按服务场景切换推理模式。
3.9 纸面伪代码(无公开源代码)
以下伪代码根据论文方法和补充材料重写;由于代码搜索未找到开源实现,它不是源代码逐行映射。
# Paper-derived pseudocode: StreamDiT training sample construction
for video, prompt in dataloader:
B = base_context_length
K, N, c, s = sample_partition_scheme() # mixed chunk training
clean_buffer = sample_contiguous_latents(video, length=B)
noise = randn_like(clean_buffer)
tau = zeros(B)
# reference frames can be clean / no longer denoised; main experiments set K=0
for chunk_id in range(N):
left = K + chunk_id * c
right = K + (chunk_id + 1) * c
tau_i = uniform((T / N) * chunk_id, (T / N) * (chunk_id + 1))
tau[left:right] = tau_i
x_tau = tau * clean_buffer + (1 - (1 - sigma_min) * tau) * noise
target_v = clean_buffer - (1 - sigma_min) * noise
pred_v = time_varying_dit(x_tau, prompt, tau)
loss = mse(pred_v, target_v)
update(loss)# Paper-derived pseudocode: streaming inference after distillation
stream_queue = initialize_queue_with_cached_intermediate_latents(prompt)
while user_session_active:
if prompt_callback.has_update():
prompt_embed = text_encoder(prompt_callback.latest_prompt())
# Student model: s=1, N=8, no CFG
velocity = streamdit_student(stream_queue.latents, prompt_embed, stream_queue.tau)
stream_queue.latents = euler_update(stream_queue.latents, velocity, stream_queue.delta_tau)
output_latent_chunk = stream_queue.pop_cleanest_chunk()
decoder_thread.enqueue(output_latent_chunk)
stream_queue.push_new_noisy_chunk(randn_chunk())# Paper-derived pseudocode: multistep distillation
teacher_cfg = StreamDiT(K=0, c=2, s=16, N=8, cfg=True) # 128 micro steps
student = StreamDiT(K=0, c=2, s=1, N=8, cfg=False) # 8 steps
for segment in range(N):
teacher_target = rollout_teacher_segment(teacher_cfg, segment, multiple_cfg_steps=True)
student_pred = student.single_conditional_forward(segment)
distill_loss = match_velocity_or_endpoint(student_pred, teacher_target)
update_student(distill_loss)3.10 代码映射状态
| Paper Concept | Source File | Key Class/Function | Status |
|---|---|---|---|
| Buffered Flow Matching | N/A | N/A | 代码搜索未找到开源实现;只能按论文公式复现 |
| Time-varying DiT | N/A | N/A | 无公开实现;论文描述为 adaLN DiT 的 timestep embedding 改造 |
| Window attention | N/A | N/A | 无公开实现;论文描述为 3D shifted window attention |
| Multistep distillation | N/A | N/A | 无公开实现;论文给出 teacher/student partitioning 配置 |
| Streaming inference pipeline | N/A | N/A | 无公开实现;补充材料给出三线程系统结构 |
4. 实验与结果
4.1 训练配置
主模型是 4B 参数 T2V model。latent size 为 ;TAE 压缩率为 temporal 、spatial ,所以 base model 对应 64 frames、512p。训练分三阶段:
- Task learning:使用 3K high-quality videos,较大学习率 ,把原始 T2V 适配到 video streaming。
- Task generalization:使用 2.6M pretraining videos,学习率 ,提升 streaming 泛化。
- Quality fine-tuning:回到 high-quality dataset,学习率 ,优化输出质量。
每个阶段训练 10K iterations,使用 128 NVIDIA H100。蒸馏也在 3K high-quality videos 上进行,64 H100、10K iterations。teacher 配置 ;蒸馏后 micro-step 从 16 降为 1,总采样步数降至 8。
4.2 定量评测
论文比较 ReuseDiffuse、FIFO-Diffusion、Ours、Ours-distill。为了公平,baseline 被实现在同一个 base model 上,避免基础视觉质量差异主导结果。评测使用 Movie Gen evaluation dataset 中适合 long videos 的 50 prompts,并用 VBench quality metrics。
| Method | Subject Consistency | Background Consistency | Temporal Flickering | Motion Smoothness | Dynamic Degree | Aesthetic Quality | Quality Score |
|---|---|---|---|---|---|---|---|
| ReuseDiffuse | 0.9501 | 0.9615 | 0.9838 | 0.9912 | 0.2900 | 0.5993 | 0.8019 |
| FIFO | 0.9412 | 0.9576 | 0.9796 | 0.9889 | 0.3094 | 0.6088 | 0.7981 |
| Ours | 0.9622 | 0.9625 | 0.9671 | 0.9861 | 0.5240 | 0.6026 | 0.8185 |
| Ours-distill | 0.9491 | 0.9555 | 0.9649 | 0.9831 | 0.7040 | 0.5940 | 0.8163 |
表中最值得看的是 dynamic degree:ReuseDiffuse 和 FIFO 的 temporal consistency / smoothness 很高,但论文指出它们视频更静态;Ours 和 Ours-distill 在 dynamic degree 上显著更高,说明 StreamDiT 不是靠“少动”来维持一致性。Ours-distill 的质量分数 0.8163 接近 teacher 的 0.8185,同时速度达到实时,这是蒸馏有效性的主要证据。

Figure 5 解读:human evaluation 比较同一 prompts 下两个模型的视频,轴包括 overall quality、frame consistency、motion completeness、motion naturalness。图中 StreamDiT 在多轴上胜率更高,用来补充 VBench 对 motion/dynamic 的量化不足。
4.3 视觉比较
论文展示的一分钟视频帧对比显示:StreamDiT 输出有更丰富运动,同时内容更一致;distilled model 与 teacher 视觉质量接近。baseline 的问题不是完全崩坏,而是倾向于生成更静态或变化不足的长视频。这与 VBench 中 ReuseDiffuse/FIFO 的 motion smoothness 高但 dynamic degree 低相呼应。
Figure 6 解读:这张图强调“稳定”和“动起来”之间的 trade-off。StreamDiT 的价值在于把二者同时推高,而不是用静态画面换一致性。
4.4 Mixed training ablation
Ablation 针对 mixed chunk training。chunk size 1 代表 Progressive AR Diffusion 风格,chunk size 16 代表原始 T2V/full-context。训练不同混合方案后,统一用 chunk size 做 inference,因为这是所有模型都覆盖的场景。
| Chunk size during training | [1] | [1,2] | [1,2,4] | [1,2,4,8] | [1,2,4,8,16] |
|---|---|---|---|---|---|
| Quality score | 0.8129 | 0.8100 | 0.8080 | 0.8076 | 0.8144 |
结果显示全混合最好;只训练 chunk size 1 得到第二高分,论文解释为对该 inference case 的过拟合。加入 chunk size 16 能保留标准 T2V 的质量特性,因此即使最终推理是 streaming,也有助于视觉质量。
4.5 实时与长视频应用
Real-Time Streaming:distilled model 使用 chunk size 2、8 sampling steps、无 CFG。单 H100 上一个 denoising step 482 ms,可生成 2 latent frames,经 4× TAE 转为 8 video frames,因此约 16 FPS。text encoder 和 TAE decoding 被认为延迟可忽略,原因是它们和 denoising pipeline 分线程/进程并行,且 text encoder 只在 prompt 更新时运行。
Figure 7 解读:实时 streaming 示例把模型定位到 interactive visual engine,而不是传统一次性 video synthesis。
Infinite Streaming:论文生成超过 5 分钟的视频,展示长时间 generation 后内容和质量仍较稳定。这里“infinite”不是数学保证,而是系统可以不断 refill queue;实际长期一致性仍受 base model context length 限制。
Figure 8 解读:5 分钟例子说明 pipeline 可以持续运行;但它不等价于长期记忆,后文局限中仍指出 out-of-context objects 可能外观漂移。
Interactive Streaming:用户可以输入语义相关 prompt sequence,控制故事走向。chunk size 影响 prompt 更新幅度:较小 chunk size 让相邻 block 噪声差小,video guidance 更强,适合方向变化等连续演化;较大 chunk size 更容易发生 morphing 等大幅内容变化,因为未来 chunk 的 explicit text guidance 权重更强。
Figure 9 解读:交互式 storytelling 展示了 prompt update 的价值。它不是重新生成整段视频,而是在已有 stream 状态上改变后续 denoising 方向。
Video-to-Video Streaming:输入视频先 encode 成 latent,再按合适 noise levels 加噪填入 Stream Queue;之后用新 prompt denoise,类似 SDEdit 的 noise-addition-and-denoising 策略。示例中把 pig 改为 cat,同时保持背景和时间一致性。
Figure 10 解读:v2v streaming 说明 StreamDiT 的 queue 不只服务纯 T2V,也能服务实时编辑。关键是 queue 中已有视频 latent 提供了强 video guidance。
4.6 30B scalability
论文承认 4B 模型基础 T2V 能力有限,可能出现 artifacts。补充材料将 StreamDiT 应用于 Movie Gen 30B model,结果显示视觉美感、内容、低 artifacts 方面更好。30B 当前不用于实时生成,但证明方法不是只适合 4B 小模型;它可以作为更大 T2V 模型的 streaming adaptation layer。
Figure S 解读:30B 示例验证 scalability。若未来大模型推理优化足够,StreamDiT 的训练/队列机制可继承更强 base generator 的画质。
5. 局限、复现状态与启发
5.1 局限一:基础模型容量
StreamDiT-4B 是为了实时服务选择的 moderate size。论文明确指出 4B basic T2V 质量有限,因此部分视频会有 artifacts。30B 实验说明更大模型能提升视觉质量,但 30B 暂时无法实时。这暴露了一个实际 trade-off:实时 streaming 需要小模型/蒸馏/低 NFE,而高质量视频生成仍受大模型能力主导。
5.2 局限二:上下文长度和长期记忆
StreamDiT 改善的是短上下文内的在线 denoising,不提供真正长期记忆。若物体离开当前 context window 后再出现,identity、face、background 可能漂移;相机完整旋转后背景一致性也可能失效。论文建议未来可结合 Mamba 等 state-space / long-term memory 机制。这个局限很重要:StreamDiT 的“infinite streaming”是系统上能无限运行,不代表语义记忆无限。
5.3 局限三:decoded chunk seams
虽然 latent chunks 在 queue 内平滑连接,但 TAE decoder 是按 chunk 逐段解码的;latent-level smoothness 不保证 decoded video 没有 seams 或 flickering。补充材料提出 overlap decoding:把上一个 chunk 末尾的 cached latent 拼到新 chunk 开头,形成 extended chunk 再 decode,以降低 seams。
Figure S 解读:overlap decoding 是工程修补思路,说明 streaming 系统不仅需要生成模型,还需要处理 decoder 边界效应。
5.4 复现状态与代码搜索
代码搜索未找到开源实现。检查范围包括:arXiv HTML 中只有项目页链接;项目页展示 demo、paper、CVPR 2026 信息,但未提供实现仓库;GitHub repository search 和 code search 对 “StreamDiT Real-Time Streaming Text-to-Video Generation”、“StreamDiT buffered flow matching”、“StreamDiT varying time embedding”等查询返回空结果。项目页 HTML 中出现的 github 链接指向占位/网站模板相关链接,不是 StreamDiT 实现。
因此,当前笔记中的伪代码只能作为论文级复现蓝图,不能宣称对应作者源码。若未来代码发布,最需要重新核对的点是:time-varying adaLN 的实际 tensor shape、3D shifted window attention 的边界 wrap 实现、teacher/student distillation loss 的 endpoint 或 velocity matching 细节、multi-process inference queue 的 latency profiling。
5.5 对后续工作的启发
- Streaming 应该训练进模型,而不是只做推理 hack:StreamDiT 的优势来自训练分布覆盖 queue 状态;这对其他模态的 streaming generation 也成立。
- chunk size 是 latency-quality-control 的统一旋钮:较大 chunk size 更利于大幅语义变化和稳定质量,较小 chunk size 更利于低延迟连续更新。服务系统可以按用户场景动态选择。
- 蒸馏必须匹配推理结构:普通 step distillation 不知道 Stream Queue 的 segment/micro-step 结构;StreamDiT 把 distillation 分段对齐到 个 chunks,这可能是实时生成的关键模板。
- 长期一致性需要另一个记忆模块:StreamDiT 解决的是短窗口 streaming,不解决长期身份记忆。未来可把它与 object memory、state-space memory、explicit scene graph memory 结合。
5.6 个人 takeaway
这篇论文最有价值的地方是把“视频扩散模型是否能实时交互”从系统工程问题提升为训练分布问题。它没有仅仅把 NFE 压低,而是重新定义了 denoising sample:同一输入里每个 chunk 可以有不同噪声等级。这个视角让 standard T2V、video extension、interactive streaming、v2v editing 变成同一 partitioning family 下的不同推理模式。对于需要低延迟视频/世界模型的应用,StreamDiT 的 queue + time-varying DiT + tailored distillation 是一个很清晰的可复用框架;但要真正落地,还必须补上公开实现、长期记忆和 decoder seam 处理。