说说prompt engineering

Prompt Engineering 提示词工程

Prompt Engineering 是设计和优化输入提示(Prompt) ,让大语言模型(LLM)输出更准确、更有用结果的技术。简单说:怎么跟 AI 说话,它才能听得懂、答得好


一、为什么需要 Prompt Engineering?

LLM 本质上是一个"概率预测器",你给它什么输入,它预测最可能的输出。同样的模型,不同的提示词,结果天差地别:

提问方式 结果
"帮我写个冒泡排序" 可能只给代码,也可能给代码+解释,也可能给错
"请用 Java 实现冒泡排序,并添加详细注释,说明时间复杂度和空间复杂度" 稳定输出高质量答案

核心价值

  • 提升回答准确性
  • 控制输出格式(JSON、Markdown 等)
  • 减少幻觉(Hallucination)
  • 实现复杂推理(Chain of Thought)
  • 控制"人设"和语气

二、Prompt 的构成要素

一个完整的 Prompt 通常包含以下要素(可根据需要组合):

复制代码
┌─────────────────────────────────────────┐
│ 1. 角色 (Role)                           │
│    "你是一位资深 Java 架构师..."          │
├─────────────────────────────────────────┤
│ 2. 任务 (Task)                           │
│    "请设计一个高并发秒杀系统的方案"        │
├─────────────────────────────────────────┤
│ 3. 上下文 (Context)                      │
│    "系统预估 QPS 1万,库存 100件..."      │
├─────────────────────────────────────────┤
│ 4. 示例 (Examples)                       │
│    "例如:..."                           │
├─────────────────────────────────────────┤
│ 5. 输出格式 (Output Format)             │
│    "请以 JSON 格式返回"                   │
├─────────────────────────────────────────┤
│ 6. 约束 (Constraints)                    │
│    "回答不超过 500 字"                    │
└─────────────────────────────────────────┘

三、核心技术与技巧

1. Zero-shot / Few-shot

技术 说明 示例
Zero-shot 不给示例,直接提问 "将这句话翻译成英文:你好"
Few-shot 给几个示例,让模型学会模式 给 2-3 个翻译示例,再要求翻译新句子

Few-shot 示例

复制代码
将以下中文翻译成英文:
中文:苹果 → 英文:apple
中文:汽车 → 英文:car
中文:电脑 → 英文:computer
中文:人工智能 → 英文:

2. Chain of Thought (CoT) 思维链

让模型一步一步思考,显著提升复杂推理问题的准确率。

方式 提问 效果
直接问 "小明有 5 个苹果,给了小红 2 个,又买了 3 个,现在有几个?" 可能答对,但复杂题容易错
CoT "请一步步思考:1. 初始有 5 个;2. 给了小红 2 个,剩下 3 个;3. 买了 3 个,现在有 6 个。所以答案是 6 个" 推理清晰,准确率高

高级变体

  • Self-Consistency:让模型多次推理,取多数答案
  • Tree of Thoughts (ToT):探索多条推理路径,分支回溯
  • Graph of Thoughts (GoT):更复杂的推理图结构

3. 角色扮演

给模型设定"人设",影响输出风格和专业度。

复制代码
你是一位资深后端架构师,有 10 年高并发系统经验。
请从架构角度评价以下设计方案,指出潜在风险...

4. 结构化输出

强制模型以特定格式返回,便于程序解析:

复制代码
请以 JSON 格式返回以下信息:
{
  "summary": "摘要内容",
  "keywords": ["关键词1", "关键词2"],
  "sentiment": "positive/negative/neutral"
}

5. 思维链的进阶

复制代码
问题:一个水池,进水管 3 小时注满,出水管 5 小时排空。
如果同时打开,几小时能注满?

请一步步推理:
1. 进水管每小时注水 1/3 池
2. 出水管每小时排水 1/5 池
3. 净进水速度 = 1/3 - 1/5 = 2/15 池/小时
4. 注满需要 1 ÷ (2/15) = 7.5 小时

四、不同场景的 Prompt 模板

代码生成

