提示工程(Prompt Engineering)实战指南
提示:下面的流程图使用 Mermaid 绘制,您可以在支持的 Markdown 渲染器中直接查看。
graph TD
User[用户需求] --> Prompt[构造 Prompt]
Prompt --> Model[LLM 推理]
Model --> Response[模型输出]
Response --> Refine[结果评估与改进]
Refine --> Prompt
基本技巧
- 明确指令:使用清晰的动词,如
请解释、请生成。 - 提供上下文:在 Prompt 中加入必要的背景信息。
- 示例示范(Few‑Shot):给出几组输入‑输出示例,引导模型学习格式。
- 链式思考(Chain‑of‑Thought):让模型一步步推理,提升逻辑准确性。
示例代码(Python)
_36from transformers import pipeline_36_36# 使用小模型演示(速度快)_36generator = pipeline("text-generation", model="gpt2")_36_36# 1. 零样本 Prompt(Zero‑Shot)_36prompt_zero = "用中文解释什么是注意力机制(Attention)"_36print(generator(prompt_zero, max_new_tokens=80)[0]["generated_text"])\n_36# 2. Few‑Shot 示例_36few_shot_prompt = """_36示例 1:_36Q: 什么是机器学习?_36A: 机器学习是一种让计算机通过数据自动改进性能的技术。_36_36示例 2:_36Q: 什么是注意力机制?_36A: 注意力机制是一种让模型在处理序列时聚焦重要信息的技术。_36_36现在请解释什么是梯度下降(Gradient Descent)。_36"""_36print(generator(few_shot_prompt, max_new_tokens=120)[0]["generated_text"])\n_36# 3. Chain‑of‑Thought(一步步思考)_36cot_prompt = """_36请一步步解释如何使用梯度下降训练线性回归模型:_361. 定义损失函数_362. 计算梯度_363. 更新参数_36"""_36print(generator(cot_prompt, max_new_tokens=150)[0]["generated_text"])\n```_36_36> **运行提示**:确保已安装 `transformers` 与 `torch`(`pip install transformers torch`)。_36_36## 小结_36_36- 通过明确指令、提供上下文、Few‑Shot 示例和 Chain‑of‑Thought,可以显著提升 LLM 的输出质量。_36- 练习不同的 Prompt 结构,观察模型响应的变化,逐步形成自己的 Prompt 工程技巧库。