检索路由与多数据源
向量库、SQL、图谱、API 各答一类问题,路由层先做意图分类再决定问谁 —— 问错地方比检索不准更常见。路由可以是规则、小模型分类或让大模型选工具(NL2SQL 也是一条路由分支),每加一路都要算成本与错路代价。
也叫:检索路由 · 查询路由 · query routing · 多数据源 · 意图分类 · NL2SQL
4. 查询路由(Query Routing)——解决问错地方出自 T2-7
判断这个问题该去哪查:
用户问题 ├─ 事实性知识问答 → 向量库 / 混合检索 ├─ 结构化数据(金额、订单)→ SQL 查询 ├─ 关系推理(谁和谁有关联)→ 图谱查询 ├─ 实时信息(今天股价) → Web 搜索 / API └─ 闲聊 / 无需检索 → 直接回答(省一次检索)
最后一条常被忽略却很实用:「你好」「谢谢」这类输入根本不需要检索,直接放行既省钱又快。
路由的三种实现,成本递增:
| 实现 | 说明 | 适用 |
|---|---|---|
| 规则 / 关键词 | 命中关键词就走某路 | 意图少且明确,最省 |
| 轻量分类器 | 小模型或 embedding 相似度分类 | 意图多、要求稳定 |
| LLM 判断 | 直接让大模型选 | 意图复杂、变化快,最贵 |
实用建议:先用规则或轻量分类器覆盖高频意图,尾部长尾再交给 LLM。不要一上来就每个 query 都让大模型判一次——这是成本悄悄失控的常见来源。
以上节选自T2-7 查询理解:改写、扩展、HyDE 与路由,读全文能看到前后语境。