78B多模态大模型如何落地?InternVL2_5-78B-MPO多卡部署与省显存量化完整攻略

发布时间:2026/10/18 23:08:11
78B多模态大模型如何落地?InternVL2_5-78B-MPO多卡部署与省显存量化完整攻略 【免费下载链接】InternVL2_5-78B-MPO项目地址https://ai.gitcode.com/OpenGVLab/InternVL2_5-78B-MPO点击查看免费下载InternVL2_5-78B-MPO 是一款基于 ViT-MLP-LLM 架构的开源多模态大模型融合了 6B 视觉编码器 InternViT 与 72B 语言模型 Qwen2.5-72B-Instruct擅长图文理解、多图对比和视频问答。本文带你完成它的多卡部署、8-bit 省显存量化和 LMDeploy 服务化上线让 78B 级别的多模态模型真正跑起来 为什么值得部署 InternVL2_5-78B-MPOInternVL2_5-78B-MPO 是 InternVL 2.5 系列经混合偏好优化MPO, Mixed Preference Optimization增强后的旗舰版本。相比基座模型它在 MMStar、OCRBench、MathVista 等基准上都有明显提升官方综合均分从 75.2 提升到 76.6尤其 OCR 与数学推理能力增强显著。官方示例图片 examples/image1.jpg可直接用于测试多模态对话它的核心能力包括能力说明动态分辨率按 448×448 分块切图最多 12 块细节保留更好多图对话支持拼接图与独立图两种多图输入方式视频理解按帧抽取图像进行视频多轮问答纯文本对话不传图片时退化为纯文本 LLM 对话模型结构定义在 modeling_internvl_chat.py视觉编码器定义在 modeling_intern_vit.py对话模板在 conversation.py配置见 config.json。准备工作下载模型与硬件需求下载模型文件git clone https://gitcode.com/OpenGVLab/InternVL2_5-78B-MPO模型权重以 33 个 safetensors 分片存放如 model-00001-of-00033.safetensors由 model.safetensors.index.json 索引加载总大小约 150GB 以上请预留足够磁盘空间。显存需求速查表这是新手最常踩坑的地方先记住这张表官方 Quick Start 中的建议加载方式硬件需求16-bitbf16多卡至少3 张 80GB显卡8-bit 量化load_in_8bit至少2 张 80GB显卡单卡80GB 单卡放不下完整权重不推荐 提示需要安装transformers4.37.2模型依赖自定义代码加载时必须加trust_remote_codeTrue。多卡部署最关键的 device_map 技巧78B 模型放不进一张卡官方在 README.md 的 Quick Start 中给出了一个手动切分device_map的方案值得理解其中的两个精髓首卡减半分配第 0 号 GPU 还要承载 ViT 视觉编码器、MLP 投影层和 LLM 的嵌入层所以按半张卡计算 LLM 层数首尾层同卡LLM 的最后一层与lm_head都放在第 0 号卡避免多卡推理时张量不在同一设备导致的报错。核心思路是80 层 LLM 按 GPU 数量切分split_model函数返回的device_map告诉 transformers 每一层放在哪张卡device_map split_model(InternVL2_5-78B) # 按 GPU 数量自动切层 model AutoModel.from_pretrained( path, torch_dtypetorch.bfloat16, low_cpu_mem_usageTrue, use_flash_attnTrue, # 开启 FlashAttention省显存提速 trust_remote_codeTrue, device_mapdevice_map).eval()3 卡 bf16 部署时第 0 卡约承载 ViT 投影层 部分 LLM 层第 1、2 卡各承载约 33 层 LLM整模型均衡落盘。省显存量化8-bit 加载只需 2 张 80GB 卡显存不够时的首选方案是 BNB 8-bit 量化加载。相比 bf16 全精度权重大小约减半硬件门槛从 3 张 80GB 降到 2 张 80GB。只需在加载参数中加一个开关model AutoModel.from_pretrained( path, torch_dtypetorch.bfloat16, load_in_8bitTrue, # 开启 8-bit 量化 low_cpu_mem_usageTrue, use_flash_attnTrue, trust_remote_codeTrue, device_mapdevice_map).eval()量化后注意事项device_map仍需用上面的多卡切分方案不要只用单卡.cuda()8-bit 量化会轻微影响生成质量对精度敏感的数学推理场景建议用 bf16 3 卡方案官方明确建议load_in_8bitTrue配两张 80GB 卡load_in_8bitFalse至少三张 80GB 卡。跑通第一次对话图文问答实战模型加载后用model.chat接口即可对话。以仓库自带的示例图为例图片加载逻辑见 README.md 的load_image函数pixel_values load_image(./examples/image1.jpg, max_num12).to(torch.bfloat16).cuda() generation_config dict(max_new_tokens1024, do_sampleTrue) # 单图问答 question image\nPlease describe the image shortly. response model.chat(tokenizer, pixel_values, question, generation_config) print(response)几个新手友好的要点多轮对话传historyhistory保持上下文首次调用加return_historyTrue拿到 history多图对话将两张图的pixel_values沿 dim0 拼接独立图模式需传num_patches_list告知每张图的切块数视频问答load_video按num_segments抽帧问题中用Frame1: image\nFrame2: image...格式占位示例视频见 examples/red-panda.mp4流式输出结合TextIteratorStreamer在子线程中生成逐字打印体验接近 ChatGPT。生产级上线用 LMDeploy 一键服务化自研推理代码适合原型验证要对外提供 API 服务推荐官方推荐的 LMDeploy 部署方案把 78B 多模态模型像普通 LLM 一样服务化pip install lmdeploy0.6.4一条命令启动兼容 OpenAI 接口的推理服务--tp 4表示张量并行 4 卡lmdeploy serve api_server OpenGVLab/InternVL2_5-78B-MPO --server-port 23333 --tp 4启动后用标准 OpenAI SDK 即可调用from openai import OpenAI client OpenAI(api_keyYOUR_API_KEY, base_urlhttp://0.0.0.0:23333/v1) model_name client.models.list().data[0].id response client.chat.completions.create( modelmodel_name, messages[{role: user, content: [ {type: text, text: describe this image}, {type: image_url, image_url: {url: 图片地址}} ]}], temperature0.8, top_p0.8)LMDeploy 还支持批量 prompt 推理与多图会话多图会消耗更多输入 token记得调大session_len官方示例使用 8192。新手避坑清单问题解决办法加载报自定义类错误加trust_remote_codeTrue并升级transformers4.37.2多卡推理设备不匹配报错使用官方split_model的 device_map勿手动.cuda()OOM 显存不足换 8-bit 量化或增加 GPU 数量图片max_num从 12 调小多图回答混乱独立图模式必须传num_patches_list服务响应慢开启 FlashAttention上线改用 LMDeploy tp 多卡并行总结InternVL2_5-78B-MPO 让开源阵营拥有了 78B 级、经过偏好优化的多模态理解能力。落地路径非常清晰3 张 80GB 卡跑 bf16 全精度 → 显存吃紧就 8-bit 量化 2 卡起步 → 生产环境用 LMDeploy 一条命令服务化。配合动态分辨率、多图与视频理解能力它可以支撑文档 OCR、图文客服、视频分析等真实业务场景。如果你正在评估大参数多模态模型的私有化部署这套方案值得直接套用。赞分享【免费下载链接】InternVL2_5-78B-MPO项目地址https://ai.gitcode.com/OpenGVLab/InternVL2_5-78B-MPO点击查看免费下载相关推荐InternVL2_5-78B多卡部署指南device_map拆分78B大模型的3个关键细节InternVL2_5 78B多卡部署指南device_map拆分78B大模型的3个关键细节 InternVL2_5 78B 是书生InternVL2.5Jujutsu (jj) Git 兼容性全解Git 后端、Colocated 工作区与格式映射机制Jujutsu jj Git 兼容性全解Git 后端、Colocated 工作区与格式映射机制 Jujutsujj提供了两种存储提交的后端其中一种直接建InternVL2_5-Pretrain-Models 部署指南26B~78B 多卡推理、FlashAttention-2 加速与显存优化技巧InternVL2_5 Pretrain Models 部署指南26B~78B 多卡推理、FlashAttention 2 加速与显存优化技巧 InternV上一篇Agent Skills技能目录全览175个技能按语言分类速查清单从39个Python技能到7个Rust技能下一篇SQLFlow 基于 Couler 的工作流代码生成设计从多 Codegen Submitter 到统一的 Argo 工作流创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询