首页
学习
活动
专区
圈层
工具
发布
50 篇文章
1
Vibe Coding这一年:从“代码苦力”到“超级个体”,我如何把3天的工作压缩进2小时?
2
小程序项目架构设计与基础页面搭建(基础)
3
微信小程序送补贴!手把手教你薅免费云开发资源+混元Token(附使用教程)
4
如何创建一个有效的阅读清单?
5
踩坑记:Elasticsearch 索引写不进去了?可能是触碰了这个隐藏限制
6
RoLID-11K:面向小目标检测的行车记录仪路边垃圾数据集
7
mysql报错通用排查方法 排查MY-001312 can't return a result set in the given context
8
安装并使用谷歌AI编程工具Antigravity(亲测有效)
9
解密Prompt系列68. 告别逐词蹦字 - Transformer 的新推理范式
10
技术人的人生战略:在代码与成长中寻找平衡
11
JavaScript 文件分析与漏洞挖掘指南
12
多 Agent 视角下的自动驾驶系统设计:车端 Agent 与 RSU Agent 协同机制解析
13
构建AI智能体:潜藏秩序的发现:隐因子视角下的SVD推荐知识提取与机理阐释
14
告别浏览器!用Rust打造一键JSON处理神器
15
仅需1元,基于 LangChain 和腾讯混元大模型,实现知识图谱
16
轻量高效!用Docker运行Gogs,搭建属于你的私有GitHub
17
构建AI智能体:SVD知识整理与降维:从数据混沌到语义秩序的智能转换
18
2025年CodeBuddy是如何拯救职场危机中的我?
19
轻量化知识库方案:Docker部署Dokuwiki 的最佳实践
20
踩坑实录:别被 extended_bounds 骗了!ES 直方图聚合的边界陷阱
21
步履不停,共鸣常在:我的 2025 技术旅程与回响
22
构建AI智能体:从SVD的理论到LoRA的实践:大模型低秩微调的内在逻辑
23
[MYSQL] 恢复被drop/truncate的表
24
Sugo Protector 代码保护效果分析报告
25
前端平台大仓应用稳定性治理之路|得物技术
26
C++的5种高级初始化技术:从reserve到piecewise_construct等
27
HierLight-YOLO:面向无人机航拍的层次化轻量目标检测网络
28
金融服务领域的智能体革命:AI智能体解决方案、产业分析与技术实施的战略分析
29
大模型提示词-新手篇
30
2025,一个普通开发者的社区成长地图
31
“氛围编程”正让创意本身成为最终技能
32
AD域攻防权威指南:九.利用备份组获取域Hash
33
【跟着AI学】H5射击游戏开发实录:射击游戏
34
这一年,熬过许过夜,也有些许收获 | 2025年终总结
35
2025,一个技术徘徊者的AI工具真实答卷
36
告别手撸架构图!AI+Ooder实现漂亮架构+动态交互+全栈可视化实战指南
37
GitHub 霸榜:让你的 Claude 拥有“设计总监”级的品味,只要一行命令
38
构建AI智能体:AI古典文学:基于LoRA微调本地大模型打造唐诗生成器
39
拥抱人机共生,锻造不可替代的“金头脑”
40
[MYSQL] 5.7能否从ibdata1中提取出表DDL
41
Spring Boot 实战:手把手教你实现腾讯云 COS 对象存储文件上传
42
解密Prompt系列67. 智能体的经济学:从架构选型到工具预算
43
Google OCS光路解耦揭秘:寒武纪大爆发,从供应链双轨到CPO百万卡全光计算织物
44
未来已来 | 写给 .NET 开发者的 2025 年度总结
45
MYSQL实战:深入理解内存临时表优化
46
Ooder框架规范执行计划:企业级AI实施流程与大模型协作指南
47
openGauss 核心体系架构深度解析
48
架构视角:Jackson3新特性
49
LLM架构机制管窥:作为黑板的上下文窗口
50
LiveKit Agents 深度技术架构剖析
清单首页123文章详情

LLM架构机制管窥:作为黑板的上下文窗口

