公司动态

让 AI 既陪聊又改错,我用了一个双 Prompt 套路

📅 2026/7/27 16:48:35
让 AI 既陪聊又改错,我用了一个双 Prompt 套路
本文是「AI 口语陪练从想法到赚钱」连载第 4 篇。上回说到我们用「轻函数 LLM API 对象存储」搭好了单人可维护的极简架构。这一篇把整个产品的灵魂——核心纠错能力——真正接进去。⚠️ 合规声明本产品定位为AI 辅助练习非替代真人教学不承诺任何学习效果。把「陪聊」和「改错」塞进同一个 Prompt我的内测纠错准确率只有 61%示意拆成两个独立调用后直接冲到 92%示意。一个反直觉的事实让 AI 同时干两件事它两件都干不好——这就是我花两周才认清的血泪坑。一、为什么必须是「双 Prompt」而不是「超级 Prompt」上线前我天真地写过一个 800 字的「全能 Prompt」既要扮演外教、又要控制难度、还要逐句纠错、输出格式还得规范。结果是三边都塌人设漂移聊到第 6 轮美国外教 Emma 开始用中文解释语法沉浸感全无。纠错遗漏注意力被聊天占走明显的时态错误漏标率约 35%示意。格式失控偶发输出一大段 Markdown 议论文前端直接渲染爆炸。结论对话流和纠错流是两种完全不同的任务范式——前者要发散、有人味后者要收敛、像编译器。拆开各自才能做到极致。双 Prompt 架构一览用户语句 ──┬── 角色 Prompt外教人设 场景 难度── 自然回话 └── 纠错 Prompt错误类型 正确句 JSON 输出── 纠错报告两个调用并行发出互不阻塞——这也顺手解决了上篇说的「一次调用卡死全崩」的超时问题。二、角色 Prompt让外教「像个人」的 4 个关键位角色 Prompt 负责「陪聊」核心是四个槽位完整模板见文末交付物人设锚点姓名、国籍、口头禅。有具体口头禅如 You know what?的人设用户平均对话轮数从 4.2 涨到 7.8示意。场景约束点咖啡 / 面试 / 旅行三选一禁止跳出场景。难度阀门按 CEFR 等级A2/B1/B2限制词汇量和句长这一条要放在 Prompt 最后——放前面会被后文稀释实测遵循率差 20%示意。禁令清单不解释语法、不切中文、单次回复 ≤3 句——把「改错」的活儿明确划走。你是 Emma28 岁美国外教口头禅 You know what?。 当前场景咖啡店点单你是店员。 规则只用英语每次回复不超过 3 句不纠正、不解释语法 自然地把对话往点单流程推进。 用户等级B1 —— 词汇控制在 3000 常用词内句长不超过 15 词。三、纠错 Prompt把 LLM 当「编译器」用纠错 Prompt 的设计哲学正好相反零人味、强格式、只输出结构化结果。你是英语语法检查器。对输入句子输出 JSON仅 JSON无任何其他文字 { has_error: bool, errors: [{ type: 时态|主谓一致|用词|冠词|语序|其他, original: 错误片段, corrected: 修正片段, note: ≤15字中文提示 }], better_version: 整句更地道的说法 } 若无错误errors 为空数组better_version 仍然给出。血泪坑不加「仅 JSON无任何其他文字」这句约束大约每 20 次调用就有 1 次示意在 JSON 前后附赠一段热情洋溢的解释前端JSON.parse直接报错。加了 schema 约束 解析失败自动重试 1 次之后线上解析失败率降到 0.3% 以下示意。工程上再补两道保险温度调低纠错调用 temperature0.2对话调用 0.8各取所需。降级策略纠错调用失败时只返回对话结果用户无感知报告标记「本句未检查」。四、可复现案例一段真实对话的前后对比场景「咖啡店点单」B1 难度用户原句 vs 系统输出内测真实语料改写人名已脱敏用户原句纠错报告摘要更地道说法I want buy a coffee.缺 to语序/不定式Id like to get a coffee, please.She dont have ice today?主谓一致 dont→doesntDont you have iced drinks today?How much I should pay?语序疑问句倒装How much is it?同一时刻角色 Prompt 输出的是自然的店员回话You know what? Our iced latte is on sale today!——用户先获得「对话没被打断」的爽感纠错报告在侧边栏静静躺着想看再看。这正是第 2 篇说的「温和可选」纠错原则在技术层的落地。前后对比单 Prompt vs 双 Prompt内测 50 人示意指标单 Prompt双 Prompt纠错捕获率61%92%人设漂移率10 轮内31%4%输出格式错误率5.2%0.3%平均响应时间8.4s串行3.9s并行五、场景模式3 套预设就够了别贪多我一开始设计了 12 个场景数据狠狠打脸87% 的对话集中在 3 个场景示意——点咖啡破冰首选、面试付费主力、旅行周末高峰。其余 9 个场景加起来不到 13%但维护成本一分不少。场景用 JSON 预设管理新增场景 加一个 JSON 对象不改代码{ id: coffee_shop, name: 咖啡店点单, role: 店员, opening: Hi there! What can I get for you today?, goal: 完成一次点单含尺寸、温度、支付, vocab_hints: [latte, to go, medium, receipt], levels: [A2, B1, B2] }六、今天就能做的 3 件事抄走双 Prompt 模板把上文的角色 Prompt 和纠错 Prompt 复制进你常用的 LLM Playground用自己的英语句子跑 10 轮感受「并行双流」的输出结构。写一个场景 JSON参照coffee_shop的结构为你自己的目标场景如「酒店入住」写一份预设重点填好goal和vocab_hints。做一次格式压测连续调用纠错 Prompt 20 次统计非法 JSON 出现次数如果 0给你的 Prompt 补上「仅 JSON」禁令和重试逻辑。下篇预告核心能力跑通了第 5 篇我们把产品真正放到网上开始收钱——最简收款方案怎么选、第一笔 9 块钱怎么来的以及语言学习类产品绝对不能碰的合规红线。本系列产品为「AI 辅助练习」工具非替代真人教学不构成任何学习效果承诺。文中未标注来源的数据均为示意数据用于说明方法论。