Sana
绳锯木断,水滴石穿。——罗大经鹤林玉露
https://github.com/NVlabs/Sana
Sana:这位来自 NVlabs 的高效画师,正在把高分辨率图像生成拉进“又快又美”的新时代
如果说许多文生图模型像天赋异禀但有点“吃资源”的艺术家,那么 Sana 更像一位动作利落、思路清晰、下笔飞快的高阶画师。它不只会画,而且画得高、画得快、画得稳,还特别懂得如何在效率和质量之间拿出一套漂亮的平衡术。根据项目描述,Sana 是一个面向高分辨率图像与视频生成的效率导向型代码库,提供了完整的训练与推理流水线;仓库中包含的不只是 Sana 本体,还覆盖了 SANA、SANA-1.5、SANA-Sprint、SANA-Video 和 Sol-RL。(github.com)
光看这段介绍,你就能感受到它的气质:它不是只想当一个“会出图的模型”,它更像一个已经搭好舞台、灯光、后台、跑道和出口的完整系统。你既可以把它当成高效图像生成方案,也可以把它当成一个不断扩张能力边界的生成框架。(github.com)
它是谁
Sana 的仓库描述写得很直接:Efficient High-Resolution Image Synthesis with Linear Diffusion Transformer。也就是说,它瞄准的是“高分辨率图像生成”这件事里最难、最贵、最容易卡性能的一段路,并且选择用 Linear Diffusion Transformer 这条技术路线去破局。(github.com)
这名字取得很有意思。Sana 听起来像一个安静的人,但它做起事来一点不安静。你让它面对高分辨率生成这块公认的硬骨头,它没有退,而是拿出一整套“高效优先”的工程与模型设计思路。它像一位不喜欢喊口号的工程师型艺术家,嘴上不吵,手里全是硬活。
它想解决什么问题
高分辨率图像生成一直都很迷人,但也一直很“贵”。
分辨率一上去,token 数量上去,注意力开销就上去,显存和速度压力也跟着往上窜。很多模型在低分辨率下看起来还算轻盈,一旦进入高分辨率场景,就像背着全套行李爬楼梯,气喘吁吁、寸步难行。Sana 的目标非常明确:让高分辨率图像和视频生成,不再天然等同于高昂代价。(github.com)
README 里给出的介绍非常有冲击力。它把 Sana 系列的定位写得很清楚:
- SANA:支持最高到 4K 分辨率的文生图生成,并声称相比 Flux-12B 体量小 20 倍、速度快 100 倍。
- SANA-1.5:通过训练时和推理时的计算扩展策略进一步提升质量。
- SANA-Sprint:通过 sCM distillation 实现一步或少步生成,在 H100 上可做到每张 1024px 图像约 0.1 秒。
- SANA-Video / LongSANA:面向高效视频生成,引入 Block Linear Attention 以及更长时序能力。
- Sol-RL:通过 NVFP4 rollout 与 BF16 training 的组合,加快强化学习训练收敛。 (github.com)
读到这里,你会发现 Sana 并不是一个单点模型,而更像一个家族。这个家族里有擅长高分图像的,有擅长提质扩展的,有擅长极速生成的,有把目光投向视频的,还有往后训练和强化学习方向继续延展的。它不是站在一个结果上停住,而是像一个越长越大的研究体系,边跑边扩容。
它为什么让人眼前一亮
因为它抓住了一个非常现实的问题:大家都喜欢更大、更清晰、更细腻的图,但没有人真心喜欢更慢、更贵、更卡。
Sana 的魅力,不在于它只会“画图”,而在于它试图把高质量生成从“重器”变成“可用工具”。它不像某些模型那样,仿佛是一位穿着华丽斗篷的宫廷画师,画得确实绝,但每次动笔都要清场、点灯、烧预算。Sana 更像一位训练有素的现代画师,出手稳、动作快、流程规范,还知道怎样让更多人真的用得起。(github.com)
README 中对它的总结也很鲜明:这是一个完全开源的框架,整合了高效训练、快速推理以及灵活部署,覆盖图像和视频生成;并且通过 4-bit 量化,甚至可部署在 小于 8GB VRAM 的笔记本 GPU 上。(github.com)
这句话的分量不小。因为它透露出的不是“实验室里某个跑分很好看的模型”,而是“一个在部署和现实使用层面认真做过设计的系统”。当一个高分辨率生成框架开始认真谈笔记本 GPU、量化和灵活部署,它就不再只属于研究演示,它是在努力走向更广泛的真实场景。(github.com)
它的核心技术路线,像一套精心打磨的轻装上阵方案
Sana 并不是单纯靠“堆模型参数”来换质量。它的 README 里把关键技术讲得非常清楚,而这些技术组合在一起,恰好拼出它那种“高效画师”的人格。
Linear Attention
Sana 用 Linear Attention 替换了 DiT 中的传统 attention,目的就是在高分辨率下提升效率。这个选择很像把原本一辆油耗惊人的重型跑车,换成一台同样能高速奔跑、但更懂节能的发动机。对于高分辨率任务来说,这不是小修小补,而是直接对最核心的计算瓶颈动刀。(github.com)
DC-AE
它还引入了 DC-AE,实现 32× 图像压缩,而不是传统常见的 8×。这意味着 latent token 数量被大幅压缩,从源头上减少了后续计算负担。你可以把它理解为:别急着让整个工厂一起加班,先把搬上流水线的货物整理得更精炼。这样速度自然就快起来了。(github.com)
Decoder-only Text Encoder
Sana 使用了现代 decoder-only LLM 作为文本编码器,并强调了 in-context learning 对文本图像对齐的帮助。这个思路很有趣,它像是给画师配了一位更会听话、更能理解上下文的文案导演。用户的 prompt 不再只是被“读一遍”,而是被更有语境感地理解。(github.com)
Flow-DPM-Solver
为了进一步减少采样步数,它引入了 Flow-DPM-Solver。这一步像是在告诉生成流程:你不需要每一级楼梯都踩得那么重,有时候找到更聪明的路径,比一味多走几步更重要。(github.com)
sCM Distillation
在 SANA-Sprint 中,项目采用 continuous-time consistency distillation 实现一步或少步生成。这使得它在“快”这个维度上显得格外锋利。你可以把它看作是让一个原本需要认真铺陈、慢慢润色的画师,学会了几乎抬手就成像的本事。(github.com)
面向视频的高效结构
到了视频生成,Sana 家族又引入 Block Causal Linear Attention 和 Causal Mix-FFN,用于更高效地处理长视频生成问题。这里它就像一位从静态画布转向动态分镜的导演,既要顾每一帧,还得顾镜头之间的呼吸和连续性。(github.com)
Sol-RL
而 Sol-RL 则把视角带到了后训练与强化学习上,用低精度 rollout 配合高精度优化,追求更快收敛。它让 Sana 不只是“出图器”,还像一位会在幕后不断训练自己、修正自己、精进自己的长期主义选手。(github.com)
它的能力版图,不是一个点,而是一整片大陆
Sana 仓库并没有把自己局限在单一模型介绍,而是给出了一套非常完整的使用与扩展地图。README 的 Getting Started 部分列出了一整套文档入口,包括:
- Installation Guide
- Model Zoo
- Sana Inference & Training
- SANA-Sprint
- SANA-Video
- LongSANA
- ControlNet
- LoRA / DreamBooth
- Sol-RL Post-Training
- Quantization
- ComfyUI
- SGLang (github.com)
这很能说明问题。
一个项目如果只有主模型和几条推理命令,那它更像一个作品;而 Sana 明显在往“生态框架”方向走。它不仅在说“我能做什么”,也在说“你可以怎样训练我、加速我、微调我、部署我、接入不同工作流、把我扩展成你自己的生产工具”。(github.com)
这就像一位画师不只是拿出几张代表作,还把自己的画室、颜料架、速写本、教学方案、进阶课程和合作通道全部打开。你不只是能看它画,你还能走进它的工作方法里。
快速启动:它没有故作神秘,反而很愿意让你立刻上手
对于很多生成模型项目来说,最劝退人的不是论文,而是第一步环境配置。README 在这方面做得很直给,Quick Start 就是两步:
1 | git clone https://github.com/NVlabs/Sana.git |
这两行命令像 Sana 的开场白:门没锁,你进来吧。(github.com)
它没有把自己包装成遥不可及的“只适合论文作者使用”的项目,而是明确给出环境准备方式,让人一眼就能判断如何启动。对于一个覆盖图像生成、视频生成、训练、量化和部署的大型仓库来说,这种清晰的入口非常重要。(github.com)
如果你更熟悉 diffusers,它也准备好了
README 还给出了非常实用的 diffusers 推理示例。这段代码不只是“能跑”,它很能体现 Sana 的气质:清楚、现代、面向实际使用。
1 | import torch |
这段示例像一张很友好的邀请函。你不需要先翻半天文档,不需要先猜模型该怎么接,只要你熟悉 PyTorch 和 diffusers,马上就能让 Sana 开始工作。它甚至已经帮你把 dtype、分辨率、采样步数、guidance scale 和随机种子这些关键细节摆在台面上。(github.com)
而这张图的 prompt 也写得很可爱:一只赛博朋克猫,配上一块写着 “Sana” 的霓虹灯牌。仿佛项目自己都知道,既然是图像生成模型,第一面最好就让大家看见一点想象力发光的样子。(github.com)
它的性能数字,确实很会说话
README 中给出了一张 1024×1024 图像生成性能表,这部分是 Sana 最有说服力的地方之一。表中显示,和 Flux-dev 相比,多个 Sana 变体在吞吐、延迟、参数规模和质量指标上都拿出了相当强的表现。比如:
- FLUX-dev:吞吐 0.04 samples/s,延迟 23.0s,参数 12.0B
- Sana-0.6B:吞吐 1.7 samples/s,延迟 0.9s,参数 0.6B,速度提升 39.5×
- Sana-1.6B:吞吐 1.0 samples/s,延迟 1.2s,参数 1.6B,速度提升 23.3×
- Sana-1.5 1.6B:延续 1.2s 左右延迟,同时在 CLIP、GenEval 等指标上进一步提升
- Sana-1.5 4.8B:虽然更大,但仍保持明显的速度优势。 (github.com)
这组数字特别像一位平时不爱炫耀的人,关键时刻掏出成绩单:我不是不能慢慢画,我只是没必要那么慢。
其中最抓人的一句,还是 README 开头那句:SANA 文生图最高可到 4K 分辨率,并且比 Flux-12B 小 20 倍、快 100 倍。 这几乎可以看作 Sana 递给所有关注高分辨率生成的人一张名片。(github.com)
这不是只有图像,还是朝着视频一路长过去的系统
很多项目在图像上做得好,但一到视频就变得像突然换了一个人。Sana 给人的感觉则是:它早就不满足只做静态画面了。
README 明确写到了 SANA-Video 和 LongSANA,并把它们纳入同一代码库体系。前者面向高效视频生成,后者则继续加强长视频场景能力。与此同时,仓库目录里也能看到与视频相关的脚本和训练入口,比如 inference_video_scripts、train_video_scripts 这样的目录结构。(github.com)
这意味着 Sana 的视野并不局限于“单张图像漂亮就行”。它像一个本来擅长画插画的创作者,后来开始学分镜、学镜头、学节奏、学长时序叙事,最后干脆把静帧和动态都纳入了自己的能力版图。(github.com)
它还是一个非常“现代工程化”的仓库
从仓库结构上看,Sana 不是一个为了发论文临时整理出来的代码包。它有文档、有配置、有 app、有 tests、有 scripts,也有专门的训练与视频训练脚本目录。搜索结果展示的仓库顶层包括:
appconfigsdiffusiondocsinference_video_scriptssanascriptstests/bashtoolstrain_scriptstrain_video_scriptsDockerfileenvironment_setup.shpyproject.toml等。 (github.com)
这一眼看过去就知道,它不是只准备让你“看”,而是真打算让你“用”。这种工程组织方式也很符合 NVlabs 一贯的风格:研究不只是论文结果,更要有尽可能完整的代码与体系支撑。(github.com)
作为开源项目,它也在不断生长
Sana 的 GitHub 页面显示它是 Apache-2.0 许可证开源项目;搜索结果还显示该仓库已有数千 star,并且存在 release、issues、pull requests、actions 等持续活跃的开源协作痕迹。搜索结果里可以看到发布页包含 v1.0.0 与 v1.5.0 等版本信息,而 README 展示出的系列能力也正对应着项目逐步扩展的节奏。(github.com)
这说明 Sana 不是一颗静止的样品,而是一台还在持续推进的机器。它一边扩展模型家族,一边开放文档入口,一边更新发布版本,一边让社区参与进来。它像一个还在成长的实验室成员,边跑边学,边学边把成果摆到大家面前。
如果要用拟人化方式来形容 Sana
它像一位高效、克制、审美在线的数字画师。
别的模型可能穿着厚重长袍,拖着大箱子颜料和巨大的显卡预算,一边喘气一边说“我能画”;Sana 则像一位提着轻便工具箱、步伐很快、却依然能把高分辨率画面铺得细致漂亮的专业选手。它不靠喧哗吸引人,而是靠那种“你一用就知道确实顺手”的可靠感取胜。(github.com)
它也像一个很懂效率哲学的导演。
你给它一段文字,它不只是把词拆开来看,而是试图更聪明地理解、压缩、建模、采样,再把结果呈现出来。它一边盯质量,一边盯速度,一边还惦记着部署成本。像极了那种既关心作品呈现、又关心预算表和拍摄周期的成熟导演。(github.com)
它更像一个愿意长期成长的系统角色。
今天它会画高分图,明天它能一步生成,后天它开始拍视频,再后来它还学会了怎么通过后训练进一步变强。它不是一次性绽放的烟火,更像一棵正在稳定伸展枝叶的树。(github.com)
为什么 Sana 值得认真看
因为它不只是“又一个文生图项目”。
它真正值得关注的地方在于:它把高分辨率生成这件本来很容易陷入高成本困局的事情,重新设计成了一套强调效率、质量和可部署性的系统路径。它在 README 中明确展示了自己的核心技术、性能指标、模型家族、快速启动方式、diffusers 适配、训练与微调入口,以及朝视频与后训练继续扩张的版图。(github.com)
这种项目最吸引人的地方,不是某一个数字,而是它身上那种“方向很清楚”的感觉。它知道自己要解决什么问题,也知道自己靠什么方法去解决,还愿意把这条路开放给更多开发者和研究者一起走。
结尾
Sana 这个名字听上去温和,但它做的事一点都不温吞。
它正试图告诉整个生成式 AI 世界:高分辨率,不一定非得沉重;高质量,不一定非得臃肿;大模型时代,也依然可以认真追求效率这件事。Sana 不是那种只在舞台上亮一瞬间的表演者,它更像一个把工具箱整理得很好的长期建设者,安静地把高效图像与视频生成这件事往前推。(github.com)
如果你关心高分辨率文生图、在意推理速度、关注部署现实性,也对图像到视频、训练到后训练这一整条路线感兴趣,那么 Sana 很值得被你认真打开一次。
因为它不像是在说“我也能画”。
它更像是在说:
来吧,把分辨率调高一点,把速度要求也提上来,我们不只要画出来,还要画得漂亮、画得快、画得真正能落地。
