从关键词匹配到任务理解:Agent 意图识别的五代技术演进
当你对 AI 说"帮我查一下后面三站附近评分高一点的日料",它需要理解多少东西?
引言
你有没有想过,当你随口对一个 AI 助手说出一句话,它到底经历了什么?
比如这句:
“帮我查一下后面三站附近评分高一点的日料”
如果让你来做这个系统,你需要从这句话里提取出:
- 领域:公共交通 + 餐饮
- 意图:搜索路线沿途的餐厅
- 参数:范围=后面三站,菜系=日料,排序=评分
- 是否需要追问:不需要
- 能否并行执行:可以
这已经远远超出了传统"客服分类"的范畴。这就是现代 Agent 系统中**意图识别(Intent Recognition)**正在解决的问题。
今天这篇文章,带你看看这个领域从"if-else"到"任务结构提取器"的五代演进。
意图识别在 Agent 中的角色
在一个完整的 Agent 系统里,意图识别器(Intent Recognizer)不只是"分个类"这么简单。它需要同时完成这些事:
| 能力 | 说明 |
|---|---|
| 领域路由 | 用户的问题属于哪个领域? |
| 技能路由 | 应该调用哪个 skill 或 workflow? |
| 参数提取 | 提取关键参数(slot filling) |
| 约束识别 | 有什么限制条件? |
| 追问判断 | 信息够不够?需不需要追问? |
| 多意图分解 | 一句话里是不是包含多个子任务? |
| 安全边界 | 是否涉及越权或危险操作? |
可以说,意图识别是 Agent 系统的"入口调度中心"。
第一代:规则 + 关键词路由
if"天气"inquery:weather_skill()elif"股票"inquery:finance_skill()优点:稳定、可控、延迟低。
致命问题:换个说法就崩了。“明天出门需要带伞吗”——没有"天气"两个字,系统直接傻掉。
但别小看它。时至今日,规则路由仍然活跃在:
- 安全策略(safety rules)
- 硬性路由(hard routing)
- 兜底逻辑(fallback)
- 紧急策略(emergency policy)
工业界永远不会完全放弃规则。
第二代:传统 NLU 分类模型
到了这一代,我们有了 FastText、TextCNN、BERT、RoBERTa 这些武器。
核心思路很简单:
用户输入 → Encoder → CLS pooling → softmax → 意图标签本质就是一个分类问题:P(intent | x) = softmax(Wx + b)
看起来不错,但在 Agent 场景下迅速暴露三个致命问题:
1. 意图爆炸
当 skill 从 10 个增长到 100、1000、10000 个时,softmax 分类根本不可扩展。
2. 复合意图
“帮我比较一下东京飞上海最便宜的航班,并推荐附近便宜酒店”
这不是一个 intent,而是两个甚至三个。
3. 参数决定流程
“后面三站有什么吃的”——真正决定 workflow 走向的不是 intent 标签,而是range = next_3_stops这个 slot。
第三代:语义路由(Embedding Router)
核心思想:不做硬分类,而是做语义匹配。
用户输入 → Embedding → 向量 → ANN 搜索 → Top-K 候选 Skills本质公式:score(q, s) = cos(e_q, e_s)
为什么这一步是革命性的?
因为新增一个 skill,只需要写一段描述,embedding 进向量库就行了。不需要重新训练分类器。
这和推荐系统的思路如出一辙——“粗召回 + 精排”:
Query → Embedding Router → Top-K Skills → LLM Rerank → Final Skill如果你做过推荐算法,这个架构你一定倍感亲切。
第四代:LLM 驱动的意图识别
这是当前的主流方案。
核心思想:让 LLM 直接输出结构化的意图 JSON。
用户输入 + 历史上下文 + 系统策略 ↓ LLM ↓ 结构化意图 JSON输出类似这样:
{"domain":"restaurant","intent":"search_restaurant","slots":{"location":"shibuya","price":"cheap"}}为什么 LLM 意图识别能崛起?
| 能力 | 传统分类 | LLM |
|---|---|---|
| 多意图 | 差 | 强 |
| 参数提取 | 弱 | 强 |
| 长上下文 | 弱 | 强 |
| Zero-shot | 差 | 强 |
| 复合任务 | 差 | 强 |
| 推理能力 | 无 | 有 |
但要注意——真正的线上系统从来不是 LLM 一个人在战斗。
第五代:层次化意图 + Planner
这是 Agentic AI 真正的前沿方向。
意图识别不再是简单的query → intent,而是:
用户输入 ↓ 高层目标(high-level goal) ↓ 子目标分解(subgoal decomposition) ↓ 技能图路由(skill graph routing)举个例子。用户说:
“规划一个东京三天旅游,预算5000人民币”
系统的处理过程:
一级意图:travel_planning
二级分解:
- find_flights
- find_hotels
- build_itinerary
- budget_optimization
三级技能图:
planner ├── flight_search ├── hotel_search ├── map_agent └── budget_optimizer这意味着什么?
意图识别器从一个"分类器",变成了一个**“任务结构提取器”(Task Structure Extractor)**。
这是 Agent 时代最本质的变化。
为什么 Slot Extraction 如此关键?
你可能会问:参数提取(slot extraction)为什么单独拎出来说?
因为它解决了一个核心问题:把自然语言的不确定性,转化为结构化的状态变量。
用户说"后面三站",workflow 真正需要的是:
{"range_type":"relative_stop","offset":3}Workflow 只认结构化变量。Slot extraction 就是那个"翻译官"。
真正可落地的工业架构
说了这么多代际演进,真正能在线上跑的到底是什么?
答案是:“规则 + 检索 + LLM” 混合架构。
完整链路如下:
用户输入 ↓ 预处理(Preprocess) ↓ 安全规则(Safety Rule) ↓ 领域路由(Domain Router) ↓ 意图识别(Intent Recognizer) ↓ 参数填充(Slot Filling) ↓ 规划器(Planner) ↓ 工具选择(Tool Selection) ↓ 执行器(Executor)落地建议:四步走
如果你现在要搭一个 Agent 系统的意图识别模块,我建议分四步:
Phase 1:混合路由器
先把三层堆起来:规则 + Embedding 召回 + LLM JSON 解析。不要一上来就搞端到端 agent。
Phase 2:Schema-first 意图定义
用强约束 JSON schema 定义意图输出格式:
{"domain":"","intent":"","slots":{},"constraints":{},"clarification":[]}这一步让系统行为可预测、可调试、可监控。
Phase 3:意图 → 技能图
不要做intent → function的一对一映射,而是intent → executable graph:
{"skills":["..."],"dependencies":["..."]}Phase 4:可训练路由器
积累数据,开始训练:
- 路由模型(router model)
- 奖励模型(reward model)
- 规划模型(planner model)
用 router trace、失败路由、追问数据、工具成功/失败来持续优化。
总结
Agent 中的意图识别,已经从"分个类"演进为"理解任务结构"。五代技术路线概括如下:
| 代际 | 方案 | 核心思想 |
|---|---|---|
| 第一代 | 规则+关键词 | if-else 匹配 |
| 第二代 | NLU分类 | softmax 分类 |
| 第三代 | 语义路由 | embedding 匹配,粗召回+精排 |
| 第四代 | LLM驱动 | 直接输出结构化 JSON |
| 第五代 | 层次化+Planner | 任务结构提取 + 技能图路由 |
而真正能上线的,是混合架构——规则兜底、向量召回、LLM精排,三者缺一不可。
如果你正在搭建 Agent 系统,记住一句话:
意图识别不是终点,它是通向"理解用户真正想做什么"的起点。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋
📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~
