微软生成式 AI 教材选编:从提示到 RAG

提示工程基础:把“帮我写一下”变成可重复的教学任务

用完整提示、少样本例子和对照测试制作有资料依据的短讲义。

本文目录 · 7

本课选编微软《Generative AI for Beginners》第 4 章,将提示构造、示例学习和迭代验证串成一项连续练习:为指定学生设计一份有资料依据的短讲义。它承接上一课的生成机制,不要求写代码。你需要一个可用的文字对话工具、下方提供的虚构教学笔记,以及用于记录结果的文档。

学习目标是能解释提示里的不同部分各起什么作用,完成一组修改前后的对照,并通过测试发现遗漏与编造。所有输出都是教学参考,不是本次实测成绩;原教材中的旧模型名称和界面不作为当前产品操作指南。

微软原教材的提示工程知识图:从核心概念、提示构造到示例与迭代验证;原图署名 Nitya查看原图

图中保留了原教材当时的模型名称与高级方法,它是一张课程知识地图,不是当前模型推荐表。本课重点使用“提示构造、示例、验证”三个区域;也不要求模型公开内部思考过程。

1. 先运行一个容易失败的基线

下面这条提示非常常见:

帮我写一份关于电子表格的讲义,要通俗一点。

问题不在于它短,而在于缺少决定答案的条件。面向小学生还是职场新人?讲公式还是筛选?多长?哪些资料可以用?是否可以加入练习?模型只好自行填空。它可能写出一篇完整文章,但这不等于符合你的课堂。

先不要修改,保存一份回答作为基线,再写出你真正需要的标准:“成年人第一次使用表格;只讲行、列和单元格;约 200 字;一个例子;最后一道练习;只依据给定笔记。”这个动作很重要:如果先看了漂亮答案再决定标准,你容易迁就结果,而不是检验需求。

2. 给模型的内容不全是指令

微软教材把提示构造拆成任务指令、主要内容,以及影响回答的辅助内容。主要内容可能是待处理资料,也可能是示例;辅助内容可以是读者背景、格式或优先级。实际操作中,可用清晰小标题把它们分开。

把下面这份完整提示复制到一个新对话:

任务:根据教学笔记,写一份给成年初学者看的电子表格短讲义。
读者:没有编程经验,第一次接触行、列、单元格。
范围:只解释行、列、单元格及其定位,不扩展到函数和图表。
资料:
行是横向排列的一组单元格,通常用数字标识。
列是纵向排列的一组单元格,通常用字母标识。
单元格位于一行与一列的交叉位置。
例如 B3 表示 B 列与第 3 行交叉的单元格。
格式:先写不超过 200 字的解释,再给一道定位练习,最后给答案。
约束:概念以资料为准;可以新增用于理解的简单例子,但不得增加课程承诺。

一种合格的教学输出是:

可以把表格看成有编号的格子。横向的一排叫行,通常用数字标识;
纵向的一列叫列,通常用字母标识。行和列交叉的小格叫单元格。
B3 就是 B 列与第 3 行交叉的格子,先看列字母,再找行数字。

练习:C5 在哪一列、哪一行?
答案:C 列,第 5 行。

注意“先看列再找行”是定位说明,不是新增教材事实;“学完保证精通所有办公软件”则是毫无依据的承诺。限制外部事实不等于禁止一切有助于解释的表达,应说清允许新增哪类例子。

3. 用示例教会模型输出习惯

原教材用翻译与体育分类介绍 zero-shot、one-shot 和 few-shot。它们分别指不提供示例、提供一个示例、提供少量示例。零样本并不是没有提示,而是只有任务说明,没有示范输入输出。

例如原课把“球员打出 ace”对应网球,把“球员打出 six”对应板球,再让模型判断“球员完成 slam-dunk”。这些示例传达的是分类关系,预期最后归入篮球。英文体育语境本身是前提,不能因为一个词在别处也有用法,就把分类规则当成不受语境影响的真理。

在教学讲义里,示例可以帮助固定表达层次。假设你希望每个概念都按“定义—例子—误区”呈现,可以在刚才的提示后增加:

