【免费下载链接】InternVL3-14B-Instruct项目地址https://ai.gitcode.com/OpenGVLab/InternVL3-14B-Instruct点击查看免费下载InternVL3-14B-Instruct是上海 AI Lab 开源的视觉-语言多模态大模型MLLM采用经典的ViT-MLP-LLM三段式架构由约 3 亿参数的视觉编码器InternViT-300M提取图像特征经两层MLP投影器对齐维度再交给Qwen2.5-14B语言模型生成回答。本文带你快速拆解这三大组件如何融合以及动态分辨率、Pixel Shuffle 等关键设计背后的原理。上面这只小熊猫正是项目 examples/ 目录里的示例图——模型能描述它、回答关于它的问题靠的就是下面这套架构。一、三大组件全景14.5B 参数从哪里来查看权重索引文件 model.safetensors.index.json整个模型共925 个张量按前缀可分为三部分组件张量数参数量级源码入口视觉编码器 vision_model340~300Mmodeling_intern_vit.py投影器 mlp16~20Mmodeling_internvl_chat.py语言模型 language_model579~14BQwen2.5-14Bmodeling_internvl_chat.py权重以 bfloat16 存储总计约 30GB7 个分片 safetensors对应约 145 亿参数。这种ViT MLP LLM的组合是 InternVL 系列延续多代的核心范式简单却高效。二、ViT 部分InternViT-300M 与动态分辨率视觉配置在 config.json 的vision_config字段中patch_size 14图像被切成 14×14 的小块送入 ViTforce_image_size 448每个图块固定 448×448 像素448÷14 32即一张图块产生 32×32 1024 个视觉 token网络共 24 层 Transformerhidden_size 1024整体约 3 亿参数。InternVL3 支持动态分辨率config.json 中min_dynamic_patch: 1、max_dynamic_patch: 12大图会被自动切分成最多 4×3 12 个 448×448 图块最高 1344×896 分辨率并额外生成一张 448×448 缩略图use_thumbnail: true。这样小图不浪费算力大图细节也不丢失多图与视频输入同样适用。三、MLP 部分256 个 token 的瘦身魔法如果直接把 1024 个视觉 token 喂给 LLM序列会爆炸。InternVL3 用Pixel Shuffle把 token 数压到1/4在 extract_feature 中取出 ViT 输出去掉 CLS tokenpixel_shuffle 按downsample_ratio: 0.5config.json将相邻 2×2 的 token 特征合并1024 →256 个 token特征维度相应放大 4 倍1024→4096最后经 mlp1 投影器LayerNorm → Linear(4096→5120) → GELU → Linear(5120→5120)把视觉特征对齐到 LLM 的 5120 维隐层空间。这个两层 MLP 就是视觉与语言之间的翻译官仅 6 个张量4 个权重 2 个偏置参数占比不足 0.2%却承担了跨模态对齐的全部工作。每个 448×448 图块在 forward 中会替换掉提示词里 256 个IMG_CONTEXT占位符视觉信息就此融入文本序列。四、LLM 部分Qwen2.5-14B 的能力底座语言部分采用Qwen2.5-14B配置见 config.json 的llm_config48 层 Transformerhidden_size 5120intermediate_size 1382440 个注意力头 8 个 KV 头GQA 分组查询注意力推理更快更省显存词表 151674支持 32K 动态 RoPE 长上下文bfloat16 精度。InternVL3 的一大亮点是Native Multimodal Pre-Training语言与视觉在同一个预训练阶段交替学习因此纯文本能力甚至超过原版 Qwen2.5-14B。此外 InternVL3 引入了V2PEVariable Visual Position Encoding为视觉 token 使用更小、更灵活的位置增量显著提升了长文档、多图文交错场景的理解能力。五、数据流动向图一次问答的完整旅程 以 examples/image1.jpg 配问题图中是什么动物为例图像被预处理成 1~12 个 448×448 图块image占位符在 batch_chat 中展开为num_image_token × 图块数个IMG_CONTEXT每图块 256 个图块送入 InternViT-300M → Pixel Shuffle → mlp1得到视觉特征向量特征替换掉对应占位符的 embedding与文本 embedding 拼接成统一序列Qwen2.5-14B 基于对话模板conversation.py 中internvl2_5模板逐 token 生成回答。配置总开关集中在 InternVLChatConfigtemplate对话模板、ps_version: v2修正了 v1 转置 bug 的 Pixel Shuffle 版本、select_layer: -1取 ViT 最后一层输出等调参时改 config.json 即可。六、快速上手如何加载 InternVL3-14B-Instruct先 clone 仓库git clone https://gitcode.com/OpenGVLab/InternVL3-14B-Instruct然后用 HuggingFace Transformers 加载模型自带自定义代码需开启trust_remote_codefrom transformers import AutoTokenizer, AutoModel model_dir InternVL3-14B-Instruct tokenizer AutoTokenizer.from_pretrained(model_dir, trust_remote_codeTrue) model AutoModel.from_pretrained( model_dir, torch_dtypeauto, device_mapauto, trust_remote_codeTrue, )调用model.chat(tokenizer, pixel_values, question)即可对话完整示例见 README.md 的 Quick Start 部分。单卡 16GB 显存bfloat16即可运行非常适合本地部署体验。七、总结为什么是 ViT-MLP-LLM设计点作用InternViT-300M 448px 动态切块小模型 高分辨率细节捕捉强Pixel Shuffle (0.5)视觉 token 减至 1/4大幅降低 LLM 计算量两层 MLP 投影器以极低成本完成视觉-语言维度对齐Qwen2.5-14B Native 多模态预训练文本与多模态能力双高V2PE 可变视觉位置编码长上下文、多图交错理解更准InternVL3-14B-Instruct 证明了不需要 6B 的大视觉塔靠动态分辨率 token 压缩 强 LLM 底座的巧妙组合14B 规模就能拿下多模态基准前列。理解了 ViT、MLP、LLM 三者的分工与数据流你就能读懂绝大多数开源 MLLM 的架构本质。延伸阅读权重映射详见 model.safetensors.index.json视觉网络细节见 modeling_intern_vit.py对话模板见 conversation.py。赞分享【免费下载链接】InternVL3-14B-Instruct项目地址https://ai.gitcode.com/OpenGVLab/InternVL3-14B-Instruct点击查看免费下载相关推荐一图读懂InternVL3-14B-Pretrained模型架构InternViT-300M、MLP投影器与Qwen2.5-14B如何协同工作一图读懂InternVL3 14B Pretrained模型架构InternViT 300M、MLP投影器与Qwen2.5 14B如何协同工作 InternV一图看懂InternVL3_5-14B-Flash架构InternViTMLPQwen3的快闪多模态大模型一图看懂InternVL3_5 14B Flash架构InternViTMLPQwen3的快闪多模态大模型 InternVL3_5 14B Flash 是InternVL3-14B-Pretrained多模态大模型预训练权重入门指南ViT-MLP-LLM架构它能做什么、怎么开始InternVL3 14B Pretrained多模态大模型预训练权重入门指南ViT MLP LLM架构它能做什么、怎么开始 InternVL3 14B Pr上一篇Harbor 用户管理测试实战:DB 模式下非管理员用户修改密码的验证与实现剖析下一篇平安银行「卖出」决策报告深度解析TradingAgents-CN 多智能体辩论如何生成投资决策报告创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考