-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathquery_examples
More file actions
177 lines (143 loc) · 6.86 KB
/
query_examples
File metadata and controls
177 lines (143 loc) · 6.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
### 📅 核心策略:多条时间线并行
为了展示全面的能力,我们在数据中构造三条时间线:
1. **紧急线 (Today)**:**1月4日下午截关**。用于展示风控、报警和 RAG 建议(高光时刻)。
2. **未来线 (Future)**:**1月16日截关**。用于展示常规查询和规划(原有的金牛座)。
3. **异常线 (Error)**:用于展示数据缺失(VGM)或错误处理。
---
### 1. 修改 `mock_api_data.json`
请用以下内容**完全替换**原有的 JSON 文件。我们新增了一艘船 `东方海外宁波 (OOCL NINGBO)`,截关时间设为 **1月4日 16:00**。
```json
{
"containers": {
"TRLU1234567": {
"container_id": "TRLU1234567",
"status": "已进港",
"vgm_status": "已发送",
"location": "宁波北仑第二集装箱码头"
},
"URGENT001": {
"container_id": "URGENT001",
"status": "已进港",
"vgm_status": "已发送",
"location": "宁波北仑第三集装箱码头"
},
"RISK888888": {
"container_id": "RISK888888",
"status": "已进港",
"vgm_status": "已发送",
"location": "宁波北仑第三集装箱码头"
},
"NOVGM999": {
"container_id": "NOVGM999",
"status": "已进港",
"vgm_status": "未发送",
"location": "宁波北仑第四集装箱码头"
}
},
"customs": {
"BILL001": {
"bill_of_lading": "BILL001",
"customs_status": "放行",
"declaration_time": "2026-01-02 09:00:00"
},
"BILL_URGENT": {
"bill_of_lading": "BILL_URGENT",
"customs_status": "查验",
"customs_code": "H98",
"instruction_time": "2026-01-04 10:30:00"
},
"BILL_RISK": {
"bill_of_lading": "BILL_RISK",
"customs_status": "查验",
"customs_code": "人工查验",
"instruction_time": "2026-01-04 09:00:00"
},
"BILL_NOVGM": {
"bill_of_lading": "BILL_NOVGM",
"customs_status": "放行",
"declaration_time": "2026-01-03 14:00:00"
}
},
"vessels": {
"中远海运金牛座": {
"vessel_name": "中远海运金牛座",
"voyage": "CSB001E",
"estimated_berthing_time": "2026-01-16 08:00:00",
"customs_clearance_deadline": "2026-01-16 14:00:00"
},
"东方海外宁波": {
"vessel_name": "东方海外宁波",
"voyage": "OOCL004W",
"estimated_berthing_time": "2026-01-05 08:00:00",
"customs_clearance_deadline": "2026-01-04 16:00:00"
}
}
}
```
---
### 2. 🎤 完整演讲剧本 (1月4日版)
**背景设定**:
* **当前时间**:2026年1月4日(中午或下午)。
* **角色**:外贸业务员/物流操作员。
#### 开场白
> “各位面试官好。在国际物流中,最让人头疼的就是**信息碎片化**和**突发异常**。我开发的这个 SmartPort Agent,不只是一个查询工具,更是一个懂业务的决策助手。
> 今天是 1月4日,我准备了三个真实的业务场景来演示它如何处理‘常规规划’、‘紧急查验’和‘合规风险’。”
---
#### 🎬 场景一:从容规划 (Future Scenario)
**目的**:展示基础能力,证明系统能处理未来的船期。
**Query:**
> “帮我查一下箱号 TRLU1234567 和提单号 BILL001。这票货是配‘中远海运金牛座’的,状态正常吗?”
**Agent 行为**:
* 调用 API 查到箱子已进港,海关已放行。
* 查到“金牛座”截关时间是 1月16日。
* **结论**:一切正常,时间非常充裕。
**话术**:
> “这是最理想的情况。Agent 整合了码头、海关和船期数据,确认货物已经放行,且距离 16号的截关时间还有十几天。业务员看到这就放心了。”
---
#### 🎬 场景二:生死时速与推理 (Urgency & H98)
**目的**:展示逻辑推理能力。利用“今天下午截关”制造紧张感。
**Query:**
> “重点关注一下 **BILL_URGENT** 这票货,船名是‘东方海外宁波’。海关状态刚变成 H98,这船 **今天下午4点就截关了**,还能赶上吗?”
**Agent 行为**:
* **获取时间**:当前是 1月4日 (假设演示时是中午12点)。
* **获取截关 (CVT)**:1月4日 16:00。
* **获取查验**:H98 (机检),指令时间 1月4日 10:30。
* **RAG 知识**:H98 耗时 4-8 小时。
* **推理**:10:30 + 4~8小时 = 14:30 ~ 18:30。
* **结论**:时间非常紧迫(Very Tight)。
**话术**:
> “大家看,这艘船今天下午4点就截关了。Agent 发现虽然是 H98 机检(通常较快),但根据推算,完成时间可能在截关时间前后徘徊。
> 这里的价值在于,Agent **自动计算了时间差**,并给出了风险预警,而不是冷冰冰地甩给用户一个状态码。”
---
#### 🎬 场景三:绝境求生与专业建议 (High Risk & RAG) 🌟
**目的**:展示核心价值——基于知识库的决策建议。
**Query:**
> “最急的是提单号 **BILL_RISK**,也是配‘东方海外宁波’(今天下午截关)。但这票货早上9点被**‘人工查验’**了。请帮我分析一下风险,我该怎么办?”
**Agent 行为**:
* **冲突检测**:人工查验(耗时1-2天) vs 截关剩几小时。
* **结论**:绝对赶不上。
* **RAG 触发**:检索知识库,找到《应对策略》。
* **回复**:建议立即联系报关行申请**“预漏装” (Pre-rollover)**。
**话术 (高光时刻)**:
> “这是一个绝望的场景:人工查验需要开箱,至少1天,肯定赶不上今天下午的船。
> **普通系统**只会告诉你‘查验中’,让你干着急。
> **我的 Agent** 结合了内置的宁波口岸知识库,直接建议用户**‘申请预漏装’**。这一步操作如果做在截关前,能帮货主省下几千块的改配费和滞箱费。这就体现了 Agent 懂业务。”
---
#### 🎬 场景四:隐形杀手 (Compliance Check)
**目的**:展示细致的规则检查 (VGM)。
**Query:**
> “最后查一下箱号 **NOVGM999**,提单号 **BILL_NOVGM**。海关已经放行了,应该没问题了吧?”
**Agent 行为**:
* 查到 `status`: 已进港。
* 查到 `customs_status`: 放行。
* **发现异常**:`vgm_status`: **未发送**。
* **结论**:虽然海关放行,但缺 VGM 无法装船。
**话术**:
> “很多新手会忽略 VGM。这票货看似海关放行了,但 Agent 敏锐地发现 **VGM 尚未发送**。根据‘No VGM No Load’规则,这箱子如果不补发数据,百分之百会被甩柜。Agent 充当了最后一道风控防线。”
---
### 3. 演示总结
通过这四个 Query,你不仅绕过了“修改系统时间”的技术雷区,还完美构建了一个**“时间紧任务重”**的真实业务现场:
1. **TRLU...**: 长期规划(体现稳)
2. **BILL_URGENT**: 临界计算(体现准)
3. **BILL_RISK**: 挽回损失(体现懂)
4. **NOVGM**: 合规风控(体现细)