请按以下示例的结构解释“单元格”,不要复制示例的事实内容。
示例概念:列
定义:表格中纵向排列的一组单元格。
例子:B 列是一整列,不是单独一个格子。
误区:不要把列字母 B 当作某一个单元格的完整位置。

需要解释的概念:单元格

教学参考答案:定义是一行与一列的交叉位置;例子是 B3;误区是不要把 B3 当成整列或整行。与直接说“写清楚”相比,这个示例让格式可以被观察和检查。

示例也会带来偏差。如果所有示例都是正确答案,模型不一定知道信息不足时应怎样处理。再加入一个缺失情况:“题目只写在 B 列,请回答还缺少行号,无法定位唯一单元格。”这样才能表达完整边界。不要把待测试的题目答案原样放进示例里,否则测试只是在测抄写。

4. 留出“不知道”的出口

原课有一个很有辨识度的反例:让模型为“2076 年火星战争”编写教案。这个设定不应被写成已发生的真实历史。模型可能生成相当完整的背景、战役和影响,正因为文本像教材,读者更容易忽略证据缺失。

可以把任务改写为两个明确分支:

请先判断资料是否提供了真实事件的可核验依据。
若没有,不要编写真实历史教案,说明无法确认。
若这是虚构写作任务,请先明确标注“虚构世界设定”,再提出创作建议。
待处理题目:为 2076 年火星战争设计一节历史课。

合格输出应指出无法把它当成已证实历史,并询问是否要做虚构创作。这里的改变不是要求模型语气更谨慎,而是定义了信息不足时的合法产物。模型仍可能出错,所以这只是降低风险的设计,不是事实核查的替代品。

5. 一次只改一个影响因素

现在比较三个版本:基线“写通俗讲义”;增加资料、读者与格式的版本;再增加示例和缺失分支的版本。让三个版本处理相同的三道题:解释 B3、定位只有列号的格子、根据含有矛盾定义的笔记出题。

人工评价时,每个结果都按“概念正确、格式符合、没有额外承诺、遇到不足能指出”四项记录通过或失败。不用急着计算漂亮的总分。先查看失败集中在哪:如果只有格式错,优化示例;如果资料本身冲突,应补上“发现冲突先指出,不自行选择”的规则;如果答错概念,需要核对资料和模型能力。

不要一次同时更换模型、换材料、改十条指令。这样即使结果变好,也不知道哪一步值得保留。给提示写一个简单版本号,记录改变了什么与失败案例,就能把个人经验逐渐变成团队能复用的模板。

6. 练习与答案解析

练习一:把“给我讲讲筛选”改成完整提示。至少写出读者、资料、输出格式和无法回答时的处理。参考方向是:输入三条筛选规则,让模型为初学者写一个例子,并明确不能假设筛选会删除原始数据。只增加“你是顶级专家”不算完成,因为它没有提供事实边界。

练习二:给少样本提示增加一个反例。输入“D”,要求定位单元格。参考答案是“只能确定 D 列,缺少行号”,而不是随便给出 D1。这个练习检验示例是否覆盖信息不足,而不是检验措辞是否优美。

练习三:你加了更多说明,答案反而变差,先检查什么?先查指令冲突,例如既要求“严格只写三行”,又要求“每个概念分别给定义、例子、误区”,可能无法同时满足。删掉重复和冲突,比继续叠加“务必、必须、绝对”更有效。

本课结束时,你应得到一条完整提示、三个对照结果和一份失败原因记录。下一课把资料从手工粘贴扩展成“先检索,再回答”,理解为什么 RAG 的难点不仅在生成文字,也在取对材料。

来源说明:微软《Generative AI for Beginners》第 4 章,中文选编与案例改写;原仓库 MIT 许可,知识图原署名 Nitya。保留原课提示构造、少样本体育分类、虚构火星战争和迭代验证教学内容;表格讲义练习为新增。资料核对日期为 2026 年 9 月 4 日,未运行原 Notebook 或真实模型调用。

原教材许可声明

MIT License

Copyright (c) Microsoft Corporation.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE

文字来源:微软《Generative AI for Beginners》;中文选编及补充练习;MIT 许可;非官方认证译本