本文是【LLM架构管窥 ◆ 系列小文】的第2篇。 【LLM架构管窥 ◆ 系列小文】旨在快速盘点LLM架构特点、特别是局限性,为后续【基于SDD的AI编程最佳实践】提供必要的认知准备。 --- ## 一、黑板架构模式 黑板模型是人工智能领域典型的结构模式,由黑板、知识源和控制组件构成,最初由美国Carnegie-Mellon大学于1973-1976年在HEARSAY-II语音识别系统中提出。 黑板架构模式是一种模仿多个专家系统协作解决问题的软件架构。其核心包含三个关键要素: 1. **黑板**:作为系统的核心数据结构,是一个共享的全局内存。它存储问题的当前状态、中间结果和最终解决方案,所有知识源都可以读取和写入黑板上的数据,但通常通过控制组件进行协调。 2. **知识源**:代表解决问题的不同策略和算法,每个知识源都是独立的模块,负责处理黑板上的一部分信息,并将结果写回黑板。知识源之间不直接通信,而是通过黑板进行间接协作。 3. **控制组件**:负责管理知识源的执行顺序,根据黑板的状态动态选择最合适的模块在当前状态下执行。控制策略可以是优先级驱动、数据依赖驱动等,以适应不同的求解路径。 ![黑板 1.jpg](https://developer.qcloudimg.com/http-save/yehe-11563618/fa51fa4e63d12cc9479828ffd51ddebf.jpg) --- ## 二、上下文窗口 as 黑板 大型语言模型(LLM)在自然语言处理领域取得了巨大成功,其强大的文本生成、理解和推理能力令人瞩目。然而,LLM内部复杂的运算机制,尤其是上下文的处理方式,一直是探索改进的热点方向。 黑板架构模式作为一种经典的软件架构思想,在解决复杂、非结构化问题时展现出强大的协作与信息整合能力。将LLM的上下文与黑板架构模式相结合进行理解,有助于我们探索 LLM内部上下文管理 的改进方向。 借个图,来源:https://blog.csdn.net/qq_40762280/article/details/154998469?spm=1001.2014.3001.5502 <div align="center"><img src="https://developer.qcloudimg.com/http-save/yehe-11563618/13dddca0bdd8e834bdd436e2434f04b6.png" width="50%"></div> LLM的上下文整合了输入数据的各种特征和模型生成的信息。例如,每个注意力头(attention head)关注输入数据的不同方面,类似于不同的知识源采用不同的策略处理黑板上的信息。 不同的隐藏层可能负责提取不同层次的语义特征,类似于不同的知识源专注于解决问题的不同子任务。它们在处理上下文信息时,具有各自的特定功能和运算规则。 LLM的上下文是一组动态变化的数据,它贯穿于模型处理输入数据的整个过程。在模型生成文本、回答问题等任务中,上下文不断更新,为模型提供当前任务所需的信息。从某种意义上说,LLM的上下文就如同一个不断演变的“信息容器”或“黑板”,承载着模型处理问题的关键线索。 在Transformer架构中,上下文信息通过自注意力机制在各个隐藏层之间传递,类似于知识源从黑板上读取信息并进行处理后再写回黑板。 ## 三、上下文窗口黑板模式的优点 #### 3.1 问题求解的渐进性 系统通过知识源不断地对黑板数据进行更新和完善,逐步逼近问题的解。LLM就是这种渐进式的求解方式。 #### 3.2 知识的独立性和封装性 每个知识源都是独立的模块,封装了自己的知识和处理逻辑。它们只需要关注自己所负责的任务和黑板上与自己相关的数据,降低了系统的复杂性和耦合度。 #### 3.3 灵活性和可扩展性 便于引入更多“知识源”(MoE LLM中引入采用新算法的Expert),以增强模型处理复杂任务的能力。 <div align="center"><img src="https://developer.qcloudimg.com/http-save/yehe-11563618/d282637cfb7b3df3b02199a47899f7f9.jpg" width="60%"></div> --- ## 四、“上下文”在LLM各层眼中的样子(逻辑含义) * 高层(深层FFN附近):上下文 = 语义逻辑与意图。 * Token已经高度抽象化,不再是具体的词,而是“概念”。 * 例子:模型不再关注具体的字,而是理解了用户在“询问理财建议”,并调动相关的知识库。 * 中层(Attention层):上下文 = 句法结构与指代。 * 模型开始解决代词指代(“它”指“银行”)、修饰关系(“红色的”修饰“苹果”)。 * 例子:如果上文有“取钱”,模型知道这个“银行”是金融机构。 * 底层(Embedding层附近):上下文 = 邻居。 * 模型只看到字面相邻的Token。 * 例子:看到“银行”,不知道是河岸还是取钱的地方。 <div align="center"><img src="https://developer.qcloudimg.com/http-save/yehe-11563618/b56fe4e8f5e91d19e1b65df51c63c155.jpg" width="50%"></div> --- ## 五、LLM 各层处理“上下文”的技术原理 1. **物理载体统一**:从Embedding层到高层FFN,数据的存储和运算形态都是向量/矩阵,区别仅在于向量**语义编码的丰富度**。 2. **语义分层递进**:底层向量只编码字面和相邻信息,中层融入句法与指代关联,高层则升维到逻辑与意图,是一个**从“字面”到“抽象”**的过程。 3. **向量的增量信息补充**:LLM的前向传播过程,本质就是**向量不断吸收新信息、更新语义表征**的过程——后续层的运算会基于前一层向量,叠加新的关联特征,最终让向量的语义更完整、更精准。 #### 向量增量补充信息的例子:**“红色的苹果很好吃”** 中的`苹果`向量 | 层级 | 向量的信息增量 | 最终语义 | |------|----------------|----------| | 底层 | 字面特征(苹果=水果名词)+ 邻居(红色的、很) | 一个被“红色的”修饰的名词 | | 中层 | 补充修饰关系(红色的→苹果) | 红色的、作为食物的苹果 | | 高层 | 补充逻辑(好吃→苹果的属性) | 具有“红色、可食用、美味”属性的水果 | #### 向量增量补充信息的例子:**“我去银行取钱,它的利率很高”**中的`银行`向量 我们以**“我去银行取钱,它的利率很高”**这句话中的`银行`向量为例,拆解其在各层的信息增量过程: #### 1. **Embedding层(底层):初始向量仅含字面+邻居信息** - 输入Token序列:`我` `去` `银行` `取` `钱` `,` `它` `的` `利` `率` `很` `高` - `银行`的初始向量:仅编码了 **“银行”这个词的字面特征** + **相邻Token(去、取)的字面关联**。 - 此时向量的语义:**无法区分“金融银行”还是“河岸”**,仅知道它是一个名词,前后是动作“去”和“取”。 - 信息增量状态:**无额外关联信息,语义最单薄**。 #### 2. **Attention层(中层):向量补充“指代+句法”信息** - Attention机制会计算Token间的关联权重: - 发现`它`和`银行`的注意力权重极高 → 确定`它`指代`银行`; - 发现`取钱`与`银行`的关联度高于其他词 → 强化“银行”和“取钱”的动作绑定。 - `银行`的向量更新:在底层向量基础上,**增量融入“指代关系(它→银行)”和“动作关联(取钱→银行)”**。 - 此时向量的语义:**明确“银行”是“可以取钱的金融机构”**,彻底排除“河岸”的歧义。 - 信息增量状态:**补充了句法和指代信息,语义消除歧义**。 #### 3. **深层FFN层(高层):向量补充“逻辑+意图”信息** - FFN(前馈网络)会基于Attention输出的向量,结合模型预训练的知识库,进一步抽象: - 从“取钱”“利率”这些特征,关联到“金融服务”“储蓄业务”等概念; - 结合整句话的逻辑,推断出用户的意图是 **“提及一家利率高的金融银行”**。 - `银行`的向量更新:在中层向量基础上,**增量融入“金融业务属性”和“用户意图关联”**。 - 此时向量的语义:**不再是单纯的“金融机构”,而是“与用户取钱需求相关、利率有吸引力的金融机构”**。 - 信息增量状态:**补充了逻辑和意图信息,语义升维到概念层面**。 ![LLM 理解上下文的分层.jpg](https://developer.qcloudimg.com/http-save/yehe-11563618/9d0e0cc3db01eb7dcb49665500c65bc2.jpg)

下一篇
举报
领券