复制代码
你是一位资深 Java 开发工程师。
请用 Java 实现一个 LRU 缓存,要求:
1. 使用泛型支持任意类型
2. 线程安全
3. 添加详细注释
4. 包含单元测试示例

文本总结

复制代码
请总结以下文章的核心观点,要求:
- 不超过 200 字
- 分 3 个要点列出
- 保持客观,不添加评论

文章内容:...

数据分析

复制代码
你是一位数据分析师。
根据以下销售数据,请分析:
1. 季度趋势
2. 异常波动点
3. 给出 3 条业务建议

数据:...

角色设定

复制代码
从现在开始,你是一位专业的面试官,正在面试 Java 后端开发岗位。
请依次提问技术问题,并根据我的回答给出评价。
第一题:

五、常见问题与优化

问题 表现 优化方法
回答太啰嗦 给出大量无关信息 加约束:"回答控制在 200 字以内"
答案太简略 只说结论,没过程 加指令:"请给出推理过程"
格式混乱 无结构,难以解析 指定输出格式:"以 Markdown 表格返回"
幻觉 编造不存在的事实 加约束:"如果不确定,请说'不确定'" + 提供上下文
偏离主题 跑题,答非所问 加角色限定 + 明确任务边界
语言不一致 中英混杂 指定语言:"请用中文回答"

六、Prompt 调试方法

  1. 迭代优化:不要期望一次完美,反复调整
  2. 对比实验:同一问题用不同 Prompt 对比效果
  3. 拆解复杂任务:把大问题拆成小步骤,分步提问
  4. 增加示例:Few-shot 往往比 Zero-shot 更稳定
  5. 温度参数调整
    • 低温度(0-0.3):输出确定性高,适合代码、事实问答
    • 高温度(0.7-1):输出更有创造性,适合写作、头脑风暴

七、从 Prompt 到 Agent

Prompt Engineering 的进阶是让 AI 能自主使用工具

复制代码
你可以使用以下工具:
1. search(query): 搜索最新信息
2. calculator(expression): 计算数学表达式
3. code_execute(code): 执行代码

用户问题:今天北京和上海的气温差是多少?
请调用工具回答。

这样 AI 会:search("北京天气")search("上海天气")calculator(气温差) → 输出答案。


八、总结

核心要点 说明
本质 与 AI 高效沟通的技术
目标 提升回答准确性、控制输出格式、减少幻觉
基础技巧 Few-shot、Chain of Thought、角色扮演、结构化输出
进阶方向 Agent、工具调用、多轮对话、自我一致性
调试方法 迭代优化、对比实验、拆解任务、调整温度
价值 决定 LLM 应用的上限,是 AI 应用开发的核心能力

一句话:Prompt Engineering 就是"用 AI 听得懂的方式,问出它能答好的问题"。

提示词网址:

https://github.com/anthropics/prompt-eng-interactive-tutorial

相关推荐
光电的一只菜鸡13 小时前
小白从零开始学agent(二)——如何高效编写 Prompt 与 Skill
hadoop·microsoft·prompt
器灵科技18 小时前
Seedance2.5 VS MiniMax H3 同日上线:AI短剧创作者该怎么选?
java·人工智能·阿里云·prompt·aigc
小叮当爱咖啡19 小时前
Day3.参数+Prompt三板斧
开发语言·python·prompt
legendary_bruce1 天前
六、工具调用
java·spring·prompt
码云骑士1 天前
94-实战Prompt优化师Agent-迭代优化-效果评分-自动生成Few-Shot
python·prompt
90后小陈老师1 天前
AI Agent 四文件约束法:从零搭一套能用的 system prompt(附完整提示词)
人工智能·prompt
码云骑士1 天前
93-Prompt注入攻击与防御-直接注入-间接注入-越狱-输入净化
python·prompt
qq_454245031 天前
提示词分级:规则与生成结合的层次化提示工程
prompt
小马9262 天前
Meta MuseCode:从 Prompt 到持久化 Agent,编码智能体迈入“断点续传“时代
ai·meta·prompt·codingagent·musecode