<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>推理优化 on John Chen's blog</title><link>https://andy1314chen.github.io/tags/%E6%8E%A8%E7%90%86%E4%BC%98%E5%8C%96/</link><description>Recent content in 推理优化 on John Chen's blog</description><generator>Hugo</generator><language>zh-cn</language><copyright>转载请注明出处</copyright><lastBuildDate>Mon, 13 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://andy1314chen.github.io/tags/%E6%8E%A8%E7%90%86%E4%BC%98%E5%8C%96/index.xml" rel="self" type="application/rss+xml"/><item><title>VLM (Vision Language Model) 介绍</title><link>https://andy1314chen.github.io/posts/2026/04/vlm-vision-language-model-%E4%BB%8B%E7%BB%8D/</link><pubDate>Mon, 13 Apr 2026 00:00:00 +0000</pubDate><guid>https://andy1314chen.github.io/posts/2026/04/vlm-vision-language-model-%E4%BB%8B%E7%BB%8D/</guid><description>&lt;h2 id="一架构概览"&gt;一、架构概览&lt;/h2&gt;
&lt;p&gt;VLM 由三个核心组件串联而成：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;视觉编码器 Vision Encoder&lt;/strong&gt;：将原始图像/视频转换为视觉特征向量&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;模态投影层 Projector&lt;/strong&gt;：将视觉特征空间映射到语言模型的语义空间，解决&amp;quot;视觉-语言鸿沟&amp;quot;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;语言模型 LLM Backbone&lt;/strong&gt;：理解对齐后的视觉-文本联合表示，生成文本输出&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;以 InternVL2-2B 为例：&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;模型&lt;/th&gt;
 &lt;th&gt;视觉编码器&lt;/th&gt;
 &lt;th&gt;语言模型&lt;/th&gt;
 &lt;th&gt;总参数量&lt;/th&gt;
 &lt;th&gt;推理显存&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;InternVL2-2B&lt;/td&gt;
 &lt;td&gt;InternViT-300M&lt;/td&gt;
 &lt;td&gt;Qwen2-1.5B&lt;/td&gt;
 &lt;td&gt;~2B&lt;/td&gt;
 &lt;td&gt;~4.2 GB&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;输入图像 (支持动态分辨率)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 动态高分辨率处理 (Dynamic Tiling) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 图像分割: 将大图切分为 N 个 448x448 tile |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 网格排列: 支持 1x1 到 6x6 (最多 40 个 tile) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | N x (448x448 像素)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 视觉编码器 (Vision Encoder) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| InternViT-300M-448px |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 参数量: 304M |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 层数: 24 层 Transformer |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 隐藏维度: 1024 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · Patch Size: 14x14 -&amp;gt; 32x32 = 1024 tokens |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 位置编码: 2D 绝对位置编码 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | 1024 tokens/tile (每个 1024 维)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | Pixel Unshuffle (空间压缩 4:1)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; v 256 tokens/tile (减少计算量 75%)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 模态投影层 (MLP Projector) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 类型: 2 层全连接网络 + GELU 激活 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 作用: 视觉空间 (1024d) -&amp;gt; 语言空间 (1536d) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 可学习参数，随机初始化 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; | 256xN visual tokens (每个 1536 维)
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 语言模型 (LLM Backbone) |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| Qwen2-1.5B-Instruct |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 参数量: 1.5B |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 架构: Decoder-only Transformer，28 层 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 注意力: 12 头 GQA |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 隐藏维度: 1536 / 上下文: 32K / 词表: 151936 |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| · 位置编码: RoPE |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| 输入序列: [ V0..V(256xN) | T0..Tn ] |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;| visual tokens text tokens |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;+---------------------------------------------------+
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; |
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; v
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;输出文本 (自回归生成: 描述 / 问答 / OCR / Grounding)
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="二token-与-patch"&gt;二、Token 与 Patch&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;Patch 是将图像分割为小块的基本单元，是模型处理视觉信息的最小粒度。&lt;/p&gt;</description></item></channel></rss>