终于在听说了这个很久之后第一次打开,显然既没有boyfriend也不懂LLM。这两年大模型太火了,几乎成为了所有引领科技概念的代名词。不过领域发展得太快了,很多两年前GPT刚出世时的概念现在已经变成了过去式,再加上个人其实能力有限又其实对云本身更感兴趣一些(虽然也不懂),一直来都是半解的状态。接下来要上班的话,好像逃不了学习这方面相关的知识,也不会深入到具体实现,不过我还是看看原理然后记个概念吧。

也没什么具体的内容,就是经常听到的几个概念的英文和通俗化解读。


Pre-train: 语料 → 去噪,tokenizer → LLM(Base)

Fine-tune: LLM(Base) → SFT(Supervised Fine-tuning专家),RLHF(Reinforcement Learning from Human Feedback用户) → Fine-tuned Model

Tokenization的方式

subword-based BPE byte-pair encoding 字符 次数 合并

BBPE 字节

WordPiece 概率而非次数

Unigram 先全初始化再删减

SentencePiece 多语言


自注意力机制和KV-Cache(因为单向注意力可以把直接把前面算过的KV存起来)
$$
\text{Attention}(Q, K, V) = \text{softmax} \left( \frac{QK^\top}{\sqrt{d_k}} \right) V
$$

  • $ QK^\top \in \mathbb{R}^{n \times n} $:每对单词间的相关性(相似度)
  • $ \sqrt{d_k} $:用于缩放,避免数值过大
  • softmax:将相似度转换为概率分布(注意力权重)

MHA Multi-head Attention slow

MQA Multi-query Attention fast

GQA Group-query Attention 折中方案


位置编码的方式:

绝对 Transformer

可学习 Bert

旋转 RoPE 关注相对编码信息

Alibi 偏置项 Transformer


BatchNorm → LayerNorm → RMSNorm 预归一化
$$
\text{SwiGLU}(x) = \text{Linear}(x) \cdot Sigmoid(\text{Linear}(x))
$$
有主值和激活函数,线性单元加门控机制能够很好地表达非线性关系

P.S. 表示激活函数时Sigmoid和 $\sigma$ 完全等价,不过标准差或者求和时就不等价了

decoding在采样时可以用Beam Search替代Greedy Search(beam_num=1的退化版),保留多个采样点增强性能,因为直接局部贪心不一定全局结果最佳


LLAMA3

decoder-only架构

Tokenizer: TikToken

GQA

RMSNorm

RoPE

KV-Cache

Ghost Attention 增强指令的长期记忆

RLHF:PPO近端 DPO直接

SwiGLU


PEFT parameter effective fine-tuning

用最小化微调参数的数量和计算复杂度的方式减小模型微调的时间和金钱开销

LoRA Low-Rank Adaptation of Large Language Models

新增低秩矩阵到原权重矩阵

QLoRA 量化+LoRA

Adapter Tuning 新增小的神经网络

Prefix Tuning 输入增加可训练的上下文前缀,同一个模型可以针对前缀完成不同方向的任务

Prompt Tuning 输入增加可训练的嵌入向量提示

P-Tuning 输入增加可训练的LSTM生成的嵌入向量提示

P-Tuning V2 多个N中输入增加可训练的LSTM生成的嵌入向量提示


RAG retrieval-augmented generation

知识库 → 粗排SBERT → 精排LTR(LGBMBanker) → Prompt

Pipeline:Query Construction → Query Translation → Routing → Retrieval → Indexing → Generation

自然语言到可查询 → 复杂问题易检索 → 检索方式 → 排序过滤增强相关性 → 文档处理以便高效检索 →答案再优化

前几步:

Multi Query Retriever 多个不同视角查询

RAG-Fusion 互惠排民融合

Decomposition 拆成多个子问题

Step Back 思维链

HyDE 假设文档

LangChain LLM应用的Python框架

  • Logical Routing

Question → Function Calling(OpenAI)/Structured Output(LangChain) → Database

  • Semantic Routing

Question → Embedding → Prompt 1/2/3 → Best Similar Prompt → LLM

Query Construction

Text to:

​ - metadata filter

​ - SQL

​ - SQL + semantic

​ - Cypher

KG知识图谱

Indexing

Chunking 文本切分

Multi-representation Indexing 文本&文档

RAPTOR 递归式文档+聚类

ColBERT

解决了DPR的不熟悉的术语名词和不相干的冗余信息问题


Summary

听过的概念有 预训练、微调、自注意力机制、KV-Cache、Transformer、BERT、LoRA、RAG、LangChain