# 地图导航复杂度判断

本文件是 [复杂度判断](复杂度判断.md) 的专项条件表，父维度是 `complex` / 复杂度判断。

它只回答一个问题：当前地图导航、POI 搜索、路线偏好相关 query 应该是 `complex=false` 还是 `complex=true`。

它不引入新的维度字段，不替代业务标签判断；业务标签仍需要结合地图导航、地图问答、餐饮服务、旅游等标签卡片和边界卡。

## 维度归属

- 父维度：`complex` / 复杂度判断。
- 输出字段：仍然只输出 `complex=false` 或 `complex=true`。
- 使用位置：读取 `复杂度/复杂度判断.md` 后，如果 query 涉及导航、路线规划、POI 搜索、终点附近、沿途、顺路、路线偏好、单 POI 筛选或多轮路线约束，再读取本文件。
- 不要把“地图导航复杂度判断”当成和 complex、多指令、自动任务并列的新维度。

## 总体原则

- `complex=false`：用户目标可以由地图、导航或 POI 检索链路直接处理，虽然可能带有简单定语、路线偏好、上下文修正或单个 POI 约束。
- `complex=true`：用户要求系统做综合规划、主观筛选、避坑判断、跨信息源验证、复杂比较，或需要先理解隐含知识再定位到可导航 POI。
- 单 POI 是强 `complex=false` 信号，但不是绝对信号；如果单 POI 绑定路线选择、复杂筛选、评价推理、外部事实验证或“帮我挑一个最合适”的综合决策，则转为 `complex=true`。
- 多轮导航中的次轮路线限制、沿途/顺路找点、目的地附近找点，通常仍是导航链路内的短链路操作，默认 `complex=false`。

## 先区分单轮和多轮

地图导航复杂度判断必须先看当前 query 是否依赖上一轮导航上下文。

- 单轮：当前 query 自己要看里面有没有"主目的地 + 途径/沿途/中间点"的
  多 POI 组合。只要出现这种多 POI 组合，默认 complex=true；
  如果出现"主目的地 + 路线选择"，也默认 complex=true；
  如果只是单 POI + 简单筛选 / POI 改口，仍按下面 complex=false 条目判断。
- 多轮：上一轮已经建立了导航路线、目的地或候选 POI，当前 query 只是追加“中间找个充电站”“帮我找一个最顺路的停车场”“我要沿途的顺路的”等约束时，默认 `complex=false`。
- 多轮里的单独路线选择，例如“不要走高速”“走国道”“别走收费路”，当前轮不能单独作为 `complex=true` 判断依据；如果上一轮导航任务已经是 `complex=true`，则当前轮继承为 `complex=true`，否则默认 `complex=false`。
- 如果输入里没有提供上一轮导航上下文，不要假设它是多轮次轮；应按单轮完整 query 处理。

## 判断次序

地图导航场景按下面顺序判断，越靠前优先级越高：

1. **确认是否有上一轮导航上下文**：如果没有上一轮，当前 query 按单轮判断。
2. **单轮多步骤优先判断**：当前 query 同时出现主目的地和途经点、沿途点、中间点，给 `complex=true`。
3. **单轮目标 + 路线选择优先判断**：当前 query 同时出现主目的地和路线选择、路线偏好、避让条件，给 `complex=true`。
4. **多轮继承判断**：当前轮只是路线选择或路线偏好时，先看上一轮 complex；上一轮为 `complex=true` 则继承为 `complex=true`，否则默认 `complex=false`。
5. **多轮短链路追加判断**：上一轮已有导航路线，当前轮只是追加沿途、顺路、中间找点，且上一轮不是 `complex=true`，给 `complex=false`。
6. **单 POI 简单筛选判断**：目标是单 POI，只有简单距离、设施、排序、营业状态等条件，给 `complex=false`。
7. **复杂筛选和综合推荐判断**：需要评价、避坑、冷门热门、排队、人流、外部事实验证或多候选比较，给 `complex=true`。
8. **改口纠错判断**：单 POI 改口、取消、纠错、模糊补全，不因口语混乱升为 `complex=true`。

如果某条 query 同时命中多个条件，按上述顺序取优先级更高的判断。

## complex=false

以下类型默认 `complex=false`。

### 1. 导航到终点附近某类地点

用户希望在当前终点、目的地或路线附近找一个明确类型的 POI 并导航过去，属于导航链路内的 POI 搜索。

示例：

- 导航到终点附近最便宜的停车场。
- 导航到目的地附近的充电站。
- 去终点附近的服务区。

判断要点：

- “终点附近 / 目的地附近 / 沿途附近”不自动导致 `complex=true`。
- 如果只是明确 POI 类型加简单筛选，仍是 `complex=false`。

