作者丨正在学AI的小泉同学
假设你要做一个手机流量套餐客服。
产品很简单,一共有 4 个套餐:
经济套餐:50 元,10G。
畅游套餐:180 元,100G。
无限套餐:300 元,1000G。
校园套餐:150 元,200G,仅限在校生。
用户来了以后,会问各种问题:
“有没有便宜的?”
“流量大的套餐有什么?”
“200 元以内的有吗?”
“我要无限量那个。”
你要让 AI 客服推荐合适套餐。
听起来像一个普通客服问题。
但里面藏着一个关键难点:
用户说的是自然语言,系统需要的是结构化信息。
第一步:先让 AI 理解用户意图
用户说:
“有没有便宜的套餐?”
人一看就懂。
他的真实意思是:
“按价格从低到高推荐。”
但系统不懂“便宜”这个词。
系统需要的是类似这样的结构:
“sort = price ascend”
这一步,叫 NLU。
也就是自然语言理解。
我们可以先用 Prompt 实现它。
比如:
“你的任务是识别用户对手机流量套餐产品的选择条件。每种套餐包含名称、月费价格、月流量。请根据用户输入,识别用户在这些属性上的倾向。”
这时候 AI 能大概理解。
但还不够。
因为它可能输出一段自然语言解释。
而程序读不懂自然语言解释。
所以我们要继续加要求。
第二步:让 AI 输出 JSON
我们可以告诉 AI:
请以 JSON 格式输出。
这一步很关键。
因为 JSON 是程序能理解的格式。
但只说“输出 JSON”也不够。
你还要定义字段。
比如:
name 字段只能是经济套餐、畅游套餐、无限套餐、校园套餐之一。
price 字段包含 operator 和 value。
data 字段包含 operator 和 value。
sort 字段包含 ordering 和 value。
你看,这就是 Prompt 的工程化。
不是一句“帮我理解用户”。
而是把输出结构提前设计好。
这样 AI 的结果才能进入后续系统。
第三步:用例子让输出更稳定
比如你给它这些例子:
“便宜的套餐”对应价格升序。
“不限流量”对应 data = 无上限。
“流量大的”对应流量降序。
“100G 以上最便宜”对应 data 大于等于 100,同时价格升序。
这些例子会让 AI 更稳定地理解用户表达。
因为用户不会按照字段说话。
用户只会按照日常语言说话。
他说“土豪套餐”,可能是在说贵的。
他说“够刷视频的”,可能是在说流量要多。
他说“别太贵”,可能是在说价格上限。
AI 的价值就在这里:
它能把模糊语言翻译成结构化意图。
但前提是你要给它清晰规则和示例。
第四步:不要猜用户没说的信息
这是客服系统里非常重要的一条。
用户说“有没有便宜的套餐”。
你不能顺手帮他猜:
“他应该想要 100G。”
“他应该不是学生。”
“他应该预算 200 元以内。”
这些都不能乱猜。
所以 Prompt 里要写清楚:
只输出用户提及的字段,不要猜测用户未直接提及的字段。
这句话看起来不起眼,但能减少很多系统错误。
尤其是客服、金融、医疗、政务这类场景。
AI 可以理解,但不能脑补。
理解是能力。
不脑补是纪律。
这套方法有什么价值?
它能让你在产品早期,用很低成本搭出一个可用原型。
不用一开始就训练模型。
不用先做复杂算法。
不用写一堆规则正则。
先用 Prompt 把核心链路跑起来。
用户输入。
AI 识别意图。
输出结构化结果。
系统根据结果查询套餐。
再生成自然语言回复。
这样一个智能客服的雏形,就出来了。
不完美,但能验证方向。
这对早期产品非常重要。
因为很多时候,你最先需要的不是一个完美系统。
而是一个能验证真实用户需求的系统。
结尾行动清单
做智能客服类产品,可以先拆成 3 步:
1.用户说了什么?
2.这句话对应什么结构化意图?
3.系统根据意图应该做什么?
Prompt 最适合解决第一步到第二步。
也就是:
把自然语言,翻译成系统能理解的语言。
这一步做好,AI 就不只是会聊天。
它开始能进入业务系统了。

