2026-01-04 · AI
32
AI · 2026-01-04

大模型面试100问04:Prompt工程篇

TL;DR

Prompt工程是让LLM听懂人话的艺术——同样的问题,换个问法效果天差地别。"让我们一步步思考"这句话为什么能让GPT-4准确率从17%提升到79%?Tree of Thoughts如何让模型像下棋一样规划?本文从8个高频面试题入手,带你搞懂Prompt工程的核心技巧:什么是好的提示词、Few-shot和Zero-shot怎么选、CoT/ToT/ReAct的本质区别、如何防御Prompt注入攻击。读完这篇,你能设计出让模型性能翻倍的Prompt。


一、Prompt Engineering基础:什么是好的提示词?

核心原则

好的Prompt = 清晰 + 具体 + 上下文

四大要素

  1. 角色定义:告诉模型"你是谁"
    你是一位资深Python工程师,擅长代码优化和性能调优。

  2. 任务描述:明确"要做什么"
    请分析以下代码的性能瓶颈,并给出优化建议。

  3. 输出格式:规定"怎么输出"
    ```
    请按以下格式输出:

  4. 性能瓶颈分析
  5. 优化建议(带代码示例)
  6. 预期性能提升
    ```

  7. 约束条件:限制"不要做什么"
    不要使用第三方库,只用Python标准库。

实战对比

差的Prompt

帮我优化这段代码

好的Prompt

你是一位资深Python工程师。请分析以下代码的性能瓶颈,并给出优化建议。

要求:
1. 只使用Python标准库
2. 保持代码可读性
3. 给出优化前后的性能对比

输出格式:
- 瓶颈分析
- 优化代码
- 性能提升预估

参考资料:OpenAI Prompt Engineering Guide


二、Few-shot vs Zero-shot:什么时候用哪个?

核心区别

维度
Zero-shot
Few-shot

示例数量
0个
1-10个

适用场景
通用任务
特定格式/风格

性能
基线
通常更好

成本
低(token少)
高(token多)

Zero-shot示例

任务:判断以下评论的情感倾向(正面/负面)

评论:这部电影太棒了,演员演技炸裂!
输出:

Few-shot示例

任务:判断以下评论的情感倾向

示例1:
评论:这部电影太棒了,演员演技炸裂!
情感:正面

示例2:
评论:剧情拖沓,浪费时间。
情感:负面

示例3:
评论:还行吧,不功不过。
情感:中性

现在判断:
评论:特效做得很用心,但剧情有点老套。
输出:

选择建议

用Zero-shot
- 任务简单明确(如翻译、摘要)
- 模型能力强(GPT-4、Claude)
- 需要降低成本

用Few-shot
- 需要特定输出格式
- 任务有特殊规则
- 模型能力一般

参考资料:Language Models are Few-Shot Learners (GPT-3论文)


三、思维链(CoT):为什么"让我们一步步思考"有效?

核心原理

Chain-of-Thought:让模型显式输出推理步骤

经典案例

无CoT

问题:Roger有5个网球。他又买了2罐网球,每罐3个。他现在有多少个网球?
答案:11个

有CoT

问题:Roger有5个网球。他又买了2罐网球,每罐3个。他现在有多少个网球?

让我们一步步思考:
1. Roger原本有5个网球
2. 他买了2罐,每罐3个,所以买了 2×3=6个
3. 总共有 5+6=11个

答案:11个

性能提升

GSM8K数学题(GPT-3):
- 无CoT:17.7%
- 有CoT:79.0%

两种CoT方式

Zero-shot CoT

问题:[问题描述]
让我们一步步思考。

Few-shot CoT

示例1:[问题] → [推理步骤] → [答案]
示例2:[问题] → [推理步骤] → [答案]
现在解决:[新问题]

为什么有效?

  1. 强制分解:复杂问题拆成简单步骤
  2. 减少跳跃:避免直接猜答案
  3. 可验证:推理过程可检查

参考资料:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (arXiv:2201.11903)


四、Tree of Thoughts:比CoT更强的推理框架

核心思想

CoT的局限:线性推理,一条路走到黑

ToT的创新:树状搜索,探索多条路径

工作流程

1. 生成多个候选思路(如3-5个)
2. 评估每个思路的质量
3. 选择最优思路继续扩展
4. 重复直到找到答案

实战案例:24点游戏

问题:用4、9、10、13算出24

ToT过程

步骤1:生成候选
- 思路A:13-9=4, 4×10=40, 40-4=36 ❌
- 思路B:10-4=6, 13-9=4, 6×4=24 ✓
- 思路C:13-10=3, 9-4=5, 3×5=15 ❌

步骤2:评估
思路B最有希望,继续验证

步骤3:验证
(10-4)×(13-9) = 6×4 = 24 ✓

性能提升

24点游戏
- CoT:4%
- ToT:74%

适用场景

参考资料:Tree of Thoughts: Deliberate Problem Solving with Large Language Models (arXiv:2305.10601)


