纲要

  • 提示词工程的定义与核心价值
    • 从专用模型到通用模型的“适配层”
    • 四大核心作用:上下文提供、任务定义、输出格式指定、行为指导
  • 提示词的底层工作模式
    • 任务框架设定
    • 知识激活
    • 角色扮演
    • 示例提供
    • 任务分解
    • 约束与指导
  • 高质量提示词的五大撰写原则
    • 明确且具体
    • 指定输出格式与结构
    • 设定角色与背景
    • 分步拆解复杂任务
    • 提供示例与约束
  • 常见思维流模式及其适用场景
    • IO(直接输入输出)
    • 思维链(CoT
    • 自洽性思维链(CoT-SC
    • 思维树(ToT
    • 四种模式的演进关系图
  • 代码实战:通过 API 调用演示零样本、少样本与思维链
    • 使用 Python + OpenAI 兼容接口
    • 对比 zero-shotfew-shotCoT 的效果
    • 完整可运行脚本
  • 总结

提示词工程:AI 对话的“魔法咒语”

在通用大模型范式诞生之前,AI 应用面临的最大痛点之一是泛化能力不足。一个中餐菜谱机器人换到西餐场景就需要重新训练,成本高昂。以 GPT 为代表的通用大语言模型通过引入 提示词 机制解决了这一问题:同一个基础模型,只需切换提示词,就能完成翻译、写作、分类、推理等截然不同的任务。

提示词(Prompt)本质上是一个适配层,它像插槽一样连接底模和具体任务,避免了为每个任务单独训练模型的繁重工作。具体来说,提示词完成了四件事:

提示词

提供上下文
设定任务背景与范围

定义任务
告诉模型要完成什么

指定格式
明确输出的组织方式

行为指导
引导模型的思考与回答路径

  • 上下文提供:让模型清楚“在什么场景下说话”。
  • 任务定义:明确要执行的指令,如翻译、总结、生成代码。
  • 格式指定:约束输出结构,例如要求返回 JSON、Markdown 表格。
  • 行为指导:通过措辞和结构引导模型采取特定的推理或表达方式。

提示词的六种底层工作模式

提示词工程之所以能激发大模型的特定能力,依赖于以下六种模式的组合运用:

  • 任务框架设定:在提示词中勾勒任务的全貌,为模型建立清晰的工作边界。
  • 知识激活:通过精心设计的关键词,唤醒模型在预训练中习得的特定领域知识。例如,提及“唐诗”会让模型激活有关唐诗的权重。
  • 角色扮演:让模型扮演专家、助手、教师等角色,从而以特定视角回答问题。
  • 示例提供:在提示词中给出少量范例(few-shot),帮助模型理解任务的具体要求和输出格式。
  • 任务分解:将复杂问题拆成多个步骤,引导模型逐步完成,显著提升推理质量。
  • 约束与指导:设定规则和限制,防止模型输出偏离预期,尤其在开源模型上尤为关键。

高质量提示词的五大撰写原则

要让提示词发挥最大效用,需要遵循以下五条工程化原则:

原则 不良示例 良好示例
明确具体 “谈谈全球变暖” “请提供三个减少个人碳足迹的具体方法,并解释每种方法的潜在影响”
指定输出格式 “介绍一下 Python 和 JavaScript” “请以表格形式对比 Python 和 JavaScript,包含语言类型、主要用途、优点、缺点”
设定角色与背景 “怎么照顾发烧的婴儿?” “假设你是一位儿科医生,一位新手父母来咨询六个月大婴儿发烧怎么办,请用专业但易懂的语言回答”
分步拆解 “写一个斐波那契数列函数” “一步一步来实现:1. 定义函数名和参数;2. 处理 n=0 和 n=1 的情况;3. 实现递归逻辑;4. 添加测试用例”
提供示例与约束 “翻译一下 break a leg” “将以下英语俚语翻译成中文,保留原意但使用地道表达,每个解释不超过15个字。示例:it’s raining cats and dogs → 大雨倾盆,解释:形容雨非常大。现在翻译:break a leg, piece of cake, hit the hay”

这五条原则不仅适用于日常使用大模型,也是后续开发 AI Agent 时设计系统提示词的基本功。

常见思维流模式:从 IO 到思维树

提示词工程的另一个重要维度是思维流模式——即如何引导模型的推理路径。目前主流的四种模式复杂度递增:

IO 直接输出

CoT 思维链

CoT-SC 自洽性思维链

ToT 思维树

简单问答, 无中间推理

逐步推理, 类似人类思考

生成多条推理路径, 投票选最优

树状探索多种可能, 择优输出

  • IO(输入-输出):最基础,直接给出答案,适用于简单对话或事实查询。
  • CoT(Chain-of-Thought,思维链):要求模型展示中间推理步骤,极大提升数学、逻辑等复杂任务的准确性,并增强可解释性。
  • CoT-SC(Self-Consistency,自洽性思维链):生成多条不同的推理路径,通过多数投票选出最一致的答案,进一步提高可靠性。
  • ToT(Tree-of-Thoughts,思维树):将思维过程组织为树状结构,每个节点可产生多个分支,模型探索不同路径并回溯,最终选定最优路线,适合策略规划类难题。

选型建议

  • 简单问答 → IO
  • 需要推理和解释 → CoT
  • 对准确率要求极高(如考试、数据分析) → CoT-SC
  • 复杂决策、方案设计 → ToT

代码实战:用 Python 对比零样本、少样本与思维链

下面提供一个完整可运行的 Python 脚本,通过调用大模型 API,演示三种提示词策略的效果差异。脚本使用 OpenAI 兼容接口(可替换为智谱、DeepSeek 等),安装依赖 pip install openai 后即可运行。

import openai

# ================= 配置区 =================
# 以 DeepSeek 为例,可替换为你的 API 提供商
API_KEY = "your-api-key-here"       # 替换为真实 API Key
BASE_URL = "https://api.deepseek.com"
MODEL = "deepseek-chat"
# ==========================================

client = openai.OpenAI(api_key=API_KEY, base_url=BASE_URL)

def ask(prompt: str, temperature: float = 0.1) -> str:
    """通用请求函数"""
    resp = client.chat.completions.create(
        model=MODEL,
        messages=[{"role": "user", "content": prompt}],
        temperature=temperature,
        max_tokens=500
    )
    return resp.choices[0].message.content

# 相同的问题,三种不同的提示词策略
question = "小明有5个苹果,吃掉2个,又买了3个,现在有几个苹果?"

# 策略1:零样本 IO(直接提问)
prompt_zero = f"回答问题:{question}"
answer_zero = ask(prompt_zero)

# 策略2:少样本(few-shot),给出一个类似示例
prompt_few = f"""示例:
问:小红有10块钱,花了4块,又捡到2块,现在有多少钱?
答:10 - 4 + 2 = 8,所以是8元。

现在请回答问题:{question}"""
answer_few = ask(prompt_few)

# 策略3:思维链 CoT,要求逐步推理
prompt_cot = f"""请一步一步思考,展示完整推理过程,最后给出答案。
问题:{question}
推理步骤:"""
answer_cot = ask(prompt_cot)

# 输出对比
print("===== 零样本 (Zero-shot) =====")
print(answer_zero)
print("\n===== 少样本 (Few-shot) =====")
print(answer_few)
print("\n===== 思维链 (CoT) =====")
print(answer_cot)

将你的 API Key 填入后运行,你会直观看到:

  • 零样本 可能直接给出正确答案,但缺乏解释。
  • 少样本 模型会模仿示例的格式,输出更结构化。
  • 思维链 则会完整展示推理步骤,答案更可信。

对于 Agent 开发,合理组合角色设定、示例和思维链模式,能让你的智能体输出既稳定又富有逻辑。这也是提示词工程在构建可靠 AI 应用中的核心价值。

总结

提示词工程是 AI Agent 开发者必备的软技能。它既像科学一样有章可循(任务分解、格式约束),又像艺术一样依赖经验和直觉(措辞的微妙变化可能产生截然不同的结果)。掌握 IO、CoT、CoT-SC 和 ToT 等思维流模式,并遵循明确、具体、分步、示例等撰写原则,你将能够稳定地激发出大模型的强大潜力,为后续构建复杂智能体打下坚实基础。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