Prompt 基础技巧
问题
如何写出高质量的 Prompt?常见的基础技巧有哪些?
答案
一、CRISPE 框架
一个系统性的 Prompt 构建框架:
| 要素 | 说明 | 示例 |
|---|---|---|
| Capacity | 角色/身份 | "你是一个资深前端工程师" |
| Request | 具体请求 | "帮我审查以下代码的性能问题" |
| Insight | 背景信息 | "这是一个高并发的电商首页" |
| Statement | 输出格式 | "以表格形式列出问题和建议" |
| Personality | 风格/语气 | "用简洁直接的风格" |
| Experiment | 试验指令 | "给出 3 种不同方案" |
二、核心技巧
1. 角色设定(Role Prompting)
你是一位有 10 年经验的后端架构师,精通分布式系统设计。
请从架构角度审查以下系统设计方案...
角色设定让模型"聚焦"到特定知识领域,输出更专业。
2. 清晰指令
❌ 差: 帮我改一下这段代码
✅ 好: 重构以下 Python 函数,要求:
1. 将时间复杂度从 O(n²) 优化到 O(n log n)
2. 添加类型注解
3. 保持函数签名不变
3. 分隔符(Delimiters)
用分隔符明确区分不同部分:
分析以下文章的主题和情感倾向。
---文章开始---
[文章内容]
---文章结束---
输出格式:
- 主题:
- 情感倾向:正面/负面/中性
- 关键句:
4. 输出格式指定
以 JSON 格式返回结果,包含以下字段:
{
"summary": "一句话摘要",
"key_points": ["要点1", "要点2"],
"sentiment": "positive | negative | neutral",
"confidence": 0.0-1.0
}
5. 正面指令 vs 负面指令
❌ 差: 不要使用复杂的词汇
✅ 好: 使用简单直白的语言,适合初中生理解
告诉模型"要做什么"比"不要做什么"更有效。
三、Prompt 优化技巧
| 技巧 | 说明 |
|---|---|
| 用具体数字 | "列出 5 个" 比 "列出一些" 好 |
| 提供示例 | 一个示例胜过千字描述 |
| 限制长度 | "用 100 字以内回答" |
| 指定受众 | "解释给一个不懂技术的产品经理" |
| 分步骤 | "首先...然后...最后..." |
常见面试问题
Q1: 好的 Prompt 有哪些特征?
答案:
- 明确具体:需求清晰,没有歧义
- 结构化:使用分隔符和格式标记
- 有上下文:提供必要背景信息
- 有示例:用示例代替冗长描述
- 可评估:输出格式便于验证