vipshop/cache-dit
A PyTorch-native inference engine with cache, parallelism, quantization and cpu offload for DiTs.
解決的問題
Cache-DiT 是一個專為加速 Diffusion Transformers (DiTs) 執行而設計的 PyTorch 原生推理引擎。它解決了用於圖像、影片和音訊生成的規模化 DiT 模型的高計算成本與記憶體需求問題,實現了更快的推理速度與更高效的硬體利用率。
工作原理
Cache-DiT 构建在 Hugging Face Diffusers 函式庫之上,採用了多種優化技術來降低延遲與記憶體佔用:
- 混合快取加速:實現了多種快取策略(如 DBCache、TaylorSeer、SCM 與 DMD),以避免重複計算。
- 並行化:支援廣泛的並行策略,包括上下文並行 (Context Parallelism)、張量並行 (Tensor Parallelism) 以及混合 2D/3D 並行,並針對 Text Encoders、VAEs 與 ControlNets 提供專用支援。
- 記憶體管理:提供量化 (W8A8, W4A4) 與分桶式逐層 CPU 卸載 (bucket-style layerwise CPU offloading),以最大限度地減少 GPU 記憶體佔用。
- 硬體相容性:原生運行於 NVIDIA GPU、Ascend NPU 與 AMD GPU,並與 PyTorch 編譯相容。
適用對象
該引擎面向需要為生產環境或高效能運算環境優化其推理流水線的 DiT 基礎生成式 AI 模型(如 FLUX、CogVideoX 與 HunyuanVideo)的開發人員與研究人員。
亮點
- 廣泛的模型支援:支援來自 Diffusers 的 40 多個 DiT 流水線家族與 120 多個變體。
- 巨大的加速效果:透過結合快取、上下文並行與編譯,能夠實現高達 9 倍的加速。
- 深度整合:與 SGLang Diffusion、vLLM-Omni、TensorRT-LLM 與 ComfyUI 等流行框架完全整合。
- 智能體整合:包含模型整合 SKILL,幫助使用者使用 GitHub Copilot 或 Claude Code 等編程智能體來整合新的 DiT 流水線。
相關
- 專案
- 專案
- 專案
- 專案
- Dispatch