Week 1 导读:提示工程(Prompt Engineering)

March 15, 2026 · View on GitHub

← 本周导航 · 模块首页 · 术语表

Week 1 导读:提示工程(Prompt Engineering)

这周学什么:学习 6 种与 AI 对话的方法,每种方法解决不同类型的问题。


核心概念——用生活场景来理解

少样本提示(Few-shot Prompting)

就像教新员工做事——你不是讲一堆理论,而是直接给几个例子:"这种邮件这样回,那种邮件那样回"。AI 也一样,给它几个输入-输出的例子,它就能推断出规律。

比如你想让 AI 把口语化的句子改写成正式表达,与其解释一堆"正式文体的特征",不如直接给三个例子。AI 看了之后,自然就懂你要什么风格了。

思维链(Chain-of-Thought, CoT)

类似让人"把解题过程写出来"。不只要答案,还要推理步骤。数学老师说的"写过程"就是这个道理。

为什么有用?因为当 AI 被要求一步一步思考时,它犯的错误会明显减少——就像你做数学题,心算容易出错,但在草稿纸上一步步写出来就准确多了。

工具调用(Tool Calling)

AI 自己算数不靠谱,但它可以"打电话"叫计算器来帮忙。Tool Calling 就是让 AI 知道有哪些外部工具可以用,并在需要时自动调用。

这个概念非常重要。AI 不是无所不能的,但它可以很聪明地判断"这件事我自己做不好,应该调用某个工具来完成"。就像一个优秀的项目经理——他不需要自己写代码、做设计、搞运维,但他知道什么时候该找谁来做什么。

自一致性(Self-Consistency)

同一个问题问 AI 多次,取大多数一致的答案。就像问路时多问几个人,大部分人指的方向更可靠。

这个方法特别适合那些有明确正确答案但 AI 可能"算错"的场景。多跑几次,做个"投票",准确率就上去了。代价是需要多花一些 API 调用的费用和时间。

RAG(检索增强生成, Retrieval-Augmented Generation)

AI 的知识有截止日期,RAG 就像给它配了一个实时更新的参考资料库。先检索相关信息,再基于这些信息回答。

举个例子:你问 AI "我们公司上周的销售数据是多少",它当然不知道。但如果你先从数据库里把相关数据检索出来,塞进提示里,AI 就能基于这些数据给你一个有用的分析。这就是 RAG 的核心思路——先"取"后"答"。

反思(Reflexion)

让 AI 检查自己的答案并改进。类似写完文章后的自我校对——先写一遍,再回头看哪里有问题,修改后再提交。

这是一个很朴素但有效的技巧。AI 第一次给的答案未必是最好的,但如果你让它回头审视自己的回答,它往往能发现问题并给出更好的版本。在 Agentic Coding 中,这个机制会被大量使用。


术语速查

术语简短定义
Prompt(提示)你给 AI 的输入文本,包括指令、上下文和问题
Few-shot在提示中提供少量示例来引导 AI 的输出格式和风格
Zero-shot不给示例,直接提问
Chain-of-Thought (CoT)引导 AI 逐步推理而非直接给出答案
Tool CallingAI 判断需要外部工具并自动调用的能力
Self-Consistency多次采样同一问题,取一致性最高的答案
RAG检索外部信息并注入提示中,让 AI 基于最新/专有信息回答
ReflexionAI 审视自己的输出并迭代改进
Temperature(温度)控制 AI 回答随机性的参数,越高越随机
Token(令牌)AI 处理文本的基本单位,大约 3/4 个英文单词为一个 token

与主题线的连接

为什么从提示工程开始?因为 Agentic Coding 的核心就是与 AI 有效沟通。不管你未来用什么工具——Cursor、Claude Code、Warp——底层都是在写"提示"。掌握了这些技术,你就掌握了与 AI 协作的基本语言。

你会发现,后面每一周的内容都建立在这些基础之上:Week 2 用这些技术让 AI 帮你写代码,Week 3 的 MCP 本质上是 Tool Calling 的标准化扩展,Week 4 的 Agent 就是把 CoT + Tool Calling + Reflexion 组合在一起形成的自主循环。


任务导读

assignment.md 中包含 6 个实践任务,每个对应一种提示技术。下面是每个任务的简要说明和提示。

任务 1 — Few-shot Prompting: 你需要设计一个包含示例的提示,让 AI 完成特定的文本转换任务。提示:想想什么任务用"给例子"比"写说明"更高效。

任务 2 — Chain-of-Thought: 给 AI 一个需要多步推理的问题,对比"直接回答"和"逐步推理"的效果差异。提示:数学题、逻辑题是展示 CoT 威力的好场景。

任务 3 — Tool Calling: 让 AI 在需要时调用外部工具(如计算器、搜索引擎)。提示:关注的重点不是工具本身,而是 AI 如何"决定"什么时候该调用工具。

任务 4 — Self-Consistency: 对同一个问题多次采样,观察答案的一致性。提示:试试用不同的 temperature 值,看看对一致性有什么影响。

任务 5 — RAG: 实现一个简单的检索-生成流程。提示:核心步骤是"检索相关文档片段 → 注入提示 → 让 AI 基于这些信息回答"。

任务 6 — Reflexion: 让 AI 生成答案后自我评估并改进。提示:关键是设计好"评估标准"——AI 需要知道从哪些维度检查自己的回答。


环境准备

在开始练习之前,确保完成以下准备工作。

1. 安装项目依赖

按照仓库根目录的说明安装 Python 环境和依赖(详见根目录 README)。

2. 安装 Ollama

Ollama 是一个在本地运行大语言模型的工具。

  • macOS (Homebrew):
    brew install --cask ollama
    ollama serve
    
  • Linux:
    curl -fsSL https://ollama.com/install.sh | sh
    
  • Windows: 从 ollama.com/download 下载安装。

验证安装:

ollama -v

3. 下载模型

首次使用需要下载模型(只需做一次):

ollama run mistral-nemo:12b
ollama run llama3.1:8b

练习任务

本周有 6 个练习,每个对应一个 Python 文件。你需要在每个文件中找到 TODO 标记的位置,设计提示词(Prompt)让模型完成任务。

技术文件要做什么
少样本提示 (Few-shot)k_shot_prompting.py给模型几个示例,让它学会执行特定任务
思维链 (Chain-of-Thought)chain_of_thought.py让模型展示推理过程,一步步得出答案
工具调用 (Tool Calling)tool_calling.py让模型知道有哪些工具可用,并在需要时调用
自一致性 (Self-Consistency)self_consistency_prompting.py多次采样取最一致的答案
RAG (检索增强生成)rag.py先检索相关信息,再基于信息回答
反思 (Reflexion)reflexion.py让模型检查并改进自己的输出

每个任务的步骤

  1. 打开对应的 .py 文件
  2. 阅读文件顶部的任务说明
  3. 找到所有 TODO 标记的位置
  4. 设计你的提示词(这是唯一需要修改的部分——不要修改模型设置)
  5. 运行脚本,观察结果
  6. 反复迭代提示词,直到测试通过
  7. 保存你最终使用的提示词和输出结果

重要提示:完成后请仔细检查,确保所有 TODO 都已处理。


自检清单

  • 理解每种提示技术的原理和适用场景
  • 能用自己的话解释 Few-shot 和 CoT 的区别
  • 完成至少 4 种技术的实践练习
  • 能说出什么时候该用 RAG vs. 直接提示
  • 理解 Temperature 参数对 AI 输出的影响
  • 能把"提示工程"的核心思想用一句话说清楚

开始 Week 2 →