主题
高频面试题
Prompt 设计有哪些基本原则?
面试官问 Prompt,真正想听的不是技巧合集,而是你如何把“会写提示词”升级成“能维护 AI 功能”。
面试官角度分析,想考什么
一个好的 Prompt 应该包含什么?
考你能否把 Prompt 说成任务契约,而不是“多写点要求、让模型认真一点”。System、User、Few-shot、RAG 上下文怎么分工?
考机制差异:哪些内容是可信规则,哪些是用户输入,哪些是示例,哪些只是可参考证据。Prompt 工程边界在哪里?
考落地取舍:Prompt 不能替代权限、校验、评估和代码逻辑;上线后要版本化、灰度、回归和监控。
可直接抄走的 30 秒参考答案
text
Prompt 设计的核心原则是清晰、具体、可验证。一个好的 Prompt 要说明任务目标、输入上下文、约束边界、输出格式和失败策略;需要稳定风格或复杂格式时再加 few-shot。工程上我不会把 Prompt 当一次性话术,而是把它当模型接口来管理:模板化、变量校验、版本记录、离线评估、线上 badcase 归因和灰度回滚都要配上。面试回答详解,知其所以然
这道题的核心不是背“角色、任务、格式”几个关键词,而是理解 Prompt 是模型和业务之间的接口。接口设计得越清楚,模型越容易稳定执行;接口边界不清楚,后面再调参数也很难救。
1. 好 Prompt 先把任务契约说清楚
text
任务目标:要模型完成什么,不要只描述背景
输入上下文:哪些信息可用,哪些只是用户原文
约束边界:不能做什么,遇到不足怎么处理
输出格式:给人读,还是给程序解析
质量标准:什么样的回答算好,什么算失败
失败策略:缺资料、冲突、越权时如何返回例如知识库问答不能只写“请回答用户问题”。更稳的写法会明确:只能基于给定资料回答;资料不足时说明缺少什么;关键结论要带引用;不要编造不存在的政策或链接。
Prompt 越具体,不是因为模型“听话”,而是减少了模型需要猜的空间。把“回答得专业一点”改成“按背景、原因、方案、风险四段回答”,就是把审美要求变成可执行结构。
2. 不同上下文要分层放,不要混成一坨文本
- System Prompt:长期稳定的行为规则、安全边界、输出规范。
- Developer / 内部 Prompt:产品策略、工具说明、业务流程和不可暴露的中间规则。
- User Prompt:当前用户需求,属于不可信输入,需要保留原始边界。
- Few-shot 示例:给模型看输入输出范式,适合复杂格式、分类边界、语气模仿和历史 badcase。
- RAG 上下文:给模型参考的外部证据,不应该和系统规则混在一起。
- 工具结果:外部系统返回的事实,应标清来源、时间、状态和失败类型。
不要把用户输入直接拼进系统规则里,否则容易被 prompt injection 干扰。也不要把 RAG 文档当系统指令,因为文档里可能包含恶意或无关内容。
Few-shot 也不是越多越好。示例会占 token,可能让模型过拟合示例格式,甚至把示例里的偶然细节学进去。生产里要用评估集验证“加示例”是否真的提升稳定性。
3. Prompt 要工程化,不能只靠感觉调
成熟项目会把 Prompt 当配置和代码管理:
- 模板化:变量有类型、默认值、长度限制和转义规则。
- 版本化:记录 prompt 版本、模型版本、参数和上线时间。
- 评估集回归:用正常样本、边界样本、历史 badcase 一起测试。
- 灰度发布:小流量观察格式错误率、拒答率、人工修正率和用户反馈。
- 线上归因:结合 trace 判断问题来自 prompt、模型、检索、工具还是输入质量。
这里最容易答错的是把 Prompt 当万能修复手段。权限控制、结构化校验、敏感信息脱敏、工具执行审批、数据库约束,都不能只靠 Prompt 保证。Prompt 负责表达意图和边界,强约束仍然要落到代码和系统设计里。
一句话总结:Prompt 是软约束,工程系统要提供硬边界。
面试官追问3个问题
追问一:Prompt 越长越安全吗?
- 考察点:上下文噪声和位置偏置。
- 回答方向:不一定。长 Prompt 会增加成本和延迟,也可能让关键规则被噪声淹没。更好的做法是分层组织:稳定规则放 system,动态证据放上下文,输出要求尽量结构化;再用评估集验证关键规则是否真的被遵守。
追问二:Few-shot 示例怎么选?
- 考察点:样本意识。
- 回答方向:优先选覆盖边界的代表样本,不只选正常样本。示例要短、格式一致、标签清楚,最好覆盖容易混淆的类别和历史 badcase。上线后要评估示例是否提升格式稳定性或准确率,避免示例过多带来 token 成本和上下文污染。
追问三:Prompt 改动如何上线?
- 考察点:工程化流程。
- 回答方向:先给 Prompt 版本号,记录变更原因和影响范围;用离线评估集回归正常样本、边界样本和 badcase;再小流量灰度,监控格式错误率、拒答率、人工修正率、成本和延迟。出现质量回退时能快速回滚到旧 prompt 和旧模型组合。
扩展知识
Prompt 的输入边界
text
可信指令:系统规则、业务规则、工具契约
不可信内容:用户输入、网页、文档、检索结果把这两类内容混在一起,是 prompt injection 的常见入口。
Prompt 原则的官方口径
OpenAI Prompt Engineering强调写清指令、拆分复杂任务、给模型时间推理,并用外部工具和系统性测试补足模型能力;Anthropic Prompt Engineering也强调清晰上下文、示例、结构化输出和迭代评估。面试回答可以吸收这些原则,但不要讲成“提示词魔法”,要落到版本、评估、灰度和安全边界。