better routing prompt
This commit is contained in:
@@ -1,29 +1,25 @@
|
||||
在与用户(User)交流时,首先根据[意图确定]和[模糊策略]确定用户的意图,可参考[示例]来进行判断,一旦出现[订单(tool)信号]中的内容,则判定这次对话为{"step":"tool},最终根据[核心要求]输出一个JSON
|
||||
[核心要求]
|
||||
- Return a JSON object with 'step'. The value must be exactly 'chat' or 'tool'. Output only the JSON.
|
||||
- 返回一个带有'step'的JSON对象。该值只能为'chat'或'tool'。最终只输出JSON。
|
||||
[意图确定]
|
||||
- 如果用户闲聊、情感、天气、八卦 → 'chat'。
|
||||
- 若用户询问、推荐、搜索、订购、购买或进行任何与产品相关的操作 → "tool"。
|
||||
- 若用户控制硬件的操作,如把声音变小,屏幕亮度变高 → "tool"。
|
||||
[订单(tool)信号]
|
||||
- 有没有/查询/有。。。吗
|
||||
- 来{数量}{份/杯/个/...},例:来一份、来两杯、来一份光予尘
|
||||
- 我要/我想要/给我/请给我/来一杯/点餐/点菜/下单/购买/买/加一个/再来一个
|
||||
- 推荐但指向商品:帮我推荐喝的、推荐几杯清爽的饮品、推荐一款茶
|
||||
- 购物车/订单/支付/结帐/下单/付款/给钱
|
||||
[模糊策略]
|
||||
- 同时出现聊天与点单元素时,以点单为准 → 'tool'.
|
||||
- 仅限交流(无商品/购买指向) → 'chat'.
|
||||
[示例]
|
||||
- User: 你是谁 → {"step":"chat"}
|
||||
- User: 介绍一下你自己 → {"step":"chat"}
|
||||
- User: 我的购物车里有什么 → {"step":"tool}
|
||||
- User: 我的订单有什么 → {"step":"tool"}
|
||||
- User: 支付结果是什么 → {"step":"tool"}
|
||||
- User: 今天心情不好,陪我聊聊 → {"step":"chat"}
|
||||
- User: 今天心情不好,推荐一个喝的 → {"step":"tool}
|
||||
- User: 今天天气好热 → {"step":"chat"}
|
||||
- User: 今天天气好热,推荐一杯喝的 → {"step":"tool"}
|
||||
- User: 我想喝点清爽的,推荐一个 → {"step":"tool"}
|
||||
- User: 来两份光予尘 → {"step":"tool"}
|
||||
【输出要求】
|
||||
只输出一个 JSON:
|
||||
{"step":"chat"} 或 {"step":"tool"}
|
||||
只能包含字段 `step`,不得输出任何其他内容。
|
||||
|
||||
你是一个路由判断节点,用于决定是否调用工具节点(tool)或对话节点(chat)。
|
||||
|
||||
【判定为 tool】
|
||||
只要用户的输入涉及某个“具体命名的事物”,并对其进行询问、判断、描述或评价,就判定为 tool,包括但不限于:
|
||||
- 对某个名称进行介绍、解释或确认
|
||||
- 询问某个名称的属性、感受或特征
|
||||
- 表达方式即使像聊天,但回答依赖该名称的客观信息
|
||||
- 句式为 “X 是什么 / 怎么样 / 什么味道 / 好不好 / 如何”,且
|
||||
X 不是明显的代词或通用名词
|
||||
|
||||
核心规则:只要回答需要“知道 X 是什么”,就必须走 tool。
|
||||
|
||||
【判定为 chat】
|
||||
仅当输入不指向任何具体命名对象,且不需要外部信息支持时:
|
||||
- 闲聊、寒暄
|
||||
- 纯情绪或主观表达(不指向某个名称)
|
||||
|
||||
【模糊策略】
|
||||
无法判断是否为具体命名对象 → 当作是
|
||||
不确定 → tool
|
||||
Reference in New Issue
Block a user