InternVL2-Pretrain-Models核心组件深度解析:InternViT视觉编码器如何看清世界
【免费下载链接】InternVL2-Pretrain-Models项目地址https://ai.gitcode.com/OpenGVLab/InternVL2-Pretrain-Models点击查看免费下载InternVL2-Pretrain-Models 是 InternVL 2.0 多模态大模型官方发布的 Stage-1 阶段预训练模型仓库包含 7 个从 1B 到 76B 参数的模型版本。整个体系的眼睛是InternViT 视觉编码器——它负责把图像切成小块、提取特征再压缩成语言模型能读懂的视觉词。这篇文章带你完整看懂它的核心组件视觉编码器、PixelShuffle 降采样、MLP 投影器以及特殊 token 对齐机制帮助你快速理解多模态预训练模型是如何看清世界的。 一分钟认识这个仓库里有什么InternVL 2.0 采用视觉编码器 大语言模型的双塔架构。本仓库提供的是第一阶段Stage-1预训练权重模型在此阶段学会对齐文本、图像、视频等多模态输入为后续指令微调打好地基。模型视觉部分InternViT语言部分InternVL2-1BInternViT-300M-448pxQwen2-0.5BInternVL2-2BInternViT-300M-448pxInternLM2-1.8BInternVL2-4BInternViT-300M-448pxPhi-3-miniInternVL2-8BInternViT-300M-448pxInternLM2-7BInternVL2-26BInternViT-6B-448pxInternLM2-20BInternVL2-40BInternViT-6B-448pxYi-34BInternVL2-Llama3-76BInternViT-6B-448pxLlama-3-70B可以看到小模型配 300M 轻量 ViT大模型配 6B 高配 ViT视觉编码器按负载分级搭配。 架构全景一张图的旅行路线InternVL 的完整推理路径只有 3 步对应modeling_internvl_chat.py中的InternVLChatModelInternViT图像 → 1024 个 patch 特征向量PixelShuffle MLPmlp11024 个向量 → 256 个视觉 tokenLLM视觉 token 替换文本中的IMG_CONTEXT占位符语言模型统一处理图文混合序列源码位置InternVL2-1B-Pretrain/modeling_internvl_chat.py其中视觉特征提取与投影集中在extract_feature方法L184-L202。 核心组件一InternViT 视觉编码器InternViT 是标准的 Vision Transformer完整实现在 InternVL2-1B-Pretrain/modeling_intern_vit.py 中。它由四个关键模块组成1️⃣ 图像分块Patch Embedding一张448×448 像素的图被 14×14 的卷积核切成 32×32 1024 个小块patch每块投影为一个 1024 维300M 版向量。代码见 InternVisionEmbeddings。 这就是图像变词语的第一步每个 patch 相当于一个视觉单词。2️⃣ 位置编码与 CLS Token每个 patch 向量会加上可学习的位置编码序列最前面还拼接一个特殊的CLSclasstoken用于聚合全局信息。为了适配动态分辨率位置编码支持双三次插值重采样_get_pos_embed方法。3️⃣ Transformer 编码器层每层 多头自注意力 MLP 前馈网络 归一化 随机深度DropPath。两个亮点FlashAttention2 加速FlashAttention 封装类 显著降低长序列注意力的显存占用448px 下 1024 个 token 的注意力计算开销可观可选 QK-Norm对 Query/Key 做 RMSNorm 稳定训练。层结构见 InternVisionEncoderLayer整体编码器入口为 InternVisionModel。4️⃣ 两档规格300M 与 6B从各目录的 config.json 中vision_config字段可确认两套配置参数InternViT-300M1B/2B/4B/8B 用InternViT-6B26B/40B/76B 用hidden_size10243200编码器层数2445注意力头数1625中间层维度409612800patch_size / image_size14 / 44814 / 448配置文件默认值定义在 configuration_intern_vit.py 的InternVisionConfig类中。⚡ 关键技巧动态分辨率固定 448px 输入会损失细节InternVL2 的解法是动态分辨率图像按原始宽高比被切成 1~12 个 448×448 的 patch 图块分别过 ViT另外还生成一张缩略图thumbnail提供全局视野。这些开关都写在每个模型的 config.json 里dynamic_image_size: true— 启用动态切图min_dynamic_patch: 1/max_dynamic_patch: 12— 每图最多 12 块use_thumbnail: true— 附加缩略图对应的配置参数说明见 configuration_internvl_chat.py。 核心组件二PixelShuffle MLP 投影器1024 个 patch 向量直接送入 LLM 太冗长。InternVL 用两个压缩器PixelShuffle 空间重排pixel_shuffle 方法把相邻的 2×2 个 patch 特征合并成一个序列从 32×32 压缩到 16×16token 数直接降为 1/4downsample_ratio: 0.5。MLP 投影器 mlp1L78-L83将合并后的视觉特征维度 1024×4线性映射到 LLM 的隐藏层维度完成视觉空间 → 语言空间的对齐。最终每张 448px 图块只产生256 个视觉 token这个数值就是config中的num_image_tokenL52 处计算(448 ÷ 14)² × 0.5² 1024 × 0.25 256 核心组件三特殊 Token 对齐视觉 token 如何进入对话靠一组特殊 token定义在 added_tokens.json 中Token作用img//img图像片段的起止标记IMG_CONTEXT占位符前向传播时被视觉特征向量原位替换ref//ref/box/quad支持目标定位、框坐标等视觉问答任务在generate方法L309-L349中文本先被嵌入随后所有IMG_CONTEXT位置的向量被 ViT 提取的视觉特征覆盖语言模型看到的就是一串图文混杂的 token 流自然实现跨模态理解。对话模板如 Hermes-2、ChatML 风格则封装在 conversation.py 中。 快速上手加载与验证本地加载任意一个模型目录以 1B 为例from transformers import AutoModel, AutoTokenizer model_dir InternVL2-1B-Pretrain # 替换为对应模型目录 tokenizer AutoTokenizer.from_pretrained(model_dir, trust_remote_codeTrue) model AutoModel.from_pretrained(model_dir, trust_remote_codeTrue)大模型目录如 26B、76B的权重以 safetensors 分片存放model.safetensors.index.json 记录了每个张量所在的分片文件加载时会自动处理。提示所有目录内都自带自定义代码modeling_*.py、configuration_*.py与auto_map映射因此必须使用trust_remote_codeTrue才能正确实例化InternVLChatModel。✅ 总结InternViT 为何看得清高分辨率分块448px 14px patch细节不丢失动态分辨率原比例切 1~12 块 缩略图小目标与全局语义兼顾PixelShuffle 压缩token 数降 4 倍长上下文负担大减ViT 规格分级300M/6B 两档视觉编码器与语言模型规模匹配特殊 token 体系IMG_CONTEXT原位替换 box/ref定位标记为 OCR、文档理解、目标定位等下游任务铺平道路。理解了这套切块 → 编码 → 压缩 → 对齐的四步流水线你就掌握了 InternVL 系列多模态模型视觉前端的全部核心逻辑。赞分享【免费下载链接】InternVL2-Pretrain-Models项目地址https://ai.gitcode.com/OpenGVLab/InternVL2-Pretrain-Models点击查看免费下载相关推荐InternVL2_5-Pretrain-Models 源码解析InternViT 视觉编码器 Pixel Shuffle 投影图像 Token 如何进入大语言模型InternVL2_5 Pretrain Models 源码解析InternViT 视觉编码器 Pixel Shuffle 投影图像 Token 如何进InternViT-6B 视觉塔深度剖析InternVL2.5-26B-MPO-AWQ 的视觉编码核心全解InternViT 6B 视觉塔深度剖析InternVL2.5 26B MPO AWQ 的视觉编码核心全解 本文带你深入 InternVL2_5 26B MPUMT-L视觉编码器详解VideoChat-Flash-Qwen2-7B_res224的视觉塔核心组件剖析UMT L视觉编码器详解VideoChat Flash Qwen2 7B_res224的视觉塔核心组件剖析 VideoChat Flash Qwen2 7B_创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

