64
Prompt 工程
Prompt Engineering:让模型输出更稳定
你现在可能会困惑什么
“我写了很长 prompt,为什么效果还是不稳?”
长度不等于质量,结构化和可验证才是关键。
一句话定义
Prompt Engineering 是把任务拆成 role/task/context/constraints/output 的结构化指令。
生活类比
给实习生明确模板和标准,结果会比“自由发挥”稳定得多。
最小可运行例子
Role: Python engineer
Task: 清洗 email 列表
Constraints: 去重、保序、非法项单独返回
Output: JSON(valid, invalid, count)
课堂小测(5 分钟)
- 把弱 prompt 改成结构化 prompt。
- 增加异常场景约束。
- 规定固定输出 schema。
课堂小测参考答案与判分点
- 参考答案方向:能写出可运行代码,并覆盖题目中的核心条件与边界输入。
- 判分点 1(正确性):主流程结果正确,关键分支可执行。
- 判分点 2(可读性):变量命名清晰,结构不过度嵌套。
- 判分点 3(健壮性):对空值、类型错误或异常输入有基础保护。
迁移任务(课后)
完成“订单号提取+脱敏”的 prompt 设计并迭代 2 轮。
本节验收标准
你能独立做到:
- 写结构化 prompt
- 约束输出格式
- 通过迭代提升稳定性
常见报错与调试步骤(新手版)
- 报错看不懂:先读最后一行错误类型(如
TypeError、NameError),再回到对应代码行定位。 - 不确定变量值:在关键位置临时
print(变量, type(变量)),先确认数据是否符合预期。 - 改了代码却没生效:确认文件已保存、运行的是当前文件、终端环境(venv)是否正确。
常见误区
- 误区:prompt 越长越好。
- 正解:重点是结构清晰和可检验。