“设计师集体失业?字节跳动祭出多模态核弹:Sa2VA实现『所说即所得』式视频编辑!”
你是否经历过——
- 🎬 剪视频时反复框选目标,AI却总把猫耳朵识别成树叶
- 🖌️ 想用语言描述修改画面细节,得到的却是驴唇不对马嘴的蒙版
- 💸 雇专业团队做影视级分割,单分钟成本够买台iPhone…
今天揭秘的 Sa2VA 正在颠覆创作规则!这个由字节跳动联合中美顶尖实验室打造的多模态大模型,实现了三大突破:
- ✅ 像素级「读心术」 :一句\”把第三秒穿红裙女孩换成水墨风\”自动生成蒙版
- ✅ 时空连续理解:视频中移动的斑马线,连光影变化都能精准追踪
- ✅ 零样本跨模态:没见过的动漫角色?描述特征直接分割
基于 SAM2+LLaVA 的黄金组合,Sa2VA正在成为影视后期/元宇宙创作/工业检测的新基建——你的下一台「视觉瑞士军刀」,何必是人工?
🚀 快速阅读
Sa2VA 是一款结合了 SAM2 和 LLaVA 的多模态大语言模型,能够实现对图像和视频的密集、细粒度理解。
- 核心功能:支持图像和视频的指代分割、视觉对话和基于指令的视频编辑。
- 技术原理:通过解耦设计,保留 SAM2 的感知能力和 LLaVA 的语言理解能力,并引入 Ref-SAV 数据集提升复杂场景下的性能。
Sa2VA 是什么

Sa2VA 是由字节跳动联合加州大学默塞德分校、武汉大学和北京大学共同推出的一款多模态大语言模型。它结合了 SAM2 和 LLaVA 的优势,能够实现对图像和视频的密集、细粒度理解。Sa2VA 通过统一的任务表示,将图像或视频指代分割、视觉对话、视觉提示理解等任务整合到一个框架中,利用 LLM 生成的空间-时间提示指导 SAM2 生成精确分割掩码。
Sa2VA 采用了解耦设计,保留了 SAM2 的感知能力和 LLaVA 的语言理解能力,并引入了 Ref-SAV 数据集,显著提升了复杂视频场景下的指代分割性能。
Sa2VA 的主要功能
- 图像和视频指代分割:根据自然语言描述精确分割图像或视频中的目标对象。
- 图像和视频对话:支持与用户进行基于图像或视频的对话,回答与视觉内容相关的问题。
- 视觉提示理解:支持处理视觉提示(如图像中的框、点等),并结合语言描述生成对应的分割掩码或回答。
- 基于指令的视频编辑:根据用户指令对视频内容进行编辑。
- 密集的视觉理解:能理解图像和视频的整体内容,还能对像素级的视觉细节进行分析和操作,支持复杂场景下的细粒度任务。
- 零样本推理:支持在未见过的视频上进行推理,根据语言描述直接生成分割掩码或回答问题,无需额外训练。
Sa2VA 的技术原理
- 模型架构:结合 SAM2 和 LLaVA。SAM2 负责视频的时空分割,LLaVA 提供语言理解和生成能力。两者基于特殊的 [SEG] 令牌连接,LLaVA 的输出作为 SAM2 的输入,指导其生成分割掩码。
- 统一任务表示:将多种任务(如指代分割、视觉对话、视觉提示理解等)统一为单次指令调整过程。所有输入(图像、视频、文本)被编码为视觉令牌,输入到 LLM 中,输出文本或分割掩码。
- 解耦设计:基于解耦设计,冻结 SAM2 的解码器和记忆模块,保留其感知和跟踪能力。
- Ref-SAV 数据集:引入 Ref-SAV 数据集,包含超过 72k 个复杂视频场景中的对象表达。数据集基于自动标注管道生成,包含长文本描述和复杂场景,提升模型在复杂环境下的性能。
- 时空提示:基于 LLaVA 生成的 [SEG] 令牌作为 SAM2 的时空提示,指导生成精确的分割掩码。
- 联合训练:在多个数据集上进行联合训练,包括图像 QA、视频 QA、图像分割和视频分割数据。
如何运行 Sa2VA
1. 安装依赖
安装 Python 和 PyTorch:
conda create -n vlm python=3.10
conda activate vlm
conda install pytorch==2.3.1 torchvision==0.18.1 pytorch-cuda=12.1 cuda -c pytorch -c \"nvidia/label/cuda-12.1.0\" -c \"nvidia/label/cuda-12.1.1\"
安装 mmcv:
pip install mmcv==2.1.0 -f https://download.openmmlab.com/mmcv/dist/cu121/torch2.3/index.html
安装其他依赖:
pip install -r requirements.txt
2. 准备预训练模型下载以下预训练模型并放置在 ./pretrained
目录:
3. 准备数据集
下载训练数据集并放置在 data
目录。下载链接为 这里。
4. 训练模型
运行以下脚本进行训练:
bash tools/dist.sh train projects/llava_sam2/configs/sa2va_4b.py 8
5. 将训练好的模型转换为 HuggingFace 格式
运行以下脚本将训练好的模型转换为 HuggingFace 格式:
python projects/llava_sam2/hf/convert_to_hf.py projects/llava_sam2/configs/sa2va_4b.py --pth-model PATH_TO_PTH_MODEL --save-path PATH_TO_SAVE_FOLDER
资源
- GitHub 仓库:https://github.com/magic-research/Sa2VA