CogCoM模型简介
CogCoM是由清华大学开发的一种新型视觉语言模型(VLM),它采用了名为"链式操作"(Chain of Manipulations, CoM)的创新方法,能够逐步解决复杂的视觉问题。这个模型展现了令人印象深刻的多模态能力,能够执行各种视觉任务,如视觉推理、目标检测、图像描述等。
CogCoM的关键特性
-
链式操作机制: CogCoM通过设计6种基本操作,使模型能够逐步解决复杂的视觉问题。这种方法允许模型在解决问题时提供证据和中间步骤。
-
多轮多图像架构: 模型采用了兼容典型VLM结构的多轮多图像模型架构,增强了处理复杂视觉场景的能力。
-
自动数据生成: 研究团队引入了一种级联数据生成流程,利用大型语言模型(LLM)和视觉基础模型(VFM)自动生成大量无错误的训练数据。
-
多样化能力: CogCoM具备聊天、图像描述、目标检测和推理等多种能力,展现了其作为通用视觉语言模型的潜力。
模型版本与性能
CogCoM目前提供了三个主要版本:
- cogcom-base-17b: 支持目标检测、OCR和CoM推理
- cogcom-grounding-17b: 在base版本基础上增强了目标检测能力
- cogcom-chat-17b: 在grounding版本基础上增加了聊天功能
这些模型在多个基准测试中都表现出色,如GQA、TallyVQA、TextVQA和ST-VQA等。例如,在GQA测试中,CogCoM达到了71.7%的准确率,显著超过了其他知名模型。
应用场景与示例
CogCoM展示了在多种多模态场景中的灵活适应能力:
- 证据性视觉推理: 模型能够提供推理过程和证据,使结果更具可解释性。
- 视觉目标检测: 精确定位图像中的特定对象。
- 基于目标的图像描述: 根据检测到的目标生成详细的图像描述。
- 图像描述: 生成整体图像的概括性描述。
- 多项选择问答: 回答关于图像的复杂问题。
- 详细描述: 提供图像中细节的深入分析。
技术细节与实现
硬件要求
- 模型推理:
- INT4量化: 1 * RTX 3090(24G)
- FP16: 1 * A100(80G) 或 2 * RTX 3090(24G)
- 模型微调:
- FP16: 推荐 4 * A100(80G) 或 8 * RTX 3090(24G)
安装与使用
-
环境要求:
- Python 3.11
- CUDA >= 11.7
- 其他依赖包(详见requirements.txt)
-
安装步骤:
pip install -r requirements.txt python -m spacy download en_core_web_sm
-
模型下载: 可以通过Hugging Face或SAT(SwissArmyTransformer)下载模型权重。
-
运行demo:
- Web Demo: 使用Gradio实现的图形界面
- CLI Demo: 命令行交互式推理
模型微调
如果需要在特定任务或领域上微调CogCoM,可以参考finetune.sh
和finetune.py
文件中的代码。
使用指南
任务提示词
-
通用多轮对话: 可以自由输入任何内容进行对话。
-
链式操作推理: 通过特定的启动提示词,可以显式激活CogCoM的CoM推理机制:
Please solve the problem gradually via a chain of manipulations, where in each step you can selectively adopt one of the following manipulations GROUNDING(a phrase)->boxes, OCR(an image or a region)->texts, CROP_AND_ZOOMIN(a region on given image)->new_image, CALCULATE(a computable target)->numbers, or invent a new manipulation, if that seems helpful. {QUESTION}
-
视觉目标检测: CogCoM支持多种目标检测相关任务,包括:
- 视觉目标检测(VG)
- 基于目标的描述(GC)
- 带坐标的图像描述(IDC)
开源与许可
CogCoM的代码采用Apache-2.0许可证开源,但模型权重的使用需遵守特定的模型许可。
总结与展望
CogCoM作为一种新型视觉语言模型,通过创新的链式操作机制,实现了复杂视觉问题的逐步解决。它在多个基准测试中的出色表现,以及在各种多模态任务中的灵活适应性,展示了其作为通用视觉语言模型的巨大潜力。未来,随着进一步的研究和优化,CogCoM有望在更广泛的应用场景中发挥重要作用,推动视觉语言处理技术的发展。
研究者和开发者可以通过GitHub仓库(https://github.com/THUDM/CogCoM)获取更多关于CogCoM的信息、代码和资源。随着人工智能和计算机视觉技术的不断进步,我们可以期待看到更多像CogCoM这样的创新模型,为多模态智能系统的发展带来新的可能性。