LLM 学习入门完整指南
# LLM 基础概念
适合人群:AI初学者、想学习大语言模型的开发者
# 什么是 LLM
大语言模型(Large Language Model)是基于深度学习的自然语言处理模型。
核心特征:
- 大规模参数(数十亿到数千亿)
- 海量文本预训练
- 通用能力 + 涌现能力
主流模型系列:
| 系列 | 代表 | 特点 | 应用 |
|---|---|---|---|
| GPT | GPT-3.5/4 | 自回归生成 | 对话、创作、代码 |
| BERT | BERT/RoBERTa | 双向理解 | 文本分类、问答 |
| T5 | T5/UL2 | 统一架构 | 文本到文本 |
| PaLM | PaLM/PaLM-2 | 大规模多语言 | 通用对话、推理 |
# Token
模型处理文本的最小单位,不等于字或词。
- 英文:1 单词 ≈ 1~1.5 Token(
unbelievable= 3 Tokens) - 中文:1 汉字 ≈ 1~2 Token
为什么按 Token 计费:计算成本与 Token 数直接相关。
上下文窗口:每个模型有 Token 上限(如 128K),输入+输出不能超过。
分词算法细节见 10.nlp基础/01.分词与token.md
# Temperature
控制输出随机性/创造性,范围 0~2。
| 值 | 效果 | 适用场景 |
|---|---|---|
| 0~0.3 | 确定、保守 | 代码、数据提取、事实问答 |
| 0.5~0.8 | 平衡 | 一般对话、写作 |
| 1.0~2.0 | 多样、可能跑偏 | 头脑风暴、创意写作 |
# Embedding(嵌入)
将文本转换为高维向量,使计算机能理解语义相似性。
"猫" -> [0.21, -0.53, 0.87, ...]
"小猫咪" -> [0.19, -0.51, 0.85, ...] # 向量接近 = 语义相似
"汽车" -> [-0.72, 0.33, -0.11, ...] # 差异大 = 语义不同
1
2
3
2
3
应用:语义搜索、RAG 检索、推荐系统、文本分类。
向量原理详见 10.nlp基础/02.向量.md
# 幻觉(Hallucination)
模型生成看似合理但实际错误/虚构的内容。
常见表现:编造论文/URL、虚构事实、错误代码。
缓解方法:
- RAG 引入外部知识
- 降低 temperature
- 要求附带来源引用
- Prompt 明确「不确定就说不知道」
# 大模型训练三阶段
预训练(Pre-training) → 有监督微调(SFT) → 人类反馈强化学习(RLHF)
1
| 阶段 | 数据 | 目标 |
|---|---|---|
| 预训练 | 海量互联网文本(TB级) | 学语言和世界知识 |
| SFT | 人工标注指令-回答对 | 学会按指令格式回答 |
| RLHF | 人类偏好排序 | 输出更符合人类期望 |
预训练消耗最大(数千GPU数周),SFT/RLHF 让模型从"会说话"变"好用"。
# Prompt Engineering 常用技巧
- 角色设定:「你是资深 Python 开发者」
- Few-shot:给几个输入输出示例
- CoT(思维链):「请一步步思考」
- 格式约束:「请以 JSON 返回」
- 分隔符:用
"""区分指令和内容
# 编程环境
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("gpt2")
model = AutoModelForCausalLM.from_pretrained("gpt2")
text = "人工智能的未来是"
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=50)
print(tokenizer.decode(outputs[0]))
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
上次更新: 2026/09/10, 20:52:09