Prompt 写得好是不是就能解决大部分问题
1️⃣ 考察意图
面试官想测试你对 Prompt Engineering 边界的认知深度,而非单纯背诵技巧。这是典型的“工程取舍”考察:你是否理解 Prompt 是“杠杆”而非“引擎”,能否在系统设计中合理分配资源。刁钻点在于,很多人会陷入“Prompt 万能论”或“Prompt 无用论”两个极端。答好了能展示你对 LLM 能力边界、知识注入(RAG)、行为对齐(微调)和推理增强(Agent)的全局把控,体现资深工程师的系统设计思维。
2️⃣ 标准答
Prompt 写得好能解决 80% 的表面问题,但剩下 20% 的硬骨头——知识缺失、复杂推理、行为对齐——它啃不动。下面从三个层面拆解。
1. Prompt 能做什么:杠杆效应
- 上下文学习(ICL):通过 few-shot 示例,让模型在推理时模仿格式或逻辑。例如,用 3 个“输入-输出”对让 GPT-4 学会 JSON 输出,准确率从 60% 提到 90%+(【通用知识】)。
- 角色与约束:设定“你是一个资深律师”能激活模型的知识分布,减少幻觉。但这是“软约束”,模型可能因训练数据偏差而忽略。
- 链式思考(CoT):对数学或逻辑题,加“Let's think step by step”能提升推理准确率约 15-20%(Wei et al., 2022)。但 CoT 对需要外部知识的题(如“2024 年奥运会金牌榜”)无效,因为模型记忆截止于训练数据。
2. Prompt 的硬边界:三大死穴
- 知识缺失:模型不知道 2025 年 3 月的新政策。Prompt 无法注入新知识,只能靠 RAG 检索外部文档。实际坑:我曾用 Prompt 让模型回答“公司最新财报”,它编造了数据,因为训练集里没有。解法:加 RAG 管道,用 BM25(k1=1.5, b=0.75)召回相关段落,再让模型基于检索结果回答。
- 复杂推理:多步逻辑或数学证明,Prompt 的 CoT 会因中间步骤错误而崩溃。例如,问“A 比 B 大 3 岁,B 比 C 大 2 岁,A 和 C 差几岁?”模型可能算错。解法:用 Agent 架构,让模型调用 Python 解释器(如
tool_use)计算,而非纯文本推理。 - 行为对齐:Prompt 无法根除偏见或毒性。例如,让模型“不要歧视性别”,它仍可能输出刻板印象。解法:用 RLHF 或 DPO 微调,从模型权重层面修正。Prompt 只是“表面装饰”,微调才是“基因编辑”。
3. 工程取舍:何时不用 Prompt 硬扛
- 场景 A:高频、固定格式任务(如客服分类)→ 微调一个 7B 模型,成本比每次写长 Prompt 低 10 倍(推理延迟从 2s 降到 0.5s)。
- 场景 B:实时、动态知识任务(如新闻问答)→ RAG + 重排序(ColBERT v2),比 Prompt 硬编知识准确率高 30%+。
- 场景 C:多步推理任务(如代码生成)→ Agent + 工具调用(如 ReAct 框架),比 CoT Prompt 成功率提升 40%+。
总结:Prompt 是“方向盘”,但引擎(模型能力)、油箱(知识库)、导航(Agent 逻辑)缺一不可。面试官想听的是你如何根据任务特性,做技术选型。
3️⃣ 答题模板(30 秒电梯版)
“这个问题我从三个层面回答:第一,Prompt 是高效杠杆,能解决格式、角色、简单推理问题,但本质是‘软约束’;第二,它的硬边界在知识缺失、复杂推理和行为对齐,需要 RAG、Agent 和微调来补;第三,工程上要根据任务特性取舍——高频任务用微调,动态知识用 RAG,多步推理用 Agent。总结一句:Prompt 是基础,但系统设计要组合多种技术,不能迷信单一方案。”
4️⃣ 高频追问 & 应对
追问 1:你提到 RAG 能补知识缺失,那 RAG 的检索质量怎么保证?如果检索结果差,Prompt 能补救吗?
检索质量取决于 chunking 策略和检索算法。chunking 用语义分割(如 LangChain 的 RecursiveCharacterTextSplitter,chunk_size=512, overlap=128),避免截断关键信息。检索用混合搜索:BM25(词法) + DPR(语义),再用 Cohere Rerank 重排序 top-10。如果检索结果差,Prompt 可以加“如果找不到相关信息,请回答‘我不知道’”,但无法凭空补全。实际坑:一次项目中,检索返回了无关文档,模型仍基于它编造答案。解法:加一个“相关性阈值”(如重排序分数 < 0.5 则拒绝回答),并让模型输出“信息不足”。
追问 2:你说复杂推理要用 Agent,那 Agent 的规划失败怎么办?比如模型选了错误的工具。
Agent 失败通常源于规划错误或工具调用格式错误。解法:1)用 ReAct 框架,让模型“思考-行动-观察”循环,每一步输出到日志,便于调试;2)加工具描述约束,例如“Python 解释器只能用于数学计算,不能用于文本生成”;3)设置最大迭代次数(如 5 次),超时回退到简单 Prompt。工程取舍:Agent 灵活但延迟高(每次调用 2-3s),适合非实时任务;实时场景用固定流程(如 LangChain 的 SequentialChain)更稳。
追问 3:微调比 Prompt 好在哪?你什么时候会选微调而不是 Prompt?
微调改变模型权重,Prompt 只改变输入。微调适合:1)高频任务(如客服意图分类),推理成本低(7B 模型 vs GPT-4 的 API 成本差 10 倍);2)行为对齐(如去偏见),Prompt 无法根除。但微调有风险:灾难性遗忘(catastrophic forgetting),需要保留 10% 原始数据做 replay。实际坑:一次微调后,模型在通用问答上变差。解法:用 LoRA(rank=8)只微调 attention 层,保留基础能力。
5️⃣ 避坑 · 常见错误答法
- ❌ “Prompt 写得好就能解决 90% 的问题,剩下的靠调参。” → ✅ “Prompt 是杠杆,但知识缺失和复杂推理需要 RAG 和 Agent 补,不能一刀切。”
- ❌ “Prompt 没用,直接上 RAG 或微调就行。” → ✅ “Prompt 成本低、见效快,适合原型验证;但生产环境要按任务特性组合技术,比如高频用微调,动态知识用 RAG。”
- ❌ “CoT 能解决所有推理问题。” → ✅ “CoT 对简单逻辑有效,但多步推理或需要外部工具时,Agent 架构更可靠,比如用 Python 解释器算数学题。”
6️⃣ 简历呼应
- 如果你有 RAG 项目:从“检索质量对 Prompt 的依赖”切入,举例如何用 Prompt 控制检索结果格式,以及当检索失败时如何 fallback。
- 如果你只做过传统 NLP:用“规则系统 vs Prompt”类比,说明 Prompt 是“软规则”,但无法替代知识库或逻辑引擎,突出你对系统设计边界的理解。
- 如果你是校招无项目:聚焦论文复现,比如对比 CoT Prompt 和 Agent 在 GSM8K 数据集上的表现,展示你对技术选型的思考。
- “Chain-of-Thought Prompting Elicits Reasoning in Large Language Models” (Wei et al., 2022)
- “Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks” (Lewis et al., 2020)
- “ReAct: Synergizing Reasoning and Acting in Language Models” (Yao et al., 2022)
- “LoRA: Low-Rank Adaptation of Large Language Models” (Hu et al., 2021)
- “ColBERT: Efficient and Effective Passage Search via Contextualized Late Interaction over BERT” (Khattab & Zaharia, 2020)