### 2. 单独路线选择或路线偏好

用户没有在当前轮给出主目的地，只是单独要求路线选择、路线偏好或避让条件，默认 `complex=false`。

示例：

- 给我规划一条不走高速只走国道的路线。
- 我不想走收费路而且别太绕。
- 我想少走隧道尽量走地面路。
- 优先走快速路别进小路。
- 我赶时间尽量走最快路线。

判断要点：

- “规划路线 / 路线偏好”本身不等于 `complex=true`。
- “不走高速 / 只走国道 / 不走收费路 / 少走隧道 / 走地面路 / 快速路 / 最快路线”等单独路线偏好默认 `complex=false`。
- 如果当前轮同时出现明确主目的地，例如“导航回家不走高速”，不要套用本条，应按 `complex=true` 的“单轮目标 + 路线选择”判断。

### 3. 找一个某类地方，目标是单 POI

用户要求找一个地点或一个可去的地方，只要目标是单 POI，且没有复杂综合评价，默认 `complex=false`。

示例：

- 找一下景区边上能停车又能吃饭的地方。
- 帮我找一个附近能停车的商场。
- 找一个离我最近的洗车店。

判断要点：

- “找一个 xxx 的地方”如果最终目标是一个 POI，默认 `complex=false`。
- 能停车、能吃饭、附近、最近、最大、最便宜、有停车场等简单约束，不单独触发 `complex=true`。

### 4. 多轮导航中的次轮限制条件

上一轮已经处在导航、路线、目的地或 POI 选择上下文中，当前轮只是补充路线限制或偏好时，当前轮本身不单独触发 `complex=true`。

示例：

- 我不想走收费路而且别太绕。
- 我想少走隧道尽量走地面路。
- 优先走快速路别进小路。
- 我赶时间尽量走最快路线。

判断要点：

- 这类 query 可能没有显式 POI，但依赖上一轮路线上下文。
- 只是在当前导航任务上加约束，不视为新的复杂规划任务。
- 如果上一轮导航任务是 `complex=false`，当前轮默认 `complex=false`。
- 如果上一轮导航任务是 `complex=true`，当前轮继承上一轮复杂度，输出 `complex=true`。

### 5. 单 POI + 简单筛选条件

目标是一个 POI，筛选条件是地图或 POI 检索可直接处理的简单属性，默认 `complex=false`。

示例：

- 帮我导航去附近最近的星巴克，要有停车场的。
- 帮我找一个现在还开着的洗车店，停车方便的。
- 带我去一个能买到户外运动装备的店，最好品牌多一点的。
- 帮我找一个附近有 ATM 机的商场，选一个最方便的过去。

简单筛选条件包括：

- 距离：附近、最近、顺路、沿途、目的地附近。
- 路线：不走高速、只走国道、少收费、别太绕、最快。
- 设施：有停车场、停车方便、有 ATM、现在开着。
- 基础排序：最大、最近、最便宜、评分高。

判断要点：

- 简单条件可以多个并列；只要不要求复杂综合推理，仍是 `complex=false`。
- “选一个最方便的过去”如果只是结合距离、停车、路线等直接地图属性，仍可为 `complex=false`。

### 6. 单 POI 改口、纠错、模糊表达、取消

用户在导航中改口、纠错、口语重复或取消导航，不需要复杂规划。

示例：

- 导航去春日樱花不是樱花园牡丹园不也不是牡丹园。
- 导航去解放路夜市哎不对呃那个不是不是不是停停停别导航。
- 导航去翡翠城什么什么楼亚朵。

判断要点：

- 改口和模糊不等于复杂。
- 如果最终仍是单 POI 纠错或取消动作，默认 `complex=false`。

### 7. 多轮次轮里的沿途、顺路、中间找点

上一轮已经有明确导航路线、目的地或行程上下文，当前轮只追加沿途、顺路、中间找某类 POI，默认 `complex=false`。

示例：

- 中间找个充电站。
- 帮我找一个最顺路的停车场。
- 跟刚才的道路不重复。
- 我要沿途的顺路的。

判断要点：

- 必须能从前轮上下文确认当前轮是在修改已有路线。
- “沿途 / 顺路 / 中间”是导航链路可直接利用的约束。
- “跟刚才道路不重复”属于路线约束，默认 `complex=false`。

## complex=true

以下类型默认 `complex=true`。

### 1. 单 POI 但筛选条件需要复杂综合判断

用户不是简单找一个 POI，而是要求系统综合营业时间、便利性、评价、风险、拥挤程度、冷门程度、出餐速度、名人打卡事实等信息后做推荐。

示例：

