
KV Cache(一):从KV Cache看懂Attention(MHA、MQA、GQA、MLA)的优化之路
1 TL;DR 本文的目标在于理清楚一个核心问题:为什么主流大模型纷纷从传统的多头注意力转向了MQA、GQA、MLA等变体? 关键在于解码阶段的 KV Cache 及其引发的 “内存墙” 问题。内容如下: 1. Prefill 与 Decoding 两阶段的本质区别。 2. KV Cache 如何以...

从vibe到spec:可维护性视角下探讨为什么很多人的AI编程依然是小玩具
1 前言 本来没打算写这种经验性或者思考的内容。不过最近~~团队出故障比较多~~问的人比较多,想想以后还是开上一个分系列,说说一些经验和探索。 2 Vibe 到 Spec 2.1 vibe coding Vibe Coding比较火的时候,可以在社交媒体上看到那些:一个人对着屏幕说了句“给我做一个类...

通过下游任务理解BERT和GPT的区别:不只是完形填空和词语接龙
1 写在前面 好久没更新,非常对不住打赏的佬们。本来想写一个大一点的内容,不过还是低估了内容的丰富和复杂度,一直在修修改改。先开个小坑过度一下吧。 2 TL;DL 很多人接触AI,都是直接从GPT开始的。对于一些传统的模型任务和理解不够深入,所以这次要从从最初要解决的任务出发,经过下游任务设计、预训...

为什么Embedding加上位置编码后不会破坏语义?
1 引言 终于可以说说位置编码了。Tranformer这个结构都说attention很重要,其实另一个非常精彩的设计就是位置编码。现在大多的模型都采用RoPE(Rotary Position Embedding),但这并不意味着最早的正余弦位置编码(有时候也被称为绝对位置编码)就没得可讲了。 所以这...

流形视角下的Embedding:从理论到RAG实践
1 TL,DR; 把embedding放在基础原理靠后的地方,其实是我写这个系列一开始就想好的。毕竟有了其他模块的一些前置知识以后,可能才会对这些抽象、晦涩的东西感兴趣。 在这部分,我会说一下embedding的的概念,通过流形(Manifold)去从理论角度理解embedding layer,再通...

Add & Norm(二):从传统CV到Transformer里的Normalizaiton详解
1 写在前面 这一篇会稍微有点偏,我们要说明白Transformer中的LayerNorm和RMSNorm,需要把不同领域的Normalizaiton都过一遍。所以整个文章会从传统的CV领域的CNN开始说明,涉及不同数据样式、作用域和任务目标,最终说明Transformer中的LayerNorm和R...

Add & Norm:对残差连接深入解析(一)
写在前面 在我最早学习LLMs时候,残差连接这个词看着就很高大上,让我望而生畏,极大的延缓了我系统的学习的进度。但是,因为这样那样的原因,最终我还是恶补了各种知识。学完之后觉得也就那样了,所以,我希望初学者看到tranformer里藏着这样一个部分的时候,可以不用过多担心,直接开始看。 Add & ...

前馈神经网络(FFN)详解(二):从激活函数到MOE
1 前言 时隔两周未更新,未曾预料此文篇幅如此之长,其间反复推敲修改多次。主要是不想让读者死背结论,而是希望能切实地从最初的设计理念出发,沿着优化过程中涌现的关键问题,来审视近年来激活函数以及大模型中FFN结构的演变。 因为激活函数处在一种微妙的境地:表面看,如 ReLU 般形态简单、计算高效,其设...

前馈神经网络(FFN)详解(一)
1 前言 FFN,也就是前馈神经网络(Feed-Forward Network)是一个相对简单的结构,原版的论文(attention is all you need)里这块描述的比较简洁,直接进入了更深入的部分,虽然叫”attention is all you need" 但是FFN同样重要。对于F...

注意力机制之多头注意力(Multi-Head Attention)
写在前面 如果对注意力机制本身不太理解的,建议先看。然后再来看这篇。 注意力机制 首先简单回顾一下transformer的流程。我们有一句话我是秦始皇。这个内容会首先进行token分词,然后映射为token id,接着我们会对token_id进行词嵌入,得到然后加入位置编码,得到X。整个步骤如下: ...

