ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

小白程序员轻松入门大模型:从文本到多模态的全面解析

2026/9/1 19:55:49 拓冰建站 浏览量
小白程序员轻松入门大模型:从文本到多模态的全面解析 本文深入浅出地介绍了多模态大模型的工作原理从输入端理解图片、音频、视频等到输出端生成图片、音频、视频等详细阐述了如何将不同模态的数据转化为向量序列并输入到LLM核心进行处理。文章以ViT、扩散模型DiT和声码器等为例解释了模型如何“看懂”和“生成”多模态数据并讨论了当前多模态大模型面临的挑战如上下文窗口压力、推理成本和模态对齐等问题。对于想要了解多模态大模型的小白或程序员来说本文提供了一个清晰易懂的学习框架。一、先说结论多模态大模型并不是另一套架构而是在文本大模型的两端各接了几根管道输入侧图片/音频/视频 → 各模态编码器 → 向量序列 → 拼入 LLM 输出侧LLM 生成文本扩散模型 DiT 生成图片/视频声码器生成音频 LLM 核心本身——Attention FFN 的堆叠——完全不变。前文讲的所有东西Attention 公式、残差连接、LayerNorm、KV Cache、预测下一个 token在多模态模型里照用不误。二、核心思路把一切都变成向量前文第三篇讲过文本进入 LLM 核心堆叠 Attention FFN之前要走两步文字 → Token → 向量 → 进入多层 Attention FFN 堆叠LLM 核心只操作向量。它不关心这些向量是从文字来的还是从图片来的。只要是向量它就能处理。多模态的核心思路就这么简单给每种模态各配一个编码器把图片、音频都翻译成向量然后交给同一个 LLM 核心处理。文本大模型 文字 → Tokenizer → Embedding → [向量₁, 向量₂, 向量₃] → 多层 Attention FFN 多模态大模型 文字 → Tokenizer → Embedding → [向量₁, 向量₂, 向量₃] ─┐ ├→ 拼在一起 → 多层 Attention FFN 图片 → 图像编码器 → 投影层 → [向量ₐ, 向量ᵦ, 向量ᵧ, ...] ─┘对 LLM 核心来说它看到的就是一个向量序列——前几个来自图片后面几个来自文字。它用同样的 Attention 机制处理所有向量根本不区分来源。三、图片是怎么变成向量的文本变向量前文讲透了文字 → BPE 分词 → Token ID → 查 Embedding 表。图片的路径不同但目标一样——变成一组向量。3.1 把图片切成碎片ViT最常用的方法叫 ViTVision Transformer思路非常直接一张 224×224 的图片 │ ▼ 切成 14×14 196 个小方块每个 16×16 像素 │ ▼ 每个小方块通过线性层变成一个向量比如 768 维 │ ▼ 加上位置编码告诉模型这个方块在左上角还是右下角 │ ▼ 得到 196 个向量这 196 个向量就是图片的token。每个向量代表图片的一个局部区域——就像文本的一个 token 代表一个词或子词。为什么要切成 patch而不是把整张图压成一个向量 如果把整张 224×224 图直接压成一个向量会丢失空间细节。切成 196 个 patch 后每个 patch 保留局部信息后续 Attention 让这些 patch 互相交流模型就能同时看到整体和局部。和文本 token 的对比文本图片原始输入字符串像素矩阵分词方式BPE 切成子词切成 16×16 方块patch每个token一个子词一个图片方块变成向量查 Embedding 表线性投影矩阵乘法向量维度768768对齐到同一维度典型数量几十到几千1961024 个3.2 投影层对齐到同一个空间图像编码器如 ViT输出的向量和文本 Embedding 的向量通常不在同一个空间里——维度不同语义含义也不同。需要一个投影层通常一两层线性网络把图像向量翻译到文本模型的向量空间图像编码器输出1024维 → 投影层1024 → 4096 → 和文本向量同维度4096维投影层的权重是训练时学出来的。训练目标是让投影后的图像向量和对应文本描述的向量尽量接近——一只猫的图像向量应该靠近cat的文本向量。3.3 以 LLaVA 为例LLaVALarge Language and Vision Assistant是最经典的多模态架构之一结构清晰看一张图就够了输入请描述这张图片 [一张猫的照片] ┌──────────────────────────────────────────────┐ │ 文本部分 │ │ 请描述这张图片 → Tokenizer → Embedding │ │ → [向量₁, 向量₂, 向量₃, 向量₄, 向量₅] │ └──────────────────────┬───────────────────────┘ │ 拼接 ▼ ┌──────────────────────┴───────────────────────┐ │ 图片部分 │ │ 猫的照片 → ViT 编码器 → 196 个图像向量 │ │ → 投影层 → [向量ₐ, 向量ᵦ, ..., 向量₁₉₆] │ └──────────────────────┬───────────────────────┘ ▼ [向量₁, ..., 向量₅, 向量ₐ, ..., 向量₁₉₆] │ ▼ 多层 Attention FFN和前文一模一样 │ ▼ 逐 token 生成回答 这张图片中有一只橘色的猫...LLM 核心和前文完全一样唯一的改动是在前面加了一条图像处理的管线模型的大脑没变只是眼睛是新装的。四、Attention 是怎么工作的看上面的 LLaVA 流程图有个细节还没展开文本向量和图像向量混在一起Attention 怎么知道哪些是文字、哪些是图片答案是它不需要知道序列顺序已经解决了这个问题。输入的向量序列是这样的输入序列[patch₁, patch₂, ..., patch₁₉₆, 请, 描述, 这张, 图片, ...] ↑ 图片部分 ↑ 文本部分因果掩码决定了每个位置能看到谁所以 patch 为什么要在文字前面因为生成是自左向右的——生成描述这个词时还不知道自己要说什么必须先看到整张图。把 patch 放在前面标准因果掩码自然让每个文本 token 可以回看所有 patch不需要任何特殊设计。五、音频和视频同一套思路图片讲完了但多模态的世界远不止图片。音频、视频都可以走同样的路子编码成向量序列 → 投影到文本空间 → 交给 LLM 核心处理。音频、视频、图片的编码思路其实是一回事图片: 像素矩阵 → 切 patch → 向量序列 音频: 频谱图 → 切 patch → 向量序列 视频: 帧序列 → 每帧切 patch → 向量序列 文本: 字符串 → BPE 分词 → 向量序列区别只在于切分方式和用什么编码器。5.1 音频让模型听懂声音一段语音进入模型之前需要先做一层预处理原始波形PCM→ 短时傅里叶变换STFT→ 梅尔频谱图Mel Spectrogram→ 编码器 → 向量序列为什么要转成频谱图 原始音频波形每秒包含上万个采样点16kHz 采样率 每秒 16000 个数字直接处理太贵而且不直观。转成梅尔频谱图之后相当于把声音翻译成了一张图横轴是时间纵轴是频率颜色深浅代表能量大小。这张图再交给类似 ViT 的编码器去处理——音频的图片化思路和把图片切成 patch 一模一样。[一段5秒的语音16kHz采样] │ ▼ STFT 梅尔滤波器 [频谱图: 约 500帧 × 80频带] │ ▼ 切成 16×16 的 patch时间×频率 [约 2000 个音频 patch] │ ▼ 线性投影 → 每个 patch 一个向量 [约 2000 个音频向量]每帧约 2040ms相邻帧重叠 50%所以 1 秒音频大约产生 50100 个向量。一段 30 秒的语音就能产生几千个音频向量直接塞进 LLM 核心。OpenAI 的 Whisper 是目前最常用的音频编码器之一——它的编码器部分基于 Transformer Encoder 架构输入梅尔频谱图输出向量序列再通过跨注意力机制接入 LLM。GPT-4o 的音频理解、Gemini 的语音理解大多是这个路子。5.2 视频时间维度的挑战视频比图片多了一个维度时间。图片的信息是静态的一张图切 196 个 patch 就够了。但视频是一连串图片帧的序列模型不仅要理解每一帧里有什么还要理解帧和帧之间发生了什么——物体的运动、场景的切换、动作的先后顺序。视频的处理思路是先从时间轴上采样帧再对每帧分别做图片的处理[一段30帧/秒的30秒视频 900帧] │ ▼ 均匀采样比如每隔15帧取1帧 [30帧] │ ▼ 每帧 resize 到 224×224通过 ViT 切 patch [每帧 196 个 patch × 30帧 5880 个 patch] │ ▼ 每个 patch 投影成一个向量 [5880 个视频向量]1 秒视频如果采样 2~3 帧一段 1 分钟的视频就可能产生几千到上万个视频向量。随之而来的有三个实际问题上下文窗口很快被填满Attention 计算量随 token 数量平方增长1 万个 token 的 Attention 矩阵就是 1 亿个元素推理成本比处理图片贵上几十到上百倍。这也是为什么目前的视频理解模型大多只处理短视频几十秒或者对视频先做描述压缩——用另一个模型先把视频转成一段文字描述再让 LLM 处理。视频还有一个图片没有的问题帧的顺序很重要。图片的 patch 可以加位置编码视频除了每帧内部的空间位置编码还需要全局时间位置编码让模型知道哪帧在前、哪帧在后。主流做法是给每个帧分配一个时间戳 embedding和帧内 patch 的空间位置编码加在一起patch_final_vector patch_vector 空间位置编码 时间戳编码这样Attention 机制就能同时学到帧内关系猫的各个部位在一帧内的空间关系和帧间关系猫从左跳到右的运动轨迹。六、输出端模型怎么生成图片和音频前面讲的都是输入——把图片、音频、视频变成向量让模型看懂。但多模态还有另一半输出。当模型能看图之后它是怎么把一只猫的意图变成一张真正的猫的图片的当你让 ChatGPT 画一幅日落它是怎么一步步生成像素的6.1 两种生成范式两个 Transformer多模态大模型的输出有两种完全不同的生成范式共用同一套骨架——Attention FFN 堆叠但各有各的玩法范式代表注意力掩码训练目标生成方式自回归 TransformerGPTLLM 文本生成因果掩码只能看过去预测下一个 Token逐个 token 前向生成扩散 TransformerDiT图像/视频生成无掩码双向可见预测噪声 ε从噪声迭代去噪T 步两种模型的大脑是一样的堆叠 Attention FFN差别只在于掩码方式不同、输出不同、训练目标不同。6.2 图片生成扩散 TransformerDiT自回归 LLM 生成图片直接输出像素很难主流方案是扩散 TransformerDiT——它也是一个 Transformer骨架和 LLM 完全一样Attention FFN 堆叠但有三处不同区别一注意力无掩码GPT 有因果掩码每个 token 只能看到之前的 token。DiT 没有掩码所有位置两两可见——就像一个双向的 Transformer。区别二输入是噪声 条件DiT 输入的不是 token 序列而是带噪潜变量z_t 时间步t 文本条件。LLM 输出的向量通过交叉注意力或 AdaLN 调制注入进去。区别三训练目标和生成方式训练目标MSE(ε, ε̂)— 预测噪声不是预测 token生成方式从纯噪声z_T开始迭代 T 步去噪每步预测并去掉一部分噪声最终得到干净图像用户输入画一只在草地上奔跑的狗 ▼ LLM 理解用户意图输出文本条件嵌入 ▼ DiT 主干Attention FFN 堆叠无因果掩码 输入噪声 z_T 文本条件 迭代 T 步预测噪声 → 去除部分噪声 → 降噪到 z_{T-1} → ... 最终输出干净潜变量 z_0 ▼ VAE 解码器 把潜变量映射回像素空间 → 512×512 图片具体代表GPT-4o 用 DALL·E 3DiTGemini 用 ImageFXDiT。LLaVA 这类理解型模型本身只理解图片生成靠调用外部 DiT如 Stable Diffusion。DiT 和 GPT 骨架相同都是 Attention FFN差别只在三点DiT 没有因果掩码、输入是噪声而非 token、目标是预测噪声而非下一个 token。6.3 音频生成声学 Token 的路子图片生成靠扩散模型音频生成靠另一套声学 Token。流程是用户输入用温柔的声音朗读这段文字 ▼ LLM 理解内容 情感意图 ▼ LLM 输出两类 token - 文本 token说话内容 - 声学 token音高、语速、停顿 ▼总结一下输入侧文字和图片各走各的管线最后拼在一起进同一个 LLM 核心输出侧LLM 自回归生成文字同时把文本条件注入给 DiT由 DiT 生成图片。两套机制骨架相同都是 Attention FFN 堆叠但输入、掩码和训练目标都不同。最后要纠正一个常见误解扩散模型不是 LLM 的解码器它是一个独立的 Transformer只是靠 LLM 提供文字条件来控制生成内容。七、多模态带来的新问题7.1 上下文窗口压力更大前文第八篇讲过上下文窗口的限制。多模态让这个问题更严重一段文本: 请描述这张图片 → 约 5 个 token 一张图片: 224×224, 16×16 patch → 196 个 token 一张高清图: 448×448, 16×16 patch → 784 个 token一张图片就吃掉了几百个 token 的窗口空间。如果对话中包含多张图片窗口会被快速占满。这也是为什么很多多模态模型会对图像做压缩——比如只保留最重要的几十个 patch 向量而不是全部 196 个。7.2 推理成本更高更多的 token 意味着更大的 KV Cache 和更多的 Attention 计算n²。处理一张图片的推理成本远高于处理一句话。7.3 对齐的难度让图像向量和文本向量在同一个空间里说同一种语言这件事比字面上听起来要难得多。投影层的训练如果不到位模型很可能看到了图片但还是看不懂——图片的向量和文字的向量虽然在数学上碰巧维度相同但在语义上各说各话。八、总结读完前文再看多模态你会发现核心其实没变多少。LLM 那部分完全照旧Attention 公式、残差连接、LayerNorm、KV Cache一个都没改。真正新加的只有两件事入口处给图片、音频、视频各配一个编码器 投影层把它们变成向量序列拼进 LLM 的输入里出口处图片和视频不走 LLM 的自回归管线而是交给扩散 DiT音频走声学 Token 加声码器。两套生成机制自回归 LLM 生成文字扩散 DiT 生成图片/视频骨架相同——都是 Attention FFN 的堆叠——只是输入、掩码和训练目标不同。说白了多模态就是给同一个大脑接了两组新的感官和手脚。│ │ ┌─────────▼──────────┐ ┌─────────────▼─────────────┐ │ 文本 Tokenizer │ │ 图片编码器 (ViT) │ │ → Embedding 层 │ │ → 切成 patch → 投影层 │ └─────────┬──────────┘ └─────────────┬─────────────┘ │ │ ▼ ▼ ┌──────────────────┐ ┌──────────────────────────┐ │ 文字向量序列 │ │ 图片向量序列 [patch₁..] │ └────────┬─────────┘ └────────────┬─────────────┘ │ │ └──────────────┬───────────────────────────┘ │ 拼接 → [patch₁..,文字向量序列] ▼ ┌──────────────────────────────────────┐ │ LLM 核心同一个 Transformer │ │ 堆叠 Attention FFN × N │ │ 输入: 向量序列图片 patch 文本 │ │ 输出: 文本 token自回归因果掩码 │ └──────────┬───────────────┬────────────┘ │ │ ┌──────────┘ └──────────────────┐ ▼ ▼ 自回归生成文本 LLM 输出的文本条件嵌入Text Embedding │ │ ▼ ▼ 直接输出文字 注入 DiT扩散 Transformer │ │ ▼ 潜变量 z_0 → VAE 解码 → 像素编辑后的图片如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线互联网企业工作十余年里指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限很多互联网行业朋友无法获得正确的资料得到学习提升故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】为什么要学习大模型我国在A大模型领域面临人才短缺,数量与质量均落后于发达国家。2023年人才缺口已超百万凸显培养不足。随着AI技术飞速发展预计到2025年,这一缺口将急剧扩大至400万,严重制约我国AI产业的创新步伐。加强人才培养,优化教育体系,国际合作并进是破解困局、推动AI发展的关键。大模型入门到实战全套学习大礼包1、大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通2、大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。3、AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。4、大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。5、大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。适用人群第一阶段10天初阶应用该阶段让大家对大模型 AI有一个最前沿的认识对大模型 AI 的理解超过 95% 的人可以在相关讨论时发表高级、不跟风、又接地气的见解别人只会和 AI 聊天而你能调教 AI并能用代码将大模型和业务衔接。大模型 AI 能干什么大模型是怎样获得「智能」的用好 AI 的核心心法大模型应用业务架构大模型应用技术架构代码示例向 GPT-3.5 灌入新知识提示工程的意义和核心思想Prompt 典型构成指令调优方法论思维链和思维树Prompt 攻击和防范…第二阶段30天高阶应用该阶段我们正式进入大模型 AI 进阶实战学习学会构造私有知识库扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架抓住最新的技术进展适合 Python 和 JavaScript 程序员。为什么要做 RAG搭建一个简单的 ChatPDF检索的基础概念什么是向量表示Embeddings向量数据库与向量检索基于向量检索的 RAG搭建 RAG 系统的扩展知识混合检索与 RAG-Fusion 简介向量模型本地部署…第三阶段30天模型训练恭喜你如果学到这里你基本可以找到一份大模型 AI相关的工作自己也能训练 GPT 了通过微调训练自己的垂直大模型能独立训练开源多模态大模型掌握更多技术方案。到此为止大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗为什么要做 RAG什么是模型什么是模型训练求解器 损失函数简介小实验2手写一个简单的神经网络并训练它什么是训练/预训练/微调/轻量化微调Transformer结构简介轻量化微调实验数据集的构建…第四阶段20天商业闭环对全球大模型从性能、吞吐量、成本等方面有一定的认知可以在云端和本地等多种环境下部署大模型找到适合自己的项目/创业方向做一名被 AI 武装的产品经理。硬件选型带你了解全球大模型使用国产大模型服务搭建 OpenAI 代理热身基于阿里云 PAI 部署 Stable Diffusion在本地计算机运行大模型大模型的私有化部署基于 vLLM 部署大模型案例如何优雅地在阿里云私有部署开源大模型部署一套开源 LLM 项目内容安全互联网信息服务算法备案…学习是一个过程只要学习就会有挑战。天道酬勤你越努力就会成为越优秀的自己。如果你能在15天内完成所有的任务那你堪称天才。然而如果你能完成 60-70% 的内容你就已经开始具备成为一名大模型 AI 的正确特征了。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】