Prompt工程快速入门与实战案例教程
PromptEngineering是引导生成式AI输出的指令设计技术。核心技巧包括清晰描述需求、结构化格式与上下文学习(少样本示例和思维链)。进阶技术涵盖检索增强生成、推理模型与智能体构建。实战案例展示翻译等应用,强调精准指令对AI输出的关键作用。
掌握 Prompt Engineering 技巧,让 AI 输出更精准高效!
从基础概念到实战技巧,本文带你全面掌握提示词设计。我们将从 Prompt 的核心概念出发,逐步深入 高效提示词的编写技巧,并通过 翻译工具、代码生成等实战案例 将理论落地,最终带你了解 Meta Prompt 和评测飞轮 的进阶玩法。
1. 什么是 Prompt Engineering?基础概念与重要性解析
Prompt 的定义与作用
Prompt(提示词)是输入给生成式 AI 模型的指令,用于引导其输出结果。而 Prompt Engineering(提示工程)则是编写有效指令的过程,使模型能够持续生成符合需求的内容。
简单来说,prompt(提示词) 是引导生成式 AI 模型按你的要求进行输出的指令。由于模型生成内容的不确定性,构建一个能够生成所需格式内容的提示既是一门艺术,也是一门科学。
使用 LLM 撰写旅行规划、翻译文本、编写代码或解答数学题,都是 Prompt 的应用。甚至简单的“你好”也是 Prompt,可以看到 DeepSeek-r1 仍会深入思考许多。
$ Ollama run deepseek-r1:8b
>>>> 你好
Thinking...
嗯,用户发来一句简单的“你好”,看起来像是初次打招呼或者想开启对话。可能 ta 刚打开聊天窗口,还在试探界面功能,也可能只是随手测试 AI 的响应速度。
这种情况下不适合过度解读,但也不能冷冰冰地回复。用温暖友好的语气建立初始信任比较重要,同时要留出开放式的引导空间——毕竟用户没提供具体需求时,主动询问方向比被动等待更高效。
考虑到中文习惯,“你好呀”比“您好”更自然亲切,加上表情符号能快速传递友好感。后半句列举几个常见使用场景(学习、工作等)可以降低用户的提问门槛,让 ta 更容易意识到 AI 能帮上忙的领域。
用户此刻可能处于两种状态:要么是随便问问想看看 AI 怎么回应,要么确实有需求但还没组织好语言。所以回复既要简洁又要包容性强,“有什么我可以为你做的吗”这种开放式结尾比较合适。
...done thinking.
你好呀!? 我是 DeepSeek-R1,很高兴见到你~
无论你是来学习、工作还是生活上遇到问题,我都可以帮你出主意、找答案 ?
今天有什么我可以为你做的吗?
Vibe Coding(code is cheap, show me the talk)——提示词即代码
Prompt 就是 LLM 时代的程序。过去人们分享应用时索要代码,如今则要提示词。写好 Prompt 已成为新时代的基本功。
小提示: 不要将 Prompt 视为简单的“提问”,它更像一份精准的指令文档。如同向餐厅后厨下单,描述越具体,结果越准确。
常见问题 1:Prompt 是不是越长越好?
答: 不一定。关键在于 清晰度和相关性。冗长但重复、模糊的指令反而会干扰模型。好的 Prompt 应该结构清晰、重点突出,包含角色、任务、步骤、输出格式等必要元素,而非无意义堆砌。
2. 编写高效提示词的三大核心技巧
技巧一:描述清晰
虽然网上流传着许多 Prompt 的奇技淫巧,但最核心的仍是清晰描述需求,如同与人交流,不要让对方猜测。
用餐馆点餐举例。你对后厨说“来点吃的”,厨房(AI)会很困惑,可能随便送一份蛋炒饭,结果不一定是你想要的。但如果说“我要一份牛肉盖浇饭”,这就好多了!厨房知道了菜品,但不知道你的口味偏好,可能做得特别辣,而你其实不吃辣。如果更具体:“老板,我要一份青椒肉丝盖浇饭。米饭要硬一点,肉丝要瘦肉,不要放味精,最重要的是,千万不要放辣!请在晚上 7 点前送到。”厨房(AI)收到这个指令,就能精准做出完全符合你心意的美食。
Prompt 本质上就是你和 AI 沟通的语言。
- 你给的指令越模糊、懒惰,AI 给出的答案就越平庸、不靠谱。
- 你给的指令越清晰、具体、信息量越丰富,AI 就越能像顶级专家一样,精准完成任务。
技巧二:基本格式的结构化
一般来说,prompt 会包含以下部分:先设置一个 角色,然后设置任务和执行的 步骤,再约束输出的 格式,并举几个 例子。不必拘泥于此,主要是为了描述清晰,也便于自己维护。
现在模型能力都比较强,对 prompt 语言没什么要求,如果你英语不是特别地道,则用中文更好(或者让 LLM 给你润色一下)。也可以混合使用,模型对一些英语单词特别敏感,比如:MUST、Examples、Format。
# Role and Objective
# Instructions
## Sub-categories for more detailed instructions
# Reasoning Steps/Workflow
# Output Format
# Examples
## Example 1
# Context
# Final instructions
一般使用 markdown 标题表示递进关系,但层级不宜过深(H4 即可)。长内容块通常用 markdown 代码块格式包裹,不过有时 xml 格式更加清晰(特别是 Example、Context 部分的描述)。
```
example-1:
I absolutely love this headphones — sound quality is amazing!
Positive
```
```
example-2:
Battery life is okay, but the ear pads feel cheap.
Neutral
```
I absolutely love this headphones — sound quality is amazing!
Positive
Battery life is okay, but the ear pads feel cheap.
Neutral
技巧三:In-Context Learning(上下文学习)
这是大模型神奇的地方之一,研究发现,即使某个能力没有专门训练过,但给一些示例,它就能学会。因此我们经常使用 few-shot 技巧来“激活”这个能力。
3.1 Few-Shot(小样本学习)
简单来说就是举一些例子。比如评论分类:
文本:我对这个产品非常失望。
分类:负面
文本:这部电影还可以,没什么特别的。
分类:中性
文本:这家餐厅的食物棒极了!
分类:正面
主要作用:
- 提高复杂推理任务的准确性:对于需要逻辑推理的任务,给出的例子就像是给 AI 的“解题模板”,帮助其学习新的、特定的任务模式。
- 精确格式控制:通过多个例子强化你想要的输出格式。
- 减少歧义:明确告诉模型在边界情况下应该如何决策(比如上面例子中的“中性”)。
当然 few-shot 也不能乱写,需要注意下面几个方面:
左图:示例数量(Exemplar Quantity)尽量多一些
右图:示例顺序(Exemplar Ordering)随机排列效果更好
左图:示例标签分布(Exemplar Label Distribution)应均匀
右图:示例自身质量(Exemplar Label Quality)必须绝对正确
3.2 Chain-of-Thought(思维链)
CoT(思维链)是一种技术,促使大型语言模型在解决问题时阐述其推理过程,从而增强模型的推理能力。
Zero-Shot CoT: 在推理模型出现之前,很多 prompt 优化都会让加一句“Let’s think step by step”,这样模型就能思考,解决一些需要多步推理的问题。但现在有了推理模型,更推荐直接使用推理模型解决问题。即使是非推理模型,也不建议刻意加上这句,而是应该定义好目标(Objective)和 Workflow。
Few-Shot CoT: 这仍然属于 In-Context Learning,不仅直接给结果,而且给出思考过程,相当于授之以渔。
Q: 食堂有 23 个苹果,他们用了 20 个做午餐,又买了 6 个。他们现在有多少个苹果?
A: 9
Q: 食堂有 23 个苹果,他们用了 20 个做午餐,又买了 6 个。他们现在有多少个苹果?
A: 食堂原来有 23 个苹果。他们用了 20 个,所以剩下 23 - 20 = 3 个。然后他们又买了 6 个,所以现在有 3 + 6 = 9 个。最终答案是 9。
小提示: 使用 Few-Shot 时,示例的标签分布要均匀(比如正面、负面、中性各一个),并且示例本身必须正确。示例顺序随机摆放效果更好。
常见问题 2:什么时候该用 Zero-Shot,什么时候该用 Few-Shot?
答: 对于通用、简单的任务(如翻译、摘要),Zero-Shot 通常足够,直接一条指令即可。对于需要特定格式、多步推理、减少歧义的任务(如评论分类为三级、数学多步计算),推荐使用 Few-Shot 提供 2-5 个示例。如果任务非常复杂,还可以考虑 Few-Shot CoT(给出思考过程示例)。
3. 进阶技巧:RAG、推理模型与 Agent
RAG(检索增强生成)
将额外相关上下文添加到模型生成请求中的技术,有时被称为检索增强生成(RAG)。
广义上来说,给模型提供相关上下文的技术都可以叫 RAG。方式可以是向量数据库召回,也可以是 Google 等搜索接口搜出来的,甚至是手工写死在 prompt 中的。
使用目的:
- 让模型访问专有数据,即训练中未包含的数据
- 让模型仅在特定数据集中进行回答
与 Fine-tuning(微调)的对比
微调允许你定制预训练模型,使其在特定任务上表现出色。
RAG 常与 Fine-tuning 比较,因为两者都能增强 LLM 在特定领域的知识。但两者并非互斥,应用场景不同。
- RAG(检索增强生成): 这种方法可比作“开卷考试”。当模型遇到问题时,它会先从一个外部的、实时更新的知识库(如向量数据库)中检索相关信息,然后将这些信息作为上下文,连同原始问题一起交给语言模型,从而生成答案。它不改变模型本身的内部参数。
- Fine-tuning(微调): 这种方法则像“备考学习”。它通过在特定任务或领域的定制化数据集上继续训练模型,从而将新的知识或技能“内化”到模型的参数中。这个过程会更新模型的权重,使其“记住”特定的知识、格式或风格。
如果你的首要任务是确保信息的准确性、实时性和可追溯性,那么 RAG 是更优的选择。如果你的目标是让模型掌握一种特定的行为模式、风格或固有知识,那么 微调会更适合。
推理模型(Reasoning Model)
随着 OpenAI O 系列模型和 DeepSeek-R1 的火热,现在新出的模型几乎都是推理模型(可设置 no think 模式)。Prompt 写法变了吗?其实也没有,本质仍未改变:清晰描述需求、提供足够的上下文。
注意事项:
- “think step by step”这种触发 COT 的魔法词就不要添加了,会画蛇添足,甚至非推理模型也不建议这样做了。
- 提供具体的目标,让推理模型能自行验证,不断推理和迭代,直到符合你的成功标准。
- 先尝试 zero-shot,不行再 few-shot。前面提到 few-shot 的 3 个作用,推理模型会自己探寻解决步骤,这点可能不需要,但控制格式和减少歧义的作用仍然存在。few-shot 并非完全舍弃。
- workflow(工作流)可能更加重要。推理模型能自己拆解复杂任务,但往往很发散,会让用户体验不佳。如果特定任务有成熟步骤,可以固定下来,让模型一步步执行。如果是做具体任务,不需要用 few-shot 教会模型,而是使用 workflow 固定下来。比如写旅行规划,先安排交通、住宿再安排景点等,或构建 ReAct Agent。
ReAct/Reflexion(构建 Agent)
Agent 代表能够智能完成任务的系统,范围从执行简单工作流到追求复杂、开放式的目标。
ReAct(Reasoning and Acting)指生成一个想法,采取一个行动,并接收一次观察结果(然后重复这个过程)。所有这些信息都会被插入到提示中,这样它就能记住过去的想法、行动和观察结果。
这类模式(Observation-Based Agent)不能单纯算作 prompt,手工构建非常麻烦(还需要和 function call/MCP 结合),一般 LLM 开发框架会集成,比如:LangChain:从预构建 Agent 开始、Eino:React Agent 使用手册
小提示: 对推理模型,不要写“think step by step”,而是直接定义好 具体目标 和 成功标准。例如:“请写一份关于新能源汽车的调研报告,要求包含市场现状、技术路线和竞争格局,并用表格列出前五名厂商的市占率。” 目标越明确,模型推理越精准。
常见问题 3:RAG 和 Fine-tuning 可以一起用吗?
答: 完全可以且往往是 最佳实践。例如:先用 Fine-tuning 让模型学习企业内部的术语、写作风格;再用 RAG 从最新的文档库中检索实时信息。两者结合能同时获得“内化知识”和“实时知识”的优势。
4. 实战案例:从翻译工具到 Meta Prompt
4.1 翻译工具例子
前面说的可能比较抽象,我们通过一个翻译工具例子,来把上面说的串起来。为了凸显 prompt 的效果,我们本地运行一个小参数模型 ollama run qwen3:8b,同时为了突显 prompt 优化效果,关闭思考模式(/set nothink)。
第一轮: 可以看到翻译有点别扭,listened 应该译为“听了/听过”更合适。同时我希望保留人名,因为有时中文名称更加拗口。
翻译:Have you listened to the new album by Taylor Swift?
你听到泰勒·斯威夫特的新专辑了吗?
第二轮: 翻译稍好一些,但没有按要求保留英文原文,尝试加一些示例,再优化一下:
# Role and Objective
你是一个翻译专家,需要将用户输入的英文准确、流畅地翻译成中文
# Instructions
1. 保持译文准确,忠实于原文的意思。
2. 使用自然、通顺的中文表达方式。
3. 避免逐字逐句的生硬翻译。
4. 注意英文文本中的语法、词汇和语境。
5. 如果有人名保留英文原文
# Output Format
直接输出中文,不需要包含其它内容
# input
Have you listened to the new album by Taylor Swift?
---
你听过泰勒·斯威夫特的新专辑吗?
第三轮: 这次好多了,看起来进步明显。
# Role and Objective
你是一个翻译专家,需要将用户输入的英文准确、流畅地翻译成中文
# Instructions
1. 保持译文准确,忠实于原文的意思。
2. 使用自然、通顺的中文表达方式。
3. 避免逐字逐句的生硬翻译。
4. 注意英文文本中的语法、词汇和语境。
5. 如果有人名保留英文原文,不做翻译
# Output Format
直接输出中文,不需要包含其它内容
# Examples
原文:Please give this package to Dr. Emily Carter.
译文:请把这个包裹交给 Emily Carter 博士。
原文:LeBron James just broke another record in the NBA.
译文:LeBron James 刚刚在NBA打破了又一项纪录。
# Input
Have you listened to the new album by Taylor Swift?
---
你听过了Taylor Swift的新专辑吗?
第四轮: 最后再做一些优化,比如把类似 NBA 简称做解释,翻译得更优雅一点。还可以引入 RAG 增加术语表(有些词就这样翻译),这里就不演示了。
# Role and Objective
你是一个跨文化专业翻译家,需要将用户输入的英文翻译为中文
# Instructions
- 严格遵循信达雅原则(信=精准/达=流畅/雅=审美)
- 保持译文准确,忠实于原文的意思。意译而非直译,专业内容保证术语准确
- 翻译完成后再 review 一遍,确保使用自然、通顺、地道的中文表达方式,符合中文语言习惯
- 注意识别语境(日常生活/娱乐/专业领域/俚语和习语/新闻等),译文需要贴合语境
- 如果有人名保留英文原文,不做翻译
- 有些特定词汇(产品/公司名称、地名、编程语言名称等)不用翻译,但需要结合上下文,比如 Apple 指苹果公司也指水果,需要一整句话分析
- 英语专业名词缩写保留原文,并把中文释义放在后面括号里。比如 CEO(首席执行官),NBA(美国职业篮球联赛),KPI(关键绩效指标)
# Output Format
直接输出中文,不需要包含其它内容
# Examples
原文:LeBron James just broke another record in the NBA.
译文:LeBron James 刚刚在NBA(美国职业篮球联赛)打破了又一项纪录。
原文:Economy shows signs of recovery amid easing of restrictions.
译文:随着限制措施放宽,经济显示出复苏迹象。
原文:You can't judge a book by its cover.
译文:人不可貌相,海水不可斗量。
原文:He is a full-stack developer proficient in both Python and JavaScript.
译文:他是一位精通 Python 和 JavaScript 的全栈工程师。
原文:I'd like to book a table for two at 7 PM.
译文:我想预订一张今晚7点的两人桌。
一些翻译结果,效果还算不错:
I'm just browsing, thank you.
我只是随便看看,谢谢。
Please clear your browser cache and cookies.
请清除您的浏览器缓存和 Cookie。
The company's quarterly earnings exceeded analysts' expectations.
该公司季度盈利超过了分析师的预期。
He needs to undergo a MRI scan.
他需要进行磁共振成像(MRI)检查。
This game has an amazing open-world map and immersive storyline.
这款游戏拥有一个令人惊叹的开放世界地图和引人入胜的故事情节。
4.2 Meta Prompt(还在手写 prompt?)
其实到这一步细心的同学可以发现,写 prompt 还是有一定的范式。那么可以使用 LLM 自己生成吗?当然可以,这就叫 Meta Prompt。自动生成提示词的 prompt 大概这样:
Create a GPT prompt based on the following task requirements:
# Requirements
- Keep the prompt clear and easy for GPT's understanding.
- Be concise as each token in the prompt incurs a cost.
- The prompt is suggested to be a well-structured Markdown.
- Include one or two input/output `## Examples` where appropriate.
- Maintain a professional tone.
# Response Format
Provide the prompt content directly, without titles, additional explanations or comments.
# Requirements of Task
在这里输入任务需求
有开源的实现:GitHub - meta-prompting/meta-prompting,火山方舟也推出了 PromptPilot。
4.3 评测飞轮
其实比写 prompt 更重要的是评测,效果好不好往往不是 1+1=2 这种确定性问题,需要有可验证的反馈机制,构建评测飞轮,实现持续迭代。
一般流程是批量跑然后打标。打标简单来说就是和参考答案做比较。如果是逻辑题、数学计算等可以直接判断的,用准确率做最终结果。如果像本文的例子翻译场景有一定主观性,常见做法就是对结果量化打分,也有两种模式:一是 3 分或者 5 分制,对比参考答案得出总分(精准量化)。另一种是 GSB 比较模式,对比 A、B 两种回答,判断“G 更好 / S 等同 / B 更差”,更加简单。
现阶段,不用自己建设评测平台/工具,一般大模型平台都支持评测(比如前面提到的火山方舟 PromptPilot),可以智能生成参考答案,智能评分,甚至自动优化 prompt。
小提示: 评测飞轮的关键是 建立可靠的参考答案。对于主观任务,可以用“GSB”模式快速比较不同 Prompt 版本的优劣。每次迭代后记录分数,形成优化闭环。
常见问题 4:如何判断我的 Prompt 是否足够好?
答: 最好的方法是 评测。构建一个包含 50-100 个测试用例的 评测集(覆盖常见场景和边界情况),然后针对每个用例运行你的 Prompt,对比输出与预期结果。如果准确率(或主观评分)达到 90% 以上,说明 Prompt 基本合格。另外,观察模型是否在 不同措辞的相同需求下 表现稳定,也是衡量鲁棒性的方式。
总结
从基础概念到高级技巧,Prompt Engineering 的核心始终是 清晰沟通。记住:
- 用 结构化格式(角色、指令、步骤、示例、输出格式)让 AI 一眼看懂任务。
- 善用 Few-Shot / CoT 让模型学习新能力。
- 结合 RAG 引入外部知识,避免“幻觉”。
- 对推理模型,定义明确目标 而非强加步骤。
- 最后,用 评测飞轮 驱动持续优化,让 Prompt 越用越好。
现在,拿起你的 Prompt,开始打造属于你的 AI 超级助手吧!
你是一名 AI 行业编辑,请围绕下面这条热点输出一份资讯解读:
热点:Prompt工程快速入门与实战案例教程要求:
1. 先用一句话解释这条热点在讲什么
2. 再总结它为什么重要
3. 说明会影响哪些 AI 产品或内容方向
4. 最后给出 3 个适合资讯站使用的标题
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
相关热点帝奥微电子推出DIO20182双通道运算放大器,输入偏置电流低至1pA,静态电流每通道仅300nA,支持1 4V至5 5V宽电压范围,适用于智能手表等便携设备中微弱光电流信号放大,实现血氧饱和度精准检测。
在企服行业对SaaS的争议中,79%从业者依然看好市场前景。成本压力主要来自拓客、履约和回款,这导致了“二分苦八分甜”的格局。为了缓解焦虑,需要采取具体行动,通过云化与协同生态来重塑商业模式,从而减少内耗,实现更健康的增长。
基于Coze平台,结合TextIn专有模型的OCR解析能力与DeepSeek大语言模型的语义理解,构建了零代码文档智能问答Agent。该方案可高效处理合同审核、技术支持等场景,通过工作流实现文档上传、结构解析与精准问答,提升信息检索效率。
字节开源AI开发平台扣子,具备低门槛、多模态交互和字节生态融合优势,支持私有化部署与深度定制,助力企业降本增效、保障数据安全,成为数字化转型新引擎。
- 日榜
- 周榜
- 月榜
热点快看