大模型落地避坑指南:Token、RAG与本地部署的工程实践

大模型落地避坑指南:Token、RAG与本地部署的工程实践

简介:一份面向AI技术爱好者、科研人员、开发者与学生的人工智能大模型中文PDF电子书,以大白话拆解大模型原理与行业应用,适合零基础入门和系统梳理。书中从科研模拟、医疗辅助诊断、娱乐内容生成、制造流程优化等场景切入,逐步讲清…

2026/10/17 17:31:25 阅读更多 →
2026盘点 10 款AI写小说软件:从大纲范例到全篇创作,TaoToken 统一 Key 让多模型切换不再报 401

2026盘点 10 款AI写小说软件:从大纲范例到全篇创作,TaoToken 统一 Key 让多模型切换不再报 401

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:30:24 阅读更多 →
TRAE 2.0 SOLO 实测:从 PRD 到 Vercel 上线,AI 编程全流程自动跑通

TRAE 2.0 SOLO 实测:从 PRD 到 Vercel 上线,AI 编程全流程自动跑通

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 20:03:02 阅读更多 →

最新新闻

Web自动化测试元素定位全攻略:从方案选型到复杂DOM稳定处理

Web自动化测试元素定位全攻略:从方案选型到复杂DOM稳定处理

做Web自动化测试,写过上百条用例之后你会发现一个扎心的事实:框架选型、环境搭建、用例组织,这些前期工作反而不是最大的坎,真正每天跟你较劲的,是元素定位。脚本跑挂了,十次里有八次是元素没找到、定位到了…

