fix(agent): reuse collected vehicle counts and avoid repeated questions
This commit is contained in:
@@ -14,19 +14,18 @@ steps:
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
|
||||
# 先确认完整时间,再询问缺失的机动车数量;不能从撞护栏推断只有一辆车。
|
||||
# 用户已确认:倒车撞固定物按单方机动车事故记1;时间确认后不再问数量。
|
||||
# 文件名保留历史名称,预期按最新业务边界更新。
|
||||
- input: 十分钟前我倒车撞到了护栏,没有人受伤,没有撞到非机动车或行人,我还在现场。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
|
||||
replyMatches: "我记录的时间是.*年.*月.*日.*点.*分.*这个时间对吗"
|
||||
form: {vehicle_count: 1}
|
||||
replyNotMatches: "(几辆|多少辆|什么.*车型|是否.*一辆|只有.*一辆.*吗)"
|
||||
|
||||
- input: 对
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
|
||||
# 明确数量后直接单车拍照,不再要求数量确认。
|
||||
|
||||
- input: 只有一辆汽车。
|
||||
expect:
|
||||
stageCode: "browser_addon.2000"
|
||||
form: {vehicle_count: 1}
|
||||
replyNotMatches: "(几辆|多少辆|什么.*车型|是否.*一辆|只有.*一辆.*吗|这个时间对吗)"
|
||||
|
||||
@@ -14,19 +14,18 @@ steps:
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
|
||||
# 先确认完整时间,再询问缺失的机动车数量;不能从撞护栏推断只有一辆车。
|
||||
# 用户已确认:倒车撞固定物按单方机动车事故记1;时间确认后不再问数量。
|
||||
# 文件名保留历史名称,预期按最新业务边界更新。
|
||||
- input: 十分钟前我倒车撞到了护栏,没有人受伤,没有撞到非机动车或行人,我还在现场。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
|
||||
replyMatches: "我记录的时间是.*年.*月.*日.*点.*分.*这个时间对吗"
|
||||
form: {vehicle_count: 1}
|
||||
replyNotMatches: "(几辆|多少辆|什么.*车型|是否.*一辆|只有.*一辆.*吗)"
|
||||
|
||||
- input: 对
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
|
||||
# 明确数量后直接单车拍照,不再要求数量确认。
|
||||
|
||||
- input: 只有一辆汽车。
|
||||
expect:
|
||||
stageCode: "2000"
|
||||
form: {vehicle_count: 1}
|
||||
replyNotMatches: "(几辆|多少辆|什么.*车型|是否.*一辆|只有.*一辆.*吗|这个时间对吗)"
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
name: browser_addon_customer_feedback_known_fields
|
||||
clientMode: browser_addon
|
||||
|
||||
# 泛化:描述对象不同、所有字段提前提供,抱怨中有效的时间肯定仍须生效。
|
||||
steps:
|
||||
- input: 新对话
|
||||
expect: {stageCode: "browser_addon.1001"}
|
||||
- input: 继续办理
|
||||
expect: {stageCode: "browser_addon.1002"}
|
||||
- input: 2026年10月27日14点,我这一辆汽车倒车撞到了路灯,没有其他汽车参与,所有人都没事,也没有非机动车或行人,我还在现场。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyMatches: "我记录的时间是2026年10月27日14点00分.*这个时间对吗"
|
||||
replyNotMatches: "(几辆|多少辆|有没有人员受伤|是否涉及非机动车)"
|
||||
- input: 对,时间没错。我这个问题上次已经回答过了,你能看到吗?
|
||||
expect:
|
||||
stageCode: "browser_addon.2000"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyNotMatches: "(几辆|多少辆|这个时间对吗|没.*看到)"
|
||||
@@ -0,0 +1,59 @@
|
||||
name: browser_addon_customer_feedback_repeated_question
|
||||
clientMode: browser_addon
|
||||
|
||||
# 客户原始反馈:连续呼叫、单车碰撞描述、时间确认后质疑重复询问。
|
||||
# 完整的自身机动车撞固定物描述应提取1,后续不再问数量。
|
||||
# 呼叫时整段模板重复另由语义probe检查,本例重点验证完整采集与数量分流。
|
||||
steps:
|
||||
- input: 新对话
|
||||
expect: {stageCode: "browser_addon.1001"}
|
||||
- input: 【继续办理】
|
||||
expect: {stageCode: "browser_addon.1002"}
|
||||
- input: 喂喂喂,有人吗?
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyMatches: "(我在|在的|收到)"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
formAbsent: [vehicle_count, has_injury]
|
||||
- input: 喂喂喂,有没有人,而且。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyMatches: "(我在|在的|收到)"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
formAbsent: [vehicle_count, has_injury]
|
||||
- input: 喂喂喂,有人吗?
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
- input: 我的车子是自己的小轿车,撞到了路边围栏。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyMatches: "(受伤|人伤|伤亡)"
|
||||
formMatches: {accident_cause: "(围栏|护栏)"}
|
||||
form: {vehicle_count: 1}
|
||||
formAbsent: [has_injury]
|
||||
- input: 没有人员伤伤就车子撞了。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
form: {has_injury: false}
|
||||
replyMatches: "(非机动车|行人)"
|
||||
- input: 没有涉及非机动车,也没有行人。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
form: {has_injury: false, has_non_motor_vehicle_hit: false}
|
||||
replyMatches: "(什么时候|几点|事故.*时间)"
|
||||
- input: 时间是2026年10月27日十四点左右。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyMatches: "我记录的时间是2026年10月27日14点00分.*这个时间对吗"
|
||||
form: {accident_time: "2026年10月27日14点0分"}
|
||||
- input: 可以。
|
||||
expect:
|
||||
stageCode: "browser_addon.1002"
|
||||
replyMatches: "(在.*现场|现场.*吗)"
|
||||
replyNotMatches: "这个时间对吗"
|
||||
- input: 我现在还在事故现场。
|
||||
expect:
|
||||
stageCode: "browser_addon.2000"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyNotMatches: "(几辆|多少辆|这个时间对吗|其他.*车.*吗|具体的数字)"
|
||||
@@ -0,0 +1,20 @@
|
||||
name: direct_customer_feedback_known_fields
|
||||
clientMode: direct
|
||||
|
||||
# 泛化:描述对象不同、所有字段提前提供,抱怨中有效的时间肯定仍须生效。
|
||||
steps:
|
||||
- input: 新对话
|
||||
expect: {stageCode: "1001"}
|
||||
- input: 继续办理
|
||||
expect: {stageCode: "1002"}
|
||||
- input: 2026年10月27日14点,我这一辆汽车倒车撞到了路灯,没有其他汽车参与,所有人都没事,也没有非机动车或行人,我还在现场。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyMatches: "我记录的时间是2026年10月27日14点00分.*这个时间对吗"
|
||||
replyNotMatches: "(几辆|多少辆|有没有人员受伤|是否涉及非机动车)"
|
||||
- input: 对,时间没错。我这个问题上次已经回答过了,你能看到吗?
|
||||
expect:
|
||||
stageCode: "2000"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyNotMatches: "(几辆|多少辆|这个时间对吗|没.*看到)"
|
||||
@@ -0,0 +1,59 @@
|
||||
name: direct_customer_feedback_repeated_question
|
||||
clientMode: direct
|
||||
|
||||
# 客户原始反馈:连续呼叫、单车碰撞描述、时间确认后质疑重复询问。
|
||||
# 完整的自身机动车撞固定物描述应提取1,后续不再问数量。
|
||||
# 呼叫时整段模板重复另由语义probe检查,本例重点验证完整采集与数量分流。
|
||||
steps:
|
||||
- input: 新对话
|
||||
expect: {stageCode: "1001"}
|
||||
- input: 【继续办理】
|
||||
expect: {stageCode: "1002"}
|
||||
- input: 喂喂喂,有人吗?
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyMatches: "(我在|在的|收到)"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
formAbsent: [vehicle_count, has_injury]
|
||||
- input: 喂喂喂,有没有人,而且。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyMatches: "(我在|在的|收到)"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
formAbsent: [vehicle_count, has_injury]
|
||||
- input: 喂喂喂,有人吗?
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyNotMatches: "(能听到|听得.*清)"
|
||||
- input: 我的车子是自己的小轿车,撞到了路边围栏。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyMatches: "(受伤|人伤|伤亡)"
|
||||
formMatches: {accident_cause: "(围栏|护栏)"}
|
||||
form: {vehicle_count: 1}
|
||||
formAbsent: [has_injury]
|
||||
- input: 没有人员伤伤就车子撞了。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
form: {has_injury: false}
|
||||
replyMatches: "(非机动车|行人)"
|
||||
- input: 没有涉及非机动车,也没有行人。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
form: {has_injury: false, has_non_motor_vehicle_hit: false}
|
||||
replyMatches: "(什么时候|几点|事故.*时间)"
|
||||
- input: 时间是2026年10月27日十四点左右。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyMatches: "我记录的时间是2026年10月27日14点00分.*这个时间对吗"
|
||||
form: {accident_time: "2026年10月27日14点0分"}
|
||||
- input: 可以。
|
||||
expect:
|
||||
stageCode: "1002"
|
||||
replyMatches: "(在.*现场|现场.*吗)"
|
||||
replyNotMatches: "这个时间对吗"
|
||||
- input: 我现在还在事故现场。
|
||||
expect:
|
||||
stageCode: "2000"
|
||||
form: {vehicle_count: 1, has_injury: false, has_non_motor_vehicle_hit: false, is_on_scene: true}
|
||||
replyNotMatches: "(几辆|多少辆|这个时间对吗|其他.*车.*吗|具体的数字)"
|
||||
Reference in New Issue
Block a user