VideoChat-Flash:上海AI Lab开源高效处理超长视频的多模态大模型

简介: VideoChat-Flash 是上海人工智能实验室等机构推出的多模态大模型,通过分层压缩技术高效处理长视频,支持长达数小时的视频输入,推理速度提升5-10倍。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  1. 高效处理长视频:通过分层压缩技术(HiCo),显著减少计算量,支持长达数小时的视频输入。
  2. 多阶段学习方案:从短视频到长视频的多阶段学习,提升模型对长上下文的理解能力。
  3. 强大性能表现:在多个长视频和短视频基准测试中表现优异,推理速度比前代模型快5-10倍。

正文(附运行示例)

VideoChat-Flash 是什么

VideoChat-Flash

VideoChat-Flash 是由上海人工智能实验室和南京大学等机构联合开发的多模态大语言模型(MLLM),专注于长视频建模。该模型通过分层压缩技术(HiCo)高效处理长视频,显著减少计算量,同时保留关键信息。

VideoChat-Flash 采用多阶段从短到长的学习方案,结合真实世界长视频数据集 LongVid,进一步提升对长视频的理解能力。该模型在多个长视频和短视频基准测试中均表现出色,超越了其他开源 MLLM 模型。

VideoChat-Flash 的主要功能

  • 长视频理解能力:通过分层压缩技术(HiCo)有效处理长视频,能处理长达数小时的视频内容。
  • 高效模型架构:每个视频帧编码为仅 16 个 token,推理速度比前代模型快 5-10 倍。
  • 多跳上下文理解:支持多跳 NIAH 任务,能追踪长视频中的多个关联图像序列,提升复杂上下文的理解能力。

VideoChat-Flash 的技术原理

  • 分层压缩技术(HiCo):高效处理长视频中的冗余视觉信息,分为片段级压缩和视频级压缩。
  • 多阶段学习方案:从短视频到长视频的多阶段学习,逐步提升模型对长上下文的理解能力。
  • 真实世界长视频数据集 LongVid:包含 30 万小时的真实世界长视频和 2 亿字的注释,为模型提供丰富的训练素材。

如何运行 VideoChat-Flash

1. 安装依赖

首先,确保已安装 Python 3.8 及以上版本,并安装必要的依赖库:

pip install transformers==4.40.1
pip install timm
pip install av
pip install imageio
pip install decord
pip install opencv-python
pip install flash-attn --no-build-isolation

2. 加载和运行模型

使用 HuggingFace 加载 VideoChat-Flash 模型并运行推理任务:

from transformers import AutoModel, AutoTokenizer

# 模型设置
model_path = 'OpenGVLab/VideoChat-Flash-Qwen2_5-2B_res448'

tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
model = AutoModel.from_pretrained(model_path, trust_remote_code=True).half().cuda()
image_processor = model.get_vision_tower().image_processor

# 是否使用全局压缩
mm_llm_compress = False
if mm_llm_compress:
    model.config.mm_llm_compress = True
    model.config.llm_compress_type = "uniform0_attention"
    model.config.llm_compress_layer_list = [4, 18]
    model.config.llm_image_token_ratio_list = [1, 0.75, 0.25]

# 推理设置
max_num_frames = 512
generation_config = dict(
    do_sample=False,
    temperature=0.0,
    max_new_tokens=1024,
    top_p=0.1,
    num_beams=1
)

# 视频路径
video_path = "your_video.mp4"

# 单轮对话
question1 = "Describe this video in detail."
output1, chat_history = model.chat(video_path=video_path, tokenizer=tokenizer, user_prompt=question1, return_history=True, max_num_frames=max_num_frames, generation_config=generation_config)

print(output1)

# 多轮对话
question2 = "How many people appear in the video?"
output2, chat_history = model.chat(video_path=video_path, tokenizer=tokenizer, user_prompt=question2, chat_history=chat_history, return_history=True, max_num_frames=max_num_frames, generation_config=generation_config)

print(output2)

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关文章
|
8月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
7925 111
|
8月前
|
机器学习/深度学习 人工智能 人机交互
当AI学会“看”和“听”:多模态大模型如何重塑人机交互
当AI学会“看”和“听”:多模态大模型如何重塑人机交互
657 121
|
8月前
|
数据采集 人工智能 搜索推荐
智能新纪元:多模态大模型如何重塑人机交互
智能新纪元:多模态大模型如何重塑人机交互
390 113
|
8月前
|
人工智能 自然语言处理 Shell
我们开源了一款 AI 驱动的用户社区
KoalaQA 是一款开源的 AI 驱动用户社区,支持智能问答、语义搜索、自动运营与辅助创作,助力企业降低客服成本,提升响应效率与用户体验。一键部署,灵活接入大模型,快速构建专属售后服务社区。
773 5
我们开源了一款 AI 驱动的用户社区
|
9月前
|
人工智能 自然语言处理 IDE
模型微调不再被代码难住!PAI和Qwen3-Coder加速AI开发新体验
通义千问 AI 编程大模型 Qwen3-Coder 正式开源,阿里云人工智能平台 PAI 支持云上一键部署 Qwen3-Coder 模型,并可在交互式建模环境中使用 Qwen3-Coder 模型。
1376 109
|
9月前
|
分布式计算 测试技术 Spark
科大讯飞开源星火化学大模型、文生音效模型
近期,科大讯飞在魔搭社区(ModelScope)和Gitcode上开源两款模型:讯飞星火化学大模型Spark Chemistry-X1-13B、讯飞文生音频模型AudioFly,助力前沿化学技术研究,以及声音生成技术和应用的探索。
759 2
|
8月前
|
人工智能 搜索推荐 程序员
当AI学会“跨界思考”:多模态模型如何重塑人工智能
当AI学会“跨界思考”:多模态模型如何重塑人工智能
1158 120

热门文章

最新文章