LAVIS
Salesforce开源的视觉-语言多模态AI库,整合BLIP-2/InstructBLIP等10+
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Salesforce开源的视觉-语言多模态AI库,整合BLIP-2/InstructBLIP等10+
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2022年9月,Salesforce Research 团队发布了一个名为 LAVIS 的开源项目,定位是视觉-语言智能(Language-Vision Intelligence)的一站式解决方案。如果你熟悉 PyTorch-Hub 或 Hugging Face Transformers,那可以把 LAVIS理解为这个领域的专业化升级版——它不仅仅是一个预训练模型集合,而是一套完整的训练、推理和评估框架,涵盖了从图文匹配到视频理解、从图像描述到视觉问答的几乎所有主流多模态任务。

图1:LAVIS 官方 Logo
在 LAVIS 出现之前,研究者和工程师如果要复现一篇多模态论文,往往面临三重困难:代码分散(每个模型一套实现)、训练繁琐(缺乏标准化流程)、评测混乱(不同数据集接口不统一)。Salesforce 作为全球企业云服务巨头,在 NLP 和多模态领域有深厚的积累——他们先后开源了 BLIP、BLIP-2、InstructBLIP 等影响深远的工作。LAVIS 就是将这些分散的技术成果整合到一个统一框架中的产物。
打个比方:如果把多模态 AI 模型比作不同型号的汽车发动机,那么 LAVIS 就是一座汽车装配工厂——不仅提供发动机,还提供装配手册、质量检测标准和不同车型的适配方案。
LAVIS 的功能版图极为宽广,根据 GitHub 仓库的 lavis/tasks 目录,主要支持以下任务类型:
| 任务类型 | 说明 | 典型模型 |
|---|---|---|
| Image Captioning | 图像描述生成 | BLIP, ALBEF |
| Visual Question Answering (VQA) | 视觉问答 | BLIP-2, InstructBLIP |
| Image-Text Matching | 图文匹配/检索 | ALBEF, CLIP |
| Text Localization (Grounding) | 文本定位到图像区域 | ALPRO |
| Multimodal Classification | 多模态分类 | CLIP |
| Multimodal Search | 多模态语义搜索 | CLIP-based |
| VideoQA / Video-Text | 视频理解 | ALPRO, BLIP-2 |
| Text-to-Image Generation | 文生图 | BLIP-Diffusion |
| Zero-shot / Few-shot | 零样本/少样本迁移 | InstructBLIP |
其中最值得关注的是 InstructBLIP(2023年5月发布)和 BLIP-2(2023年1月发布)——前者将视觉指令微调引入多模态领域,在多个 VQA 基准上刷新了零样本泛化纪录;后者则通过轻量级 Query Transformer 连接冻结的视觉编码器和 LLM,大幅降低了训练成本。
LAVIS 采用分层模块化架构,代码组织非常清晰:
lavis/
├── models/ # 各类模型实现(BLIP、BLIP-2、ALBEF、CLIP等)
├── processors/ # 输入预处理(图像/文本/音频/视频)
├── datasets/ # 数据集定义和加载
├── runners/ # 训练/评估运行器
└── tasks/ # 任务定义
关键设计理念:
lavis.models 的注册机制,可以像调用 PyTorch 模块一样方便地加载任意预训练模型。支持的预训练模型涵盖了 CLIP(OpenAI)、ALBEF(Salesforce)、BLIP-2(Salesforce)、InstructBLIP(Salesforce)、X-InstructBLIP(跨模态扩展)等,模型列表持续更新。
从 requirements.txt 可以看到核心技术依赖:
安装方式极为简单:
pip install salesforce-lavis
对于研究用途,可以通过 run_scripts/ 目录下的脚本快速启动训练和推理。例如 run_demo.sh 只需要一行命令即可启动 Streamlit Web 界面。
LAVIS 内置了一个基于 Streamlit 的 Web 界面(app/main.py),提供以下六个交互功能模块:

图2:LAVIS Streamlit Web Demo 界面
整个 Web 界面通过 python app/main.py 或 streamlit run app/main.py 即可启动,适合快速验证模型效果或做演示。
LAVIS 是一个高资源消耗的科研库,对硬件要求较高:
⚠️ 重要提示:当前版本缺少 Dockerfile,无法使用 Docker 一键部署。需要通过 pip 手动安装所有依赖,如果遇到 PyTorch 与 CUDA 版本不匹配的问题,建议参考 PyTorch 官方安装指南。
LAVIS 的出现标志着多模态 AI 研究从"单点突破"向"系统化整合"的转变。它与 Hugging Face Transformers 的定位形成互补——后者偏向通用 NLP 和扩散模型,而 LAVIS 专注于视觉-语言跨模态任务。InstructBLIP 的指令微调范式对后来 GPT-4V、Gemini 等商业视觉语言模型也有重要影响。
从 GitHub 趋势看,多模态理解+生成(VLM/LVM)是 2023-2024 年最活跃的研究方向之一,LAVIS 作为这一浪潮中的代表性开源基础设施,值得持续关注。