五、ReAct框架:推理+行动的循环

核心思想

ReAct = Reasoning + Acting

传统CoT:只有推理,没有行动
ReAct:推理 → 行动 → 观察 → 推理 → ...

工作流程

问题:2023年诺贝尔物理学奖得主是谁?

Thought 1: 我需要搜索2023年诺贝尔物理学奖的信息
Action 1: Search[2023 Nobel Prize Physics]
Observation 1: Pierre Agostini, Ferenc Krausz, Anne L'Huillier

Thought 2: 找到了三位得主,我需要确认他们的获奖原因
Action 2: Search[Pierre Agostini Nobel Prize reason]
Observation 2: 表彰他们在阿秒物理学领域的贡献

Thought 3: 现在我有完整信息了
Answer: 2023年诺贝尔物理学奖得主是Pierre Agostini、Ferenc Krausz和Anne L'Huillier,获奖原因是他们在阿秒物理学领域的贡献。

与CoT的区别

维度
CoT
ReAct

能力
纯推理
推理+工具调用

信息来源
模型内部知识
外部工具(搜索、计算器)

适用场景
数学、逻辑
需要实时信息的任务

性能提升

HotpotQA问答
- CoT:29%
- ReAct:37%

参考资料:ReAct: Synergizing Reasoning and Acting in Language Models (arXiv:2210.03629)


六、Self-Consistency:多次采样提升准确率

核心思想

问题:单次生成可能出错

解决:多次生成,投票选最优答案

工作流程

1. 用相同Prompt生成N个答案(如N=5)
2. 统计每个答案出现的次数
3. 选择出现最多的答案

实战案例

问题:一个数的3倍加7等于25,这个数是多少?

5次采样结果
- 采样1:6 ✓
- 采样2:6 ✓
- 采样3:8 ❌
- 采样4:6 ✓
- 采样5:6 ✓

投票结果:6(4票) > 8(1票)

性能提升

GSM8K数学题
- 单次采样:74.4%
- Self-Consistency(N=40):78.7%

成本权衡

优势:准确率提升
劣势:成本增加N倍

参考资料:Self-Consistency Improves Chain of Thought Reasoning (arXiv:2203.11171)


七、复读机问题的Prompt解决方案

基于2024-2025技术报告的推荐参数值

参数
范围
推荐值
说明

temperature
0-2
事实QA: 0.1-0.3
创意: 0.8-1.0
控制随机性

top_p
0-1
0.9-0.95
Nucleus采样阈值

repetition_penalty
0-∞
1.1-1.2
惩罚重复token

frequency_penalty
-2~2
0.3-0.5
惩罚高频token

场景配置方案

场景
temperature
top_p
repetition_penalty

代码生成
0.0-0.2
0.9
1.0

对话机器人
0.7
0.9
1.1

创意写作
0.8-1.0
0.95
1.1-1.2

注意事项

OpenAI建议:temperature和top_p不要同时调整(选一个调)

参考资料:OpenAI API文档、Hugging Face生成参数文档


八、Prompt注入攻击与防御

OWASP LLM Top 10 2025

Prompt Injection连续两年排名第一

攻击类型

类型
描述
典型案例

Direct Injection
用户直接嵌入恶意指令
"Ignore all previous instructions..."

Indirect Injection
恶意指令隐藏在外部内容中
网页隐藏文本、RAG投毒

Typoglycemia攻击
利用LLM读取拼写错误能力绕过过滤
2024新型攻击

Best-of-N越狱
系统性生成大量变体直到突破
2024新型攻击

OWASP推荐7层防御策略

  1. 约束模型行为:系统提示明确角色和限制
  2. 定义和验证输出格式:限制输出内容
  3. 实现输入输出过滤:检测恶意指令
  4. 执行权限控制:最小权限访问
  5. 高风险操作需人工审批
  6. 隔离和标识外部内容:区分用户输入和系统指令
  7. 进行对抗性测试:攻击模拟

2025防御前沿

CaMeL框架(Google Research)
- 通过能力机制和控制/数据流分离实现可证明安全
- 77%任务可证明安全

参考资料:OWASP LLM Top 10 2025、Google Research CaMeL论文


小结

本文从8个高频面试题入手,系统梳理了Prompt工程的核心技巧:

  1. Prompt基础:清晰+具体+上下文+约束
  2. Few-shot vs Zero-shot:示例数量权衡
  3. CoT思维链:"让我们一步步思考",准确率提升4倍
  4. ToT树状搜索:探索多条路径,24点游戏准确率74%
  5. ReAct框架:推理+行动循环,调用外部工具
  6. Self-Consistency:多次采样投票,准确率提升4%
  7. 参数调优:temperature/top_p/repetition_penalty配置
  8. 安全防御:7层防御策略对抗Prompt注入

下一篇预告:RAG与Agent篇——如何让LLM连接外部世界?

目录 最新
← 左侧翻上一屏 · 右侧翻下一屏 · 中间唤出菜单