第 05 章:提示词工程进阶:上下文与结构化

第 05 章:提示词工程进阶:上下文与结构化

核心观点:提示词工程(Prompt Engineering)不是玄学,而是一门用自然语言进行编程的学科。它的核心在于管理模型的”注意力”和规范”输出格式”。

1. 引言:别再把 AI 当许愿池

很多人的 Prompt 是这样的:”帮我写个文案,要火。”
这是在许愿,不是在工程开发。
如果结果不好,不要怪 AI 笨,是你给的指令不够清晰。
大模型是一个概率预测机器。你的每一个字,都在改变下一个字出现的概率分布。
进阶 Prompt 的目标,就是最大化输出符合你预期的概率。

2. 核心概念:上下文学习 (In-Context Learning)

2.1 给例子,别只给定义

LLM 具备一种神奇的能力:In-Context Learning (ICL)
它不需要微调权重,只要你在 Prompt 里给它几个例子(Few-Shot),它就能照猫画虎,瞬间学会新任务。

💡 比喻
想象一个天才实习生,但他是个”空降兵”,完全不懂你公司的黑话。

  • Zero-Shot (零样本):直接命令”去写个日报”。(他可能会写出一篇散文)
  • Few-Shot (少样本):扔给他过去 3 天的日报范文,”照着这个格式写”。(他立马就懂了)
    Few-Shot 学习

3. 技术解析:思维链与结构化

3.1 Chain of Thought (CoT)

当任务复杂时(如数学推理、逻辑分析),直接问答案容易出错。
强制模型“把思考过程写出来”,准确率会飙升。

  • 技巧:在 Prompt 结尾加上 Let's think step by step.(让我们一步步思考)。
  • 原理:让模型生成更多的计算步骤,实际上是增加了推理时的计算量(Compute-time compute)。

思维链推理

3.2 结构化输出 (JSON Mode)

在工程落地中,我们不想要”废话”,我们想要机器能读的 JSON

  • 错误示范

提取里面的名字和年龄。

  • 正确示范

你是一个数据提取器。请提取文本中的实体,并严格按照以下 JSON 格式输出,不要包含任何 Markdown 标记:

1
2
3
4
{
 "name": "string",
 "age": "number"
}

现在的主流模型(如 GPT-4o, DeepSeek)都支持 Native JSON Mode,开启后能保证输出 100% 符合 JSON 语法。


4. 工业实战:Prompt 优化框架

一个优秀的 System Prompt 应该包含以下模块(BROKE 框架)。

模块 说明 示例
B - Background 背景与角色设定 “你是一个资深的 Python 后端架构师…”
R - Role/Rules 具体的约束条件 “只使用 standard library,代码必须有注释…”
O - Output 输出格式要求 “输出 Markdown 格式,包含三个章节…”
K - Knowledge 必要的参考资料 (RAG 检索到的 Context 放在这里)
E - Examples 少样本示例 “User: 1+1? AI: 2. User: 2+2? AI: 4.”

4.2 避免”负面提示”

  • Bad: “不要写废话。” (模型往往会忽略”不要”,反而关注了”废话”)
  • Good: “请保持回答简练,直击要点。” (正面指令通常更有效)

5. 总结与预告

  • 本章总结
    • ICL (Few-Shot) 是提升效果最快的方法。
    • CoT (思维链) 能显著提升逻辑推理能力。
    • 结构化输出 (JSON) 是大模型接入传统软件系统的桥梁。
  • 下章预告
    现在模型能听懂话,也能输出 JSON 了。但它还是被困在对话框里。怎么让它去操作数据库、发邮件、写代码?下一章《Agent 架构:Function Calling 与规划》,我们将给 AI 装上”双手”。
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×