Qwen3-8b的变化和能力初探
Qwen3介绍 前言 2025年4月29日,通义千问团队正式发布了最新一代大语言模型Qwen3。Qwen官网给出个报告也可以管窥阿里团队在前后训练上下的功夫,Qwen3除了模型本身能力的提升外,包括思考模式的创新、更强大的多语言支持以及增强的Agent能力。 更新概要 概要速览 模型规格 Qwen3...

工程实现系列:从什么都不会到QLoRA分布式DPO(一)
1 引言 领导看了几篇营销号推文,突然要求在有限的算力上部署和微调大模型。当你开始研究,却发现眼前摆着一堆框架和工具,你好不容易理清楚了发现无从下手: - 训练框架:accelerate、deepspeed、llamafactory、megatron、unsloth... - 部署方案:vllm、o...

LLM最长上下文的一些运用和理解
概念 最长上下文是指模型能够同时考虑的最大token序列长度,包括输入文本和生成文本的总和。 在哪能找到最长上下文 huggingface模型config.json中的max_position_embbedings。从名称上看最长的位置编码嵌入,并不是最长上下文。但是位置编码决定了模型的注意力机制的...

从什么都不会到QLoRA分布式DPO(二)
1 引言 之前已经知道最小化训练了。最小化确实是最小,一是没有日志去支撑分析,二是在单卡运行一个很小的模型在结果验证上也差强人意。 所以本文就如何验证模型训练效果以及量化配置两个方面,在原有代码基础上进一步展开。 2 什么是wandb wandb https://wandb.ai/ 是一个在线平台,...

从tools use谈谈Deepseek的“联网搜索”怎么实现 2025-02-01
1 引言 之前谈过agent的组成,base model、编排层和tools。为了更好的构建agent,如何调用tool,将是必不可少的知识点。 最近翻阅各大模型的tools use的文档的时候,发现这块的文档的例子都比较简单。这次通过调用本地的drissionpage来实现一个deepseek一样...

Transformer 2025-01-29
1 引言 现有的大模型,大部分都是decode-only结构。attention is all you need太过精炼,很多信息都被一笔带过了。所以学习过程中难免能产生一些疑问。比如什么是decode-only,大模型都是基于注意力机制的,什么是注意力机制,其中的QKV又怎么理解? 本文旨在通过解...

浅谈CoT 2025-01-26
引言 大语言模型的兴起让Prompt Engineering成为热门话题。起初,我认为这不过是对提示词的简单调整,算不上真正的技术创新。虽然理解好的提示词能提升输出质量,但对Chain-of-Thought(CoT)的认识也仅限于'步骤式思考'的表层理解。 然而,从O1到DeepSeek-R1-Ze...

更优雅的使用大模型:DeepSeek API+Cherry Studio+激活CoT的Prompt
1 引言 大模型越来越多,以前喜欢直接网页开一个窗口,但是现在因为在DeepSeek、Kimi、Claude等多个平台间来回切换,而每次都需要手动输入Prompt来激活CoT(Chain-of-Thought)功能,严重影响了工作效率。这次记录一下API+客户端+长prompt的方式,提升大模型脑子...

大模型训练策略选择
引言 通常的全参数的大模型训练流程是: ` base模型 -> SFT --> RM --> PPO base模型 --> SFT --> DPO ` 但作为消费级用户,我们大部分情况下不会使用全参数微调。一方面是没那个设备和金钱,另一方面就是要构造的数据太多太大。因为现有大模型本身已经非常优秀了,...

agent概述 2025-01-10
概述 最早学习大模型的时候,被大模型五花八门的概念弄得云里雾里。国内在翻译的时候也存在理解偏差。比如agents被翻译为代理。这篇主要为了简要的区分models、agents、workflows,并初步介绍agents在当前(2025-01-10),具体是什么,有哪些功能,有哪些工具或者框架。 Ag...