2026/10/18 21:36:06 阅读更多 →
麻雀搜索算法优化Transformer-GRU的Matlab负荷预测解析

麻雀搜索算法优化Transformer-GRU的Matlab负荷预测解析

简介:面向计算机、电子信息、数学等专业大学生,提供一套基于MATLAB平台的麻雀搜索优化算法(SSA)结合Transformer与GRU的负荷数据回归预测完整代码方案,覆盖课程设计、期末大作业、毕业设计乃至入门科研的典型需求。压缩…

2026/10/18 21:36:06 阅读更多 →
Octop:MIT开源的Python环境确定性管理工具

Octop:MIT开源的Python环境确定性管理工具

1. 项目概述:Octop 是什么,它解决哪类实际问题 Octop 这个名字乍一听容易让人联想到章鱼(octopus),但实际它是一个真实存在的、由 MIT 开发并开源的 Python 工具——全称是 Octop ,不是“Octopus”的缩写…

2026/10/18 21:36:06 阅读更多 →
Sub-Agents角色分工与Skills能力封装:多智能体架构实战

Sub-Agents角色分工与Skills能力封装:多智能体架构实战

1. 从单体智能体到角色化协作:这套架构到底在解决什么问题做过智能体项目的人大概都有过这种体验:一开始图省事,把所有能力塞进一个提示词里,让它既能查资料、又能写代码、还能做审核。结果跑起来之后,模型经常"精…

2026/10/18 21:36:06 阅读更多 →
无限画布:AI绘图从单次生成到空间语义协同的范式跃迁

无限画布:AI绘图从单次生成到空间语义协同的范式跃迁

1. “无限画布”不是营销话术,而是AI绘图工作流的结构性突破“Joker AIx智绘工坊:无限画布,重构AI创意生产新范式”——这个标题里最常被误读的,是“无限画布”四个字。很多人第一反应是:“不就是能拉大尺寸的PS画布吗…

2026/10/18 21:36:06 阅读更多 →
MATLAB蚁群算法实现QoS多约束路由优化

MATLAB蚁群算法实现QoS多约束路由优化

简介:本资源是一份面向网络优化与智能算法研究者的MATLAB实践案例,聚焦蚁群算法(ACO)在QoS路由问题中的建模与求解。针对传统路由算法难以兼顾延迟、带宽、丢包率等多维服务质量约束的痛点,该方案提供可运行的ACO-QoS路…

2026/10/18 21:35:05 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →