NVlabs/Sana
SANA: Efficient High-Resolution Image Synthesis with Linear Diffusion Transformer
什麼是 SANA?
SANA(及其多項擴展)是 NVIDIA Research 所開發的開源程式碼庫,實現了一組用於高解析度影像與影片生成的高效擴散模型。該儲存庫提供端對端的訓練與推論流程、模型檢查點,以及與 Hugging Face Diffusers、ComfyUI、SGLang 和 Cosmos‑RL 等流行生態系統的整合工具。
核心元件
| 元件 | 功能 | 典型大小 / 解析度 |
|---|---|---|
| SANA | 文字到影像的擴散,最高支援 4K。聲稱參數量比 Flux‑12B 少約 20 倍,推論速度快約 100 倍。 | 1 K–4 K 位元組影像 |
| SANA‑1.5 | 在不改變模型架構的前提下,透過訓練與推論時擴展運算量來提升品質。 | 與 SANA 相同 |
| SANA‑Sprint | 透過 sCM 蒸餾實現單步/少步生成。在 H100 上生成 1024 位元組影像耗時約 0.1 秒。 | 1 K–2 K 位元組影像 |
| SANA‑Video / LongSANA | 使用塊線性注意力的擴散影片生成;支援即時生成長達 1 分鐘的影片(約 27 FPS)。 | 720p–1080p,最長 1 分鐘 |
| SANA‑Video 2.0 | 具備混合線性/軟最大注意力的 5B(及即將發布的 14B)文字到影片/文字-影像到影片模型。5B 720p 的示範已上線。 | 720p,8 秒片段 |
| SANA‑WM | 可控世界模型(2.6 B 參數),可生成帶 6-DoF 相機控制的 1 分鐘 720p 影片。 | 720p 影片 |
| SANA‑Streaming | 用於 720p、分鐘級串流的即時影片到影片編輯(2B 參數)。 | 720p 影片 |
| Sol‑RL | 強化學習包裝器(NVFP4 推演,BF16 訓練),使擴散訓練速度提升超過 4 倍。 | 與 SANA、FLUX‑1、SD3.5‑L 相容 |
關鍵技術理念
- 線性/塊因果線性注意力 – 取代 DiT 中的二次成本注意力,使在中等 GPU 記憶體下實現高解析度生成成為可能。
- DC‑AE(32× 壓縮) – 輕量級自動編碼器,將影像壓縮為更少的潛在標記,進一步降低運算量。
- 僅解碼器文字編碼器 – 利用現代 LLM 架構,增強文字-影像對齊能力,並支援上下文學習。
- sCM 蒸餾 – 一種訓練方法,使模型能在單次擴散步驟中生成高品質樣本。
- 推論時擴展(SANA‑1.5) – 執行時動態調整運算量(例如按標記或層),實現品質與速度的權衡。
誰會使用它?
- 研究人員:探索高效擴散、線性注意力或多模態生成。
- 開發者:建構需要低延遲或在有限硬體上運行的影像/影片生成服務(例如,4 位或 8 位量化模型,可放入 8 GB VRAM)。
- 創意藝術家:希望實現高解析度(2 K–4 K)影像生成或快速轉換的短影片合成。
- 機器人/具身 AI 團隊:對世界模型生成(SANA‑WM)或基於 RL 的微調(Sol‑RL)感興趣。
快速上手(快速入門指南)
- 克隆儲存庫
git clone https://github.com/NVlabs/Sana.git && cd Sana - 安裝相依性(儲存庫提供
environment.yml/requirements.txt)。 - 選擇一個模型 – 檢查點託管於 Hugging Face 的 Efficient‑Large‑Model 組織下(例如
SANA-Video_2.0_5B_720p)。 - 執行示範 – README 中連結了多個 Hugging Face Spaces;本地推論可使用 Diffusers 流水線:
from diffusers import SanaPipeline pipe = SanaPipeline.from_pretrained("Efficient-Large-Model/SANA-Video_2.0_5B_720p") video = pipe("a sunrise over mountains", num_frames=24) - 微調或 RL 訓練 – 參考
docs/sol_rl/和docs/sana/部分,使用 DDP/FSDP 腳本、4 位量化(CAME‑8bit),或使用 Cosmos‑RL 進行 RL 推演。
社群與支援
- Discord: https://discord.gg/rde6eaE5Ta – 活躍討論、故障排除與公告。
- Hugging Face 模型庫: 所有已發布檢查點與 Diffusers 集成。
- 示範網站: README 中連結了 SANA‑Sprint、SANA‑Video 2.0、SANA‑WM 與 SANA‑Streaming 的網頁示範。
- 論文與引用 – 多篇 arXiv 預印本(例如 2509.24695、2605.30409)已列出,提供科學背景。
授權
程式碼採用 Apache 2.0 授權(2025 年 1 月 11 日更新),允許商業使用、修改與再分發。
TL;DR
SANA 是一個生產級、以效率為導向的擴散框架,可在極低計算成本下訓練與運行先進的高解析度影像與影片生成器。它提供即用型檢查點、與主要 ML 庫的整合,以及一系列擴展功能,支援單步快速生成、影片串流、世界模型控制與基於 RL 的微調。
相關
- Dispatch
- 專案
- 專案
- 專案
- 專案