首页 核心备考 STAR 案例 评估与护栏 评估深入 护栏深入 核心概念 意图识别 EN

面试准备 · NAB 墨尔本 · AI Scientist

意图识别

弄清楚用户到底想要什么,并把它转化成系统可以执行的东西。两个页面:先从零讲清这门功夫,再看它在 Mines Financial 项目中究竟是怎么实现的 —— 包括那些缺失的部分。

这个主题在这里为何重要

它就是职位描述中排在第一条的职责,只是换了一种说法。

NAB 的招聘广告要找的人,需要构建 智能体推理循环、工具使用接口、记忆系统、上下文管理以及编排逻辑。意图识别正是前两者之间的铰链:它是把一句话转化成「该调用哪个工具」这一决策的那一步。上面这五件事,每一件都依赖于它做对。

它还直接连接到广告最看重的两个主题。它的失效模式是一个 护栏 问题 —— 意图判断错了,不是写出一段糟糕的文字,而是执行了一个错误的动作 —— 而你要判断它到底管不管用,则是一个 评估 问题,有它自己的精确率、召回率和混淆矩阵。

随时可以说出口的那句话 意图识别,是系统把自然语言映射到它真正能够执行的下一个决策上的方式。在银行里,这个决策同时也是智能体不再只是聊天机器人、开始有能力造成损害的那一刻 —— 正因如此,它值得配上一个置信度分数和一套澄清策略,而不是一次最佳猜测。

两个页面

按顺序读。第一页搭起第二页要用的词汇体系。

1
概念本身 —— 从零讲起,不预设任何背景

什么是意图识别,为什么智能体离开它就无法运作,以及如何把它设计好:从业务动作而不是话题里挑意图,只有当后续执行不同时才拆分,用与相邻意图的边界来定义每一个意图。然后是三种实现方式 —— 训练一个分类器、让 LLM 来分类,或者干脆不要分类器、让意图隐含在工具选择里。

后半部分讲测量:为什么准确率具有误导性,精确率和召回率各自告诉你什么,混淆矩阵如何指出该修哪一对具体的意图,从意图一路到任务成功的四个层次,以及对一个能够行动的智能体来说盖过所有指标的那一个 —— 错误动作率。

  • 包含 —— 粒度测试、include/exclude 式定义、层级路由、未知与歧义意图、把多意图当作任务规划来处理,以及如何构建一个不会自我美化的测试集
  • 结尾是 —— 把整门功夫串成一条链,并附上所有用到术语的词汇表

打开第 1 部分 →

2
在本项目中 —— 实际跑起来的是什么

Mines Financial 里并没有一个叫 intent_classifier.py的文件。它有的,是一个返回四个互相独立布尔值的节点,以及一组读取这些值的确定性边。本页按执行顺序走完每一个决策点 —— 从历史压缩,到正则槽位抽取与追问消解,再到路由器本身、澄清中断、按公司维度的查询拆解,以及两个带上限的重试循环。

它同样覆盖那些缺失的部分,以及为什么这些缺失是站得住脚的:所有路由决策都没有置信度,没有针对不支持公司的显式检查,澄清也没有循环计数器。还有那条诚实的脚注 —— 路由评估在某种程度上是在给它自己的测试装置打分。

  • 包含 —— 为什么槽位用正则而不是模型,为什么有一个决策被刻意推迟,以及为什么这里几乎没有一处是自由的工具选择
  • 结尾是 —— 一段九十秒的口头回答,以及仍需补上的差距

打开第 2 部分 →

贯穿两页的那条主线

第一部分给你这条链。第二部分展示的是同一条链,只不过挂上了本项目的名字。

通用步骤在 Mines Financial 中由谁决定
用户想要什么?来自以下节点的四个标志位: retrieve_decision一次 LLM 调用,结构化输出
它需要哪些信息?公司与财年正则 —— 封闭词表
有没有缺失的东西?needs_clarification → 图中断LLM 标志位,然后交给人
走哪条工作流?检索与/或新闻,并行执行确定性边
要搜索多少次?每提到一家公司搜一次第二次 LLM 调用,做拆解
用哪个工具?除计算器之外,处处是图的边代码,只有一个 ReAct 智能体例外
它成功了吗?有据可依计数 → 置信度标签对无支撑论断设阈值

从左往右读这张表,就是概念页;从右往左读,就是项目页。能在两个方向上自如移动 —— 从一般原则到具体实现,再从具体实现回到一般原则 —— 正是「听起来像查过资料的回答」与「听起来像亲身做过的回答」之间的分野。

需要准备好的问题

每个答案分别在哪里。

如果他们问去看开口先说
「你的智能体是怎么决定要做什么的?」第 2 部分是四个标志位,不是一个标签 —— 然后解释这为什么支持多意图
「如果从零开始,你会怎么设计意图?」第 1 部分从业务动作出发,而不是话题;只有当执行方式不同时才拆分
「你怎么知道路由做得好不好?」先第 1 部分,再第 2 部分混淆矩阵优于准确率;然后是那 8 个路由用例
「查询有歧义时会发生什么?」两部分都看置信度加上澄清策略;在这里,是一次真正的图中断
「如果用户一次问两件事呢?」第 2 部分两个维度已处理,一个没有 —— 以及为什么那一个在这里无害
「你会有哪些不同的做法?」第 2 部分路由置信度,而且要赶在加入任何具有写入能力的工具之前
这个主题里的陷阱 大多数候选人把意图识别描述成一个分类问题,然后就停在那里。资深的答案会继续往下走:没有置信度的标签是没有价值的,没有「何时依据它行动」这一策略的置信度是没有价值的,而如果你只测量标签、不测量用户的问题是否真的得到解决,那整件事都是没有价值的。