第7篇:GPT 系列大模型架构演进与提示工程入门

一、Encoder vs Decoder 架构选择

BERT 和 GPT 都源自 Transformer,但取了不同的"半边":

维度 Encoder-only(BERT) Decoder-only(GPT)
结构 双向自注意力 因果(掩码)自注意力
擅长 理解、分类、抽取 生成、续写、对话
看上下文 同时看左右 只看左侧(不能偷看未来)
典型任务 NER、情感分类 问答、写作、代码

为什么生成式偏好 Decoder? 因为生成是自回归的:第 t 个词只能依赖已生成的 1...t-1 个词,因果掩码恰好强制了这一约束。而 Encoder 的双向注意力会"泄露未来",不适合逐词生成。

一句话:要"读懂"用 BERT,要"写出"用 GPT。


二、GPT 家族技术演进时间线

  • GPT-1(2018):1.17 亿参数,验证"生成式预训练 + 微调"可行。

  • GPT-2(2019) :15 亿参数,展现**零样本(zero-shot)**能力------不微调,仅靠提示就能做任务,惊艳业界。

  • GPT-3(2020) :1750 亿参数,提出少样本(few-shot) 提示:在上下文里给几个例子,模型就能照着做,引出规模定律(Scaling Law)。

  • InstructGPT / GPT-3.5(2022) :引入 RLHF(基于人类反馈的强化学习),让模型输出更符合人类意图,ChatGPT 由此引爆大众认知。

  • GPT-4(2023):多模态、更强推理与长上下文,确立"大模型即平台"的生态位。

核心启示 :能力提升 ≈ 数据 × 参数 × 算力,但对齐(alignment) 决定了模型"好用不好用"。


三、规模定律与 RLHF 对齐

3.1 Scaling Law(规模定律)

Kaplan 等人发现:模型的测试损失随参数量、数据量、算力呈幂律下降。这意味着"大力出奇迹"不是玄学,而是可预测的缩放规律------当然也带来巨大的训练成本。

3.2 RLHF(人类反馈强化学习)

预训练让模型"懂语言",但未必"懂人话"。RLHF 三步:

  1. SFT:用人工标注的高质量问答微调(监督);

  2. 奖励模型(RM):让人对多个回答排序,训练一个打分模型;

  3. PPO 强化学习:用 RM 当奖励,优化策略模型,使输出更符合人类偏好。

正是 RLHF 让 GPT 从"续写机器"变成"能对话的助手"。


四、提示工程四类范式

不微调、不改权重,只靠"怎么问",就能显著改变模型表现。四类高频范式:

1. 零样本(Zero-shot)

直接下达指令,不给例子:

复制代码
请把下面这句话翻译成英文:
"今天天气真好,我们去公园散步吧。"

2. 少样本(Few-shot)

给几个示范,模型照猫画虎:

复制代码
情感分类,输出 POS/NEG。
"这部电影太棒了" -> POS
"剧情拖沓无聊" -> NEG
"演员演技在线" -> POS
"__待分类文本__" ->

3. 角色设定(Role-playing)

给模型一个身份,稳定输出风格:

复制代码
你是一名资深 Python 后端工程师,回答要简洁、给出可运行代码。
用户:如何用 Redis 实现分布式锁?

4. 思维链(Chain-of-Thought, CoT)

让模型"一步步思考",把推理过程写出来再给答案,复杂任务提升显著(见下一节)。


五、思维链实战示例

问题:一个农夫有 17 只羊,除了 9 只以外都死了,还剩几只?

  • 直接问(易错):模型可能答"8 只"(误以为 17−9)。

  • CoT 提示:

复制代码
请一步步思考再回答:
复制代码
一个农夫有 17 只羊,除了 9 只以外都死了,还剩几只?
思考: "除了 9 只以外都死了" 意思是那 9 只没死,存活的就是这 9 只。
答案:9 只。

模板:

复制代码
问题:{question}
请先分步推理,最后用"答案:"给出结论。

CoT 在算术、常识推理、多步逻辑上效果最明显;配合少样本示例(Few-shot CoT)更稳。但 CoT 会增加 token 消耗与延迟,简单任务不必强行套用。


六、开源模型调用与边界

不想调 OpenAI API?本地/国产开源模型一样能用。以 Transformers 加载为例:

python 复制代码
from transformers import AutoTokenizer, AutoModelForCausalLM
​
model_id = "THUDM/chatglm3-6b"   # 或 Qwen/Qwen2-7B 等
tok = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_id, torch_dtype="auto", device_map="auto", trust_remote_code=True)
​
prompt = "你是一名翻译,把这句译成中文:The quick brown fox jumps over the lazy dog."
inputs = tok.apply_chat_template([{"role":"user","content":prompt}],
                                 add_generation_prompt=True, return_tensors="pt").to("cuda")
out = model.generate(inputs, max_new_tokens=128, do_sample=False)
print(tok.decode(out[0][inputs.shape[1]:], skip_special_tokens=True))

提示工程的边界

  • 不能替代领域微调:医疗、法律等高风险领域,提示再花哨也不如无监督微调/检索增强(RAG)可靠;

  • 受上下文长度限制:超长文档需切片或外接向量库;

  • 结果不稳定:同一提示多次采样可能不同,关键场景要加约束与校验。


参考资料

  1. Radford, A., et al. (2018). Improving Language Understanding by Generative Pre-Training (GPT-1). OpenAI.

  2. Brown, T., et al. (2020). Language Models are Few-Shot Learners (GPT-3). NeurIPS.

  3. Ouyang, L., et al. (2022). Training Language Models to Follow Instructions (InstructGPT/RLHF). NeurIPS.

  4. Wei, J., et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in LLMs. ICLR.

往期回顾

提示工程是低成本撬动大模型的杠杆。下一篇《中文分词与序列标注技术对比》我们回到中文 NLP 的基础工程。


深学之路:从感知机到智能体》 ------ 从感知机到大模型智能体的完整深度学习连载(基础、工程化、扩散模型 / RAG / Agent 等)。每篇附可运行代码与原创实验,收藏专栏不迷路。

相关推荐
blackappleD12 小时前
百度 Unlimited OCR 2 拆解:SR-SWA 如何让百页文档的 KV 缓存不再涨
人工智能·llm
吴凡wudianmei13 小时前
从0搭一个AI Agent(一):为什么你需要的不是“调一次API”
llm·openai·agent
lucas_AI13 小时前
0.8B 干翻 235B:阿里 OvisOCR3 把文档解析、KIE、跨页表格全塞进一个能本地跑的小模型
llm
奇牙coding13 小时前
GPT-5.5 报 401 invalid_api_key 怎么办?换密钥前按 4 层排查请求头、项目权限和端点
数据库·gpt·ios·ai
千木SilvaMux13 小时前
10款国产模型写离职证明实测:为什么两极分化
llm·api
桦说编程14 小时前
别再追“最强模型”了,先想清楚你要什么
人工智能·llm·agent
万联WANFLOW15 小时前
Kimi K3.1 Pro 接口接入指南:模型选型、费用计算与零数据保留
java·spring boot·python·安全·spring·大模型
小七-七牛开发者17 小时前
从 GLM 到 GPT,HarnessPro 如何用 RSI 降低 Agent 成本
ai·大模型·agent·ai coding·harnesspro
还卿一钵无情泪19 小时前
PEFT-Transformers、Unsloth、LLaMA-Factory 微调框架 横向对比
深度学习·大模型·llama·ollama