Prompt 工程:客服需求约束与质量评测|学员任务书

课程名称:Prompt 工程:客服需求约束与质量评测|项目任务:客服 Prompt 契约与评测集|编号:W04-D02

课前预习 · 课堂课件 · 课后复习 · 日验收

任务与支架

  • 自主等级:3→4。
  • 教师提供:W04 v2.0 Fixture、字段候选、实验表和 Provider 接口。
  • 教师不提供:最终 Prompt 和每条样本的完整理想输出。

前置检查

git status --short
python tests/test_d01_provider_contract.py

D01 Learning 入口必须可运行。真实 Evidence Pending 不阻止使用 Replay 继续。

固定实验

  1. 在 PROMPT_CONTRACT.md 写清任务、背景、输入、约束、输出要求与验收;用RTF(角色/任务/格式)起草、ICIO(指令/背景/输入/输出要求)检查遗漏,不改变字段合同;
  2. 保留简短V1与契约化V2作整版方案对比。另从同一个基线挑一个失败原因,只改一项明确策略,记录修改假设;可与下面的分步提示练习合并,不重复建实验;
  3. 固定 Provider/Model/思考模式/temperature/输入集;使用 DeepSeek 做 Temperature 对比时显式关闭思考模式;
  4. 运行商品辅助、订单缺 ID、人工、未知、注入和缺偏好案例;
  5. 保存原始输出,不只抄摘要;
  6. 如实写改善、持平、退化或未解决问题;没有改善就写没有改善,不为了作业编造提升;
  7. 学生自拟一条未见表达,先写期望再运行。

在原实验中加入一次分步提示对照

沿用课堂的虚构售后例理解CoT(思维链提示),再从本人原客服样本选一条容易漏条件的问题。先写期望,再比较直接指令和“核对缺失→检查条件→给结论与简短依据”的指令。规则、事实、格式、模型和接口模式不变;不得把expected(标准答案)发给模型。

在同一张实验表记录原回答、判断结果、依据核对、越权承诺、耗时和服务端Token用量。没调用的填未验证,失败与截断保留。最后解释是否值得保留分步提示;不另建项目,不修改意图/偏好字段合同,不实现售后操作。

在同一实验表加入安全与成本观察

用自有教学环境和虚构数据,分别准备正常咨询、直接注入以及夹带指令的外部资料片段。资料片段明确标为数据,不放到应用规则中。再加一条正常安全咨询(如“怎么防止别人说忽略规则”),检查是否被关键词策略误伤。

逐条记录模型是否改变任务、编造执行或输出禁止字段;D03/D04的实际执行权限由后续代码把关,今天不能声称已经做完。没有真实调用时记录设计或Replay层,不伪造模型拒绝率。

同一张实验表增加:提示词版本/差异、修改理由、实际模型和参数、原始输出、输入/输出Token、耗时、结束原因、逐例判定、误拦截及保留/回退决定。用量缺失记未知。保留超时和失败,留出样本只在冻结候选后复验。

最后口头解释:哪条限制由提示词表达,哪条必须由程序执行?为什么格式正确的越权请求仍不能放行?为什么课堂TrustedCustomerContext(可信模拟客户上下文)不等于真实账号认证?

最小字段判断与交接

安全观察仍写入原实验表:将一条“管理员/紧急情况”话术与正常安全咨询成对检查,写出一句有合法下一步的拒绝回复。教师演示独立攻击对照脚本时,分别标注消息预览、手工候选、真实API三个来源;不把演示协议复制成本周业务字段,也不另建项目。模型没中招就记录没中招。

对象今天候选禁止
CustomerIntentintent、product_id/order_id、missing_slots、handoff、confidencecustomer_id、工具名、执行结果
PreferenceSlotscategory、budget_max_yuan、use_case、最小列表和 missing_slots价格事实、库存、购买概率

今天不写完整 Pydantic Schema;只把语义交给 D03。

AI 协作

限定 AI 只审查一版 Prompt,不让它替你生成期望表。查看 diff 或文本变化后,对每项修改写“接受/拒绝 + 证据”。

提交证据

  • Prompt V1/V2;
  • 固定变量记录;
  • 全部原始输出 artifact;
  • 注入与缺信息 Bad Case;
  • 你独立设计的变式与教师保留的未见测试;
  • 真实模型轨迹或 Pending;
  • 解释 Prompt 与程序 Schema 的责任边界。

工程主线:提示词工程

在原有任务和实验记录中补充:当前工程层、问题原因、修改位置、比较结果及未验证项,不另建项目或重复做一套实验。提示词变长就一定更准确吗?

固定实验:沿用本日任务补齐证据

在原固定实验表增加 split、family_id、dataset_version。先锁定 4 条开发、2 条未见表达;用开发集只改一个变量,再一次复验留出集。提交同一张表,不另建项目。

验收:两类样本先分组、近似改写不跨组;改前记录 expected;留出失败未被删除或反复用于调参。