一文吃透 Prompt定义、设计与调优全指南附流程图实战代码想让大模型输出高质量结果Prompt 才是真正的“隐藏技能”。本文从零讲起涵盖 Prompt 的核心要素、设计原则、调优方法并给出可直接复用的代码与模板。1. 什么是 PromptPrompt提示词是用户输入给大语言模型LLM的自然语言指令用于引导模型生成特定格式、风格和内容的回答。简单理解Prompt 就是你与大模型沟通的语言——你问得越清晰、越有结构模型回答就越精准。1.1 Prompt 的组成要素一个完整的 Prompt 通常包含以下几个部分可灵活组合要素说明示例指令明确要求模型做什么“翻译成英文”、“总结下面这段话”上下文提供背景信息或参考内容“用户昨天买了iPhone今天问退货政策…”输入数据需要模型处理的具体内容一段长文本、一个表格、一组数字输出格式指定回答的结构“用JSON格式输出”、“分三步列出”示例Few-shot给 1~3 个输入输出对让模型模仿用户“天气如何” 助手“今天晴天25℃。”约束限制行为“如果不知道答案请说‘无法确定’不要编造”1.2 Prompt 的作用控制输出质量好的 Prompt 大幅降低幻觉提升准确性。塑造风格与角色让模型扮演“老师”、“律师”、“幽默的朋友”。实现复杂任务链式推理CoT、代码生成、数据提取等。2. Prompt 设计从“能跑”到“优秀”的 6 条黄金法则2.1 设计流程概览是否否是明确任务目标选择Prompt结构是否需要示例?Few-shot PromptZero-shot Prompt添加格式/约束测试输出效果满意?迭代优化定版使用2.2 六大设计原则① 指令清晰、避免歧义❌ “写一段关于AI的文字” → 太宽泛。✅ “用 50 字解释什么是监督学习面向初中生读者举一个猫分类的例子。”② 使用分隔符明确边界建议使用###、、tag等将指令、上下文、输入隔开。### 指令 ### 将下面的英文翻译成中文并保持专业术语准确。 ### 输入 ### The prompt design is crucial for large language models. ### 输出 ###③ 提供示例Few-shot提升稳定性示例能让模型学会“输出格式”和“推理方式”。请仿照以下示例将问题分类为【技术】/【产品】/【其他】。 示例1 问题OpenAI GPT-4 有多少参数 分类技术 示例2 问题ChatGPT Plus 每月费用多少 分类产品 真实问题 问题DALL·E 3 和 Midjourney 哪个更擅长画人像 分类④ 指定输出格式直接要求 JSON、Markdown、列表、代码块等。请列出三个提高睡眠质量的建议。以JSON数组格式输出每个元素包含“title”和“description”。⑤ 引导模型“思考” – 思维链Chain-of-Thought, CoT对于复杂推理强制模型输出中间步骤。问题小明有 5 个苹果给了小红 2 个然后又买了 3 倍于现在数量的苹果。请问他现在有多少个苹果 请一步一步推理最后输出答案。⑥ 处理不确定性 – 设置“拒绝回答”机制防止幻觉。如果下面提供的信息不足以回答问题请直接回复“根据现有信息无法回答”。不要编造任何内容。3. Prompt 调优如何系统性地提升效果调优是一个实验→评估→修正的闭环过程。指标不达标达标初始Prompt构造测试集至少10个典型问题运行批量测试人工/自动评估调整Prompt• 增加示例• 细化指令• 改用CoT发布/部署3.1 调优的核心维度维度调优方法指令精确性去掉模糊词“大概”、“一些”改用具体数字或条件示例选择选择边缘案例、代表性案例示例数量一般 2~5 个角色设定增加“你是一名资深架构师”、“请用冷静客观的语气”负向约束“不要列出超过 3 条”、“禁止使用专业术语”模型参数降低temperature0~0.3提高稳定性top_p可配合调整3.2 实战技巧从差到好的例子对比场景从简历中提取技能列表输出 JSON差 Prompt提取技能。中等 Prompt从下面的简历文本中提取所有技能用 JSON 数组输出。优秀 Prompt### 角色 ### 你是一名资深的 HR 助理。 ### 任务 ### 从简历中提取【专业技能】和【软技能】两类。 ### 输出格式 ### {hard_skills: [...], soft_skills: [...]} ### 约束 ### - 每个技能用 2-4 个字的短语 - 不重复提取 - 如果没有某类技能输出空数组 ### 简历文本 ### {resume_content}3.3 自动调优工具推荐LangSmith追踪 Prompt 版本对比输出。PromptPerfect自动优化 Prompt 文本。DSPy用编程方式声明 Prompt 并自动调优。简单的本地脚本保留测试集批量运行计算准确率。3.4 评估指标指标说明适用场景准确性答案是否与标准答案一致分类、提取格式符合度JSON/列表格式正确所有结构化输出幻觉率编造不存在的信息知识问答一致性多次运行结果稳定所有场景4. 代码实战使用 OpenAI API 对比不同 Prompt 的效果importopenai openai.api_keyyour-keydefask(prompt,temperature0.0):responseopenai.ChatCompletion.create(modelgpt-3.5-turbo,messages[{role:user,content:prompt}],temperaturetemperature)returnresponse.choices[0].message.content# 测试 Prompt 1简单指令prompt_bad介绍一下 Python 中的装饰器。print(【简单Prompt输出】\n,ask(prompt_bad))# 测试 Prompt 2结构化 格式约束prompt_good ### 角色 ### 你是一位 Python 高级讲师。 ### 任务 ### 用三个要点解释“装饰器”并给出一段示例代码。要求 1. 每个要点不超过 30 字。 2. 代码需要包含 语法的实际示例。 3. 最后用一句话说明装饰器的常见应用场景。 ### 输出格式 ### **要点** 1. ... 2. ... 3. ... **代码** ... **应用场景** ... print(\n【结构化Prompt输出】\n,ask(prompt_good)) 实际运行你会发现结构化 Prompt 输出更一致、更易解析且不产生冗余内容。5. 常见误区与避坑指南误区正确做法Prompt 越短越好长度不是关键信息密度和清晰度才重要一次性给出完美 Prompt接受迭代优化逐步改进忽略模型版本差异GPT-4 与 GPT-3.5 对同样 Prompt 反应不同建议分别调优不用测试集主观判断往往有偏差必须用固定测试集评估把所有指令塞进一个 Prompt复杂任务可拆分为多步如先提取再分类6. 总结与思维导图核心要点回顾Prompt 控制 LLM 的“编程语言”好坏直接决定输出质量。设计阶段明确指令 → 提供示例 → 约束格式 → 拒绝幻觉。调优阶段建立测试集 → 对比实验 → 调整指令/参数 → 评估迭代。终极心法没有“万能 Prompt”只有“最适合你的任务 模型版本”的 Prompt。附Prompt 设计决策流程图可直接用于自己的项目是否是否是否是否否是开始设计Prompt任务是否复杂?加入思维链要求逐步推理需要固定格式?指定JSON/Markdown/列表模型可能幻觉?增加“不知道就说不知道”需角色扮演?设定角色语气Zero-shot 简单指令可选加入Few-shot示例测试输出效果满意?调整示例/约束/参数完成
一文吃透 Prompt:定义、设计与调优全指南
一文吃透 Prompt定义、设计与调优全指南附流程图实战代码想让大模型输出高质量结果Prompt 才是真正的“隐藏技能”。本文从零讲起涵盖 Prompt 的核心要素、设计原则、调优方法并给出可直接复用的代码与模板。1. 什么是 PromptPrompt提示词是用户输入给大语言模型LLM的自然语言指令用于引导模型生成特定格式、风格和内容的回答。简单理解Prompt 就是你与大模型沟通的语言——你问得越清晰、越有结构模型回答就越精准。1.1 Prompt 的组成要素一个完整的 Prompt 通常包含以下几个部分可灵活组合要素说明示例指令明确要求模型做什么“翻译成英文”、“总结下面这段话”上下文提供背景信息或参考内容“用户昨天买了iPhone今天问退货政策…”输入数据需要模型处理的具体内容一段长文本、一个表格、一组数字输出格式指定回答的结构“用JSON格式输出”、“分三步列出”示例Few-shot给 1~3 个输入输出对让模型模仿用户“天气如何” 助手“今天晴天25℃。”约束限制行为“如果不知道答案请说‘无法确定’不要编造”1.2 Prompt 的作用控制输出质量好的 Prompt 大幅降低幻觉提升准确性。塑造风格与角色让模型扮演“老师”、“律师”、“幽默的朋友”。实现复杂任务链式推理CoT、代码生成、数据提取等。2. Prompt 设计从“能跑”到“优秀”的 6 条黄金法则2.1 设计流程概览是否否是明确任务目标选择Prompt结构是否需要示例?Few-shot PromptZero-shot Prompt添加格式/约束测试输出效果满意?迭代优化定版使用2.2 六大设计原则① 指令清晰、避免歧义❌ “写一段关于AI的文字” → 太宽泛。✅ “用 50 字解释什么是监督学习面向初中生读者举一个猫分类的例子。”② 使用分隔符明确边界建议使用###、、tag等将指令、上下文、输入隔开。### 指令 ### 将下面的英文翻译成中文并保持专业术语准确。 ### 输入 ### The prompt design is crucial for large language models. ### 输出 ###③ 提供示例Few-shot提升稳定性示例能让模型学会“输出格式”和“推理方式”。请仿照以下示例将问题分类为【技术】/【产品】/【其他】。 示例1 问题OpenAI GPT-4 有多少参数 分类技术 示例2 问题ChatGPT Plus 每月费用多少 分类产品 真实问题 问题DALL·E 3 和 Midjourney 哪个更擅长画人像 分类④ 指定输出格式直接要求 JSON、Markdown、列表、代码块等。请列出三个提高睡眠质量的建议。以JSON数组格式输出每个元素包含“title”和“description”。⑤ 引导模型“思考” – 思维链Chain-of-Thought, CoT对于复杂推理强制模型输出中间步骤。问题小明有 5 个苹果给了小红 2 个然后又买了 3 倍于现在数量的苹果。请问他现在有多少个苹果 请一步一步推理最后输出答案。⑥ 处理不确定性 – 设置“拒绝回答”机制防止幻觉。如果下面提供的信息不足以回答问题请直接回复“根据现有信息无法回答”。不要编造任何内容。3. Prompt 调优如何系统性地提升效果调优是一个实验→评估→修正的闭环过程。指标不达标达标初始Prompt构造测试集至少10个典型问题运行批量测试人工/自动评估调整Prompt• 增加示例• 细化指令• 改用CoT发布/部署3.1 调优的核心维度维度调优方法指令精确性去掉模糊词“大概”、“一些”改用具体数字或条件示例选择选择边缘案例、代表性案例示例数量一般 2~5 个角色设定增加“你是一名资深架构师”、“请用冷静客观的语气”负向约束“不要列出超过 3 条”、“禁止使用专业术语”模型参数降低temperature0~0.3提高稳定性top_p可配合调整3.2 实战技巧从差到好的例子对比场景从简历中提取技能列表输出 JSON差 Prompt提取技能。中等 Prompt从下面的简历文本中提取所有技能用 JSON 数组输出。优秀 Prompt### 角色 ### 你是一名资深的 HR 助理。 ### 任务 ### 从简历中提取【专业技能】和【软技能】两类。 ### 输出格式 ### {hard_skills: [...], soft_skills: [...]} ### 约束 ### - 每个技能用 2-4 个字的短语 - 不重复提取 - 如果没有某类技能输出空数组 ### 简历文本 ### {resume_content}3.3 自动调优工具推荐LangSmith追踪 Prompt 版本对比输出。PromptPerfect自动优化 Prompt 文本。DSPy用编程方式声明 Prompt 并自动调优。简单的本地脚本保留测试集批量运行计算准确率。3.4 评估指标指标说明适用场景准确性答案是否与标准答案一致分类、提取格式符合度JSON/列表格式正确所有结构化输出幻觉率编造不存在的信息知识问答一致性多次运行结果稳定所有场景4. 代码实战使用 OpenAI API 对比不同 Prompt 的效果importopenai openai.api_keyyour-keydefask(prompt,temperature0.0):responseopenai.ChatCompletion.create(modelgpt-3.5-turbo,messages[{role:user,content:prompt}],temperaturetemperature)returnresponse.choices[0].message.content# 测试 Prompt 1简单指令prompt_bad介绍一下 Python 中的装饰器。print(【简单Prompt输出】\n,ask(prompt_bad))# 测试 Prompt 2结构化 格式约束prompt_good ### 角色 ### 你是一位 Python 高级讲师。 ### 任务 ### 用三个要点解释“装饰器”并给出一段示例代码。要求 1. 每个要点不超过 30 字。 2. 代码需要包含 语法的实际示例。 3. 最后用一句话说明装饰器的常见应用场景。 ### 输出格式 ### **要点** 1. ... 2. ... 3. ... **代码** ... **应用场景** ... print(\n【结构化Prompt输出】\n,ask(prompt_good)) 实际运行你会发现结构化 Prompt 输出更一致、更易解析且不产生冗余内容。5. 常见误区与避坑指南误区正确做法Prompt 越短越好长度不是关键信息密度和清晰度才重要一次性给出完美 Prompt接受迭代优化逐步改进忽略模型版本差异GPT-4 与 GPT-3.5 对同样 Prompt 反应不同建议分别调优不用测试集主观判断往往有偏差必须用固定测试集评估把所有指令塞进一个 Prompt复杂任务可拆分为多步如先提取再分类6. 总结与思维导图核心要点回顾Prompt 控制 LLM 的“编程语言”好坏直接决定输出质量。设计阶段明确指令 → 提供示例 → 约束格式 → 拒绝幻觉。调优阶段建立测试集 → 对比实验 → 调整指令/参数 → 评估迭代。终极心法没有“万能 Prompt”只有“最适合你的任务 模型版本”的 Prompt。附Prompt 设计决策流程图可直接用于自己的项目是否是否是否是否否是开始设计Prompt任务是否复杂?加入思维链要求逐步推理需要固定格式?指定JSON/Markdown/列表模型可能幻觉?增加“不知道就说不知道”需角色扮演?设定角色语气Zero-shot 简单指令可选加入Few-shot示例测试输出效果满意?调整示例/约束/参数完成