- 附近牙科晚上营业的牙科诊所有哪些，给我推荐一个最方便去的。
- 去上海鹿晗打卡过的邮筒，具体在哪儿，你帮我定位到能导航的地方。
- 导航去一家评分很高但比较冷门的小馆子我不想踩雷。
- 导航去一家很受欢迎的面馆最好出餐快别排太久。
- 我想去看展，但不想踩雷，你帮我在附近挑个停车方便、人别太挤的展馆或商场，直接导航过去。

判断要点：

- “有哪些 + 推荐一个”通常需要先召回候选再综合比较，偏 `complex=true`。
- “不想踩雷 / 冷门但评分高 / 很受欢迎但别排太久 / 人别太挤 / 出餐快”等属于主观质量和实时状态综合判断，偏 `complex=true`。
- “某人打卡过的地点 / 网络热点地点 / 隐含事实定位”需要外部事实验证后才能导航，偏 `complex=true`。

### 2. 多条件跨信息源综合决策

如果 query 同时要求地图属性、评价属性、实时状态、内容理解或外部事实，并要求系统帮用户做最终决策，通常是 `complex=true`。

判断要点：

- 是否需要先分析候选集合。
- 是否需要比较多个方案。
- 是否需要解释为什么选这个。
- 是否需要外部知识或线上内容验证。

### 3. 单轮里的终点 + 途经点 / 沿途点 / 中间点

如果当前单轮 query 同时包含主目的地和途经点、沿途点、顺路点或中间点，应该给 `complex=true`。

这类 query 不是简单“单 POI 导航”，而是在一个导航请求里同时规划目的地和中间停靠点，属于多步骤路线组织。

示例：

- 导航到附近商场中间途径充电站。
- 导航到附近商场，中间经过一个充电站。
- 导航到武汉小米科技园，先去买一杯咖啡。
- 导航到商场，路上顺便找个充电站。
- 去附近商场，先途径充电站。

### 4. 单轮里的目标 + 路线选择

如果当前单轮 query 同时包含明确主目的地和路线选择、路线偏好或避让条件，应该给 `complex=true`。

这类 query 不是单独路线偏好，而是把目的地和路线策略绑定在同一个导航请求里，需要按带约束的路线规划处理。

示例：

- 导航回家不走高速。
- 导航到公司只走国道。
- 导航去机场别走收费路。
- 去附近商场尽量走快速路。
- 导航到小米科技园，少走隧道尽量走地面路。

### 5. 多轮继承上一轮复杂度

如果当前轮只是单独路线选择或路线偏好，但上一轮导航任务已经被判断为 `complex=true`，当前轮应继承上一轮复杂度，输出 `complex=true`。

示例：

- 上一轮：导航到附近商场中间途径充电站。`complex=true`
- 当前轮：不要走高速。`complex=true`

判断要点：

- 当前轮的路线选择本身不是 `complex=true` 充分条件。
- 继承 `complex=true` 的前提是上一轮导航任务已经明确是 `complex=true`。

## 不要误判为 `complex=true` 的情况

以下表达不要单独作为 `complex=true` 触发条件：

- 出现“规划路线”。
- 多轮已有导航上下文中，当前轮只出现“终点附近 / 目的地附近 / 沿途 / 顺路 / 中间”，且上一轮不是 `complex=true`。
- 单独出现路线偏好：不走高速、只走国道、不收费、别太绕、少隧道、走地面路、走快速路、最快。
- 单 POI 带简单定语：最近、最大、最便宜、附近、有停车场、停车方便、现在开着。
- 口语改口、重复、否定、取消导航。

## 不要误判为 `complex=false` 的情况

- 单轮 query 同时出现主目的地和"途经/沿途/中间/顺路 + POI"，
  即使途经点是充电站、加油站、停车场等地图常规 POI，
  也不要因为"每个 POI 都简单"就给 false。
  参考 complex=true 第 3 条。
- 单轮 query 同时出现主目的地和路线选择，
  例如“导航回家不走高速”，不要因为“不走高速”单独出现时是 `complex=false` 就给 false。
  参考 complex=true 第 4 条。
- 多轮 query 中，如果上一轮已经是 `complex=true`，
  当前轮只是补充路线选择，也不要降回 false。
  参考 complex=true 第 5 条。
- 没有任何前轮导航上下文的情况下，不要把单轮 query 当作多轮次轮处理。

## 推荐判断模板

```text
complex 判断：
- 推荐：false/true
- 原因：单 POI + 简单筛选 / 单独路线偏好 / 单轮目标加路线选择 / 多轮继承上一轮复杂度 / 多轮沿途找点 / 单轮终点加途经点 / 复杂综合筛选
- 复杂度依据：引用本文件中的具体条目
- 业务标签：另按地图导航、地图问答、餐饮服务等标签判断
```
