第二节
Prompt 学习笔记:如何通过「加约束」让 AI 回答更有用
注:第一节为介绍 AI,因此略去
本节课的核心只有一句话:
好的 Prompt = 有角色 + 有上下文 + 有清晰约束
也就是 3C 原则:Context+constraints++Clarfy,也就是:背景+限制+清晰
下面我按本节课的课程结构,把内容拆开讲清楚。
Adding Constraints(为什么要加约束)
很多时候, AI 回答"太泛""不落地",问题往往不在 AI,而在 Prompt 太宽泛 。会让 AI 产生所谓的幻觉
Lesson(核心结论)
👉 Adding constraints improves relevance
加约束,能显著提升回答的相关性和可用性。
Basic Constraint(没有约束的 Prompt)
比如你想要,开车从SFO到NY,并且中间还想看看沿途的景点,这个时候你怎么提问呢?
Prompt:
How long by car from SFO to New York?
(从旧金山到纽约坐车需要多久?)
问题:
-
AI 只能给你一个纯时间估算
-
对真实出行决策帮助不大
Improved Constraint(加了约束的 Prompt)
Improved Prompt:
List sightseeing spots en route by car, but include only those with ≤1 hour detour.
列出沿途适合自驾游的景点,但仅限绕行不超过1小时的景点。
变化点:
-
不只是"多远"
-
明确了:
-
你是自驾
-
你想顺路看景点
-
绕路不能超过 1 小时
-
结果:
-
AI 给你的不再是"冷知识"
-
而是可直接用于规划行程的建议
The 3C Prompting Formula(三要素公式)
这节课给了一个非常好记的公式:3C Prompting
1️⃣ Context(上下文)
告诉 AI:
-
你是谁
-
你在什么场景
-
你要解决什么问题
示例:
You are a QA Engineer testing a banking app.
2️⃣ Constraints(约束)
告诉 AI:
-
做什么
-
不做什么
-
关注重点
-
忽略无关内容
示例:
-
只关注安全问题
-
只看 SQL 注入
-
只看密码存储
3️⃣ Clarity(清晰度 / 输出要求)
明确:
-
输出格式
-
结构
-
是否需要表格、列表、步骤
示例:
-
用 bullet points
-
标注行号
-
不要长段落
📌 一句话总结 3C:
Context 决定方向,Constraints 限定范围,Clarity 决定可用性
QA Analogy:差 Prompt vs 好 Prompt
这一部分用 QA 的例子讲得非常直观。
❌ Poor Prompt(差的 Prompt)
Find bugs in my login code.
问题:
-
没角色
-
没重点
-
没输出格式
-
AI 只能"随便说说"
✅ Better Prompt(好的 Prompt)
You are a QA Engineer reviewing my Python login code for security vulnerabilities.
你是一名质量保证工程师,正在审查我的Python登录代码是否存在安全漏洞。
Focus on SQL injection and password storage.
专注于SQL注入和密码存储。
Return bullet points with issue descriptions and line numbers.
返回带有问题描述和行号的要点列表。
为什么这个好?
它同时满足了:
-
角色:QA Engineer
-
任务:review login code
-
约束:只看安全、只看两类问题
-
输出:要点列表 + 行号
Lesson(重要结论)
Role definition + constraints + clarity = Actionable results
这句话非常重要,几乎可以当成 Prompt 编写的"公式"。
Refinement Steps(一步步优化 Prompt)
课程里给了一套Prompt 逐步精炼方法,非常适合日常工作。
Step 1:加角色
You are a QA Engineer working on an e-commerce site.
Step 2:明确功能范围
Write test cases for:
-
valid login
-
invalid login
-
forgot password
Step 3:加约束条件
Include at least 2 negative scenarios for each feature.
Cover browser compatibility (Chrome, Firefox).
Step 4:规定输出格式
Provide results in a table with columns:
Test Case ID | Title | Steps | Expected Result
Step 5:加优先级
Mark each test case with priority: High / Medium / Low.
Few-Shot Prompting(少样本示例法)
定义
Few-Shot Prompting:
在提问前,先给 AI 看几个你想要的"示例答案"。
AI 会自动模仿:
-
结构
-
风格
-
粒度
通用模板
You are a QA Engineer.
Here are 2 example test cases in the format I want:Example 1\], \[Example 2\]. Now create similar test cases for \[new scenario\].
QA 示例
-
Example 1:Valid login test case
-
前置条件
-
步骤
-
预期结果
-
-
Example 2:Invalid login test case
- 同样的结构
👉 然后让 AI:
用完全相同的结构生成新的测试用例
总结
如果只记住三点就够了:
1️⃣ 不要直接提需求,要先定角色
2️⃣ 一定要加约束,否则 AI 只能泛泛而谈
3️⃣ 用格式 + 示例,能把 AI 输出变成"可直接用的交付物"