InternVL3_5-30B-A3B-MPO 快速上手教程:新手10分钟跑通第一个图片问答Demo
【免费下载链接】InternVL3_5-30B-A3B-MPO项目地址https://ai.gitcode.com/OpenGVLab/InternVL3_5-30B-A3B-MPO点击查看免费下载InternVL3_5-30B-A3B-MPO是 OpenGVLab 开源 InternVL3.5 系列中的一款多模态大模型MLLM支持图片问答、多图理解与长文本对话底层采用 Qwen3-30B-A3B 混合专家MoE语言模型 InternViT-300M 视觉编码器。本教程手把手带你快速上手10 分钟即可用transformers跑通第一个图片问答 Demo 一、它是什么30B-A3B-MPO 三个关键词关键词含义InternVL3.5InternVL 系列的最新一代延续 ViT–MLP–LLM 架构范式支持动态高分辨率图像切块30B-A3B总参数量约 30.8B但每次前向只激活约 3B 参数MoE 架构推理速度快MPO完成 CPT持续预训练 SFT监督微调 MPO混合偏好优化离线强化学习阶段的中间产物推理质量高于 Instruct 版本 如果你追求最强推理效果可等完整 CascadeRL 版本想验证 MPO 训练阶段的效果或做研究MPO 版本是首选。二、10分钟跑通环境准备与模型加载1. 准备 Python 环境官方要求transformers4.52.1建议同时装好 PyTorch 与 torchvisionpip install transformers4.52.1 torch torchvision2. 获取模型权重模型权重以layer-*.safetensors分片形式存放在仓库中共 48 个语言层分片 视觉塔 其他模块权重分布映射见 model.safetensors.index.json文件内容vision.safetensorsInternViT 视觉编码器权重layer-0 ~ layer-47-ep-0-of-1.safetensorsMoE 语言模型 48 层专家权重others.safetensors嵌入层、归一化层等公共模块config.json模型结构配置视觉塔 Qwen3-MoE 双配置# 将模型权重下载到本地 git clone https://gitcode.com/OpenGVLab/InternVL3_5-30B-A3B-MPO3. 加载模型核心 6 行代码import torch from transformers import AutoTokenizer, AutoModel path ./InternVL3_5-30B-A3B-MPO # 本地权重目录 model AutoModel.from_pretrained( path, torch_dtypetorch.bfloat16, low_cpu_mem_usageTrue, use_flash_attnTrue, trust_remote_codeTrue, # 必须开启加载仓库内自定义建模代码 device_mapauto).eval() tokenizer AutoTokenizer.from_pretrained(path, trust_remote_codeTrue, use_fastFalse)关键点解析trust_remote_codeTrue是新手最常踩的坑该模型使用仓库自带的 modeling_internvl_chat.py 中定义的InternVLChatModel类而非 transformers 内置实现配置见 config.json 的auto_map字段。device_mapauto会自动把模型分片到多张 GPU30B 级别模型单张 80GB A100 即可部署 bf16 精度。显存吃紧时可改用 8-bit 量化加载加load_in_8bitTrue。三、第一个图片问答 Demo三步完成完整的图像预处理代码动态分辨率切块dynamic_preprocess、load_image等可参考 README.md 的 Quick Start 章节核心调用只有三步第 1 步加载图片为 pixel_valuespixel_values load_image(./examples/image1.jpg, max_num12).to(torch.bfloat16).cuda()InternVL 的动态高分辨率策略会把图片切成最多 12 个 448×448 的块送入视觉编码器小图只切 1 块细节更足。第 2 步调用 chat 接口generation_config dict(max_new_tokens1024, do_sampleTrue) question image\n请描述这张图片里有什么。 response model.chat(tokenizer, pixel_values, question, generation_config) print(fAssistant: {response})image占位符会在 chat 方法 中被自动替换为视觉 token 序列图像特征与文本特征在此融合后送入语言模型。第 3 步多轮追问可选response, history model.chat(tokenizer, pixel_values, question, generation_config, historyNone, return_historyTrue) response, history model.chat(tokenizer, pixel_values, 图中主体是什么颜色, generation_config, historyhistory, return_historyTrue)对话模板由 conversation.py 提供多轮历史通过history参数传递即可无需自己拼 prompt。四、常见问题 FAQQ1显存不够 / 加载报错确认transformers4.52.1版本过低会直接报错单卡放不下时使用device_mapauto或多卡张量并行可改用 BNB 8-bit 量化load_in_8bitTrue省约一半显存。Q2必须加trust_remote_code吗必须。模型架构InternVLChatModel由仓库内自定义代码实现configuration_internvl_chat.py 定义配置、modeling_internvl_chat.py 定义前向逻辑不启用远程代码将无法加载。Q3想让它深度思考将model.system_message设置为官方 Thinking 系统提示词并推荐do_sampleTrue、temperature0.6可显著提升数学与逻辑类图片题的表现具体提示词见 README.md 的 Thinking Mode 小节。Q4想要更高吞吐的线上服务生产部署推荐 LMDeploy 或 vLLM 框架一行命令即可起 OpenAI 兼容的 API 服务详见 README.md 的 Deployment 章节。五、小结本教程带你走完了 InternVL3_5-30B-A3B-MPO 多模态大模型的上手全流程装环境 → 拉权重 → 加载模型 → 图片问答。接下来你可以尝试️ 替换成自己的图片测试 OCR、图表理解能力 用num_patches_list传入多张图片做对比问答 用 LMDeploy 把它打包成 RESTful 服务接入现有业务。InternVL3.5 全系模型均采用 apache-2.0 协议开源放心用于学习与商业场景祝使用愉快 赞分享【免费下载链接】InternVL3_5-30B-A3B-MPO项目地址https://ai.gitcode.com/OpenGVLab/InternVL3_5-30B-A3B-MPO点击查看免费下载相关推荐10分钟跑通第一个Agent Skill评测skill-up快速上手教程10分钟跑通第一个Agent Skill评测skill up快速上手教程 skill up 是一款用于 Agent Skill 评测与演进的开源 CLI 工具5 分钟快速上手 InternVL2.5-26B-MPO-AWQLMDeploy 推理环境搭建与第一条图片问答5 分钟快速上手 InternVL2.5 26B MPO AWQLMDeploy 推理环境搭建与第一条图片问答 InternVL2.5 26B MPO AWQ如何快速上手VideoChat210分钟跑通第一个视频问答含模型下载步骤如何快速上手VideoChat210分钟跑通第一个视频问答含模型下载步骤 VideoChat2 是 OpenGVLab 开源的多模态大模型能看懂视频创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考