AI 提示词工程完全指南:零样本、少样本与思维链技术

小飞兽 AI应用开发 6 次阅读 2026-07-29

提示词工程(Prompt Engineering)是通过设计高质量输入来引导 LLM 产生期望输出的技术和实践。掌握提示工程技术可以用相同的模型成本获得数倍的效果提升。

一、提示词核心组件

# 零样本提示(Zero-shot)
zero_shot_prompt = '''请将以下中文句子翻译成英文。句子:我今天非常开心,因为学会了提示词工程。'''

少样本提示(Few-shot)

few_shot_prompt = '''请判断以下评论的情感(正面/负面/中性),只输出一个词。

示例:
输入:这家餐厅的菜品非常美味,服务也很周到。
输出:正面

输入:等了整整两个小时,菜才上齐,太失望了。
输出:负面

输入:明天可能会下雨,记得带伞。
输出:中性

输入:这本书的纸张质量一般,但内容很有价值。
输出:'''

链式思维提示(CoT)

cot_prompt = '''问题:一个商店有 15 个苹果,卖掉了 8 个,又进货 12 个,现在有多少个?

请逐步推理,最后给出答案。

推理过程:
1. 商店原有 15 个苹果。
2. 卖掉了 8 个,剩下 7 个。
3. 又进货 12 个,7 + 12 = 19 个。
4. 现在有 19 个苹果。

答案:19'''

二、进阶提示技术

import openai
client = openai.OpenAI()

question = '如果所有的猫都喜欢鱼,小明有一只猫,请问这只猫喜欢鱼吗?'

responses = []
for _ in range(5):
resp = client.chat.completions.create(
model='gpt-4o-mini',
messages=[{'role': 'user', 'content': question}],
temperature=0.8,
)
responses.append(resp.choices[0].message.content)

from collections import Counter
most_common = Counter(responses).most_common(1)[0]
print(f'最一致的答案: {most_common[0]}\n出现次数: {most_common[1]}/5')

step1_prompt = '''从以下用户需求中提取关键实体和信息:
需求:我想去日本旅游,预算 15000 元,7 天时间,喜欢美食和自然风光。
提取:目的地、预算、天数、偏好(用 JSON 格式输出)'''

step2_prompt = f'''根据以下信息生成日本 7 天旅行计划:
{step1_prompt}
要求:每天的景点、餐厅、住宿建议,用 Markdown 格式输出。'''

三、提示词优化实践

# 提示词优化 checklist

结构清晰:System / Few-shot / Query / Output Format 分区


具体明确:避免歧义,明确说做什么而非不要做什么


角色设定:'你是一个有 10 年经验的 Python 工程师'


格式约束:用 JSON 格式 / 用 Markdown 表格 / 只输出一个词


边界说明:如果不知道,请明确说不知道,不要编造


避免:一次要求太多任务,分步执行效果更好</code></pre><h2>四、常见问题</h2><p><strong>Q1:Few-shot 示例是不是越多越好?</strong><br/>不是。示例过多会增加 context 长度和成本,且可能稀释核心指令。一般 2~5 个示例足够,优先选择覆盖不同边缘情况的代表性示例。</p><p><strong>Q2:模型在 CoT 推理时跳过中间步骤直接给答案怎么办?</strong><br/>在 Prompt 中明确要求先写出推理步骤,再给出答案,或者在 Prompt 末尾加上Let's think step by step.</p><p><strong>Q3:不同模型对提示词技巧的敏感度有差异吗?</strong><br/>有。GPT-4、Claude 等顶级模型对零样本指令就能理解得很好;开源小模型(如 7B 参数)更依赖 Few-shot 示例和详细的任务分解。</p><h2>五、延伸阅读</h2><ul><li>OpenAI Prompt Engineering 指南:<a href="https://platform.openai.com/docs/guides/prompt-engineering">https://platform.openai.com/docs/guides/prompt-engineering</a></li><li>Anthropic Claude 提示词技巧:<a href="https://docs.anthropic.com/claude/docs/intro-to-prompting">https://docs.anthropic.com/claude/docs/intro-to-prompting</a></li><li>Prompt Engineering Guide:<a href="https://www.promptingguide.ai/zh">https://www.promptingguide.ai/zh</a></li><li>论文:Chain-of-Thought Prompting Elicits Reasoning in Large Language Models(Wei et al., 2022)</li></ul>