主要记录自己印象深刻的的五个点
1.用户输入规范化的方法有哪些,为什么需要?
需要的原因主要是用户输入会出现口语化,缺失信息,代词,同义词这样,所以需要换成更规范的形式
最简单的就是大模型重写,对于特定领域可以使用特定领域的词汇表,词汇表支持动态更新。
用户输入规范化发生在意图识别前,和意图识别一起,以及后续对话过程中,可以结合使用。
2.意图识别的原因,以及意图识别得到的是什么?
意图识别影响 prompt/spec 的加载,意图识别影响上下文组织,意图识别影响工具选择,意图识别影响 prompt 建议,意图识别得到的意图不是让模型随机生成而是候选类别里去做选择。
除了意图也要返回参数 比如对于商品推荐 包括价格的参数,150-200,类似这样,在后续有用的信息。
3.关注指标,以及当面试官说你的 Agent 意图识别准确率太高/太低应该怎么回答?
不要只是做意图识别而不做测评,就好像要评估 RAG 准确性,在接口服务要测试响应时延,超时控制等等,这里也要关注意图识别准确率,如果面试官认为项目指标太高是在吹牛,关键就是回答因为 Agent 解决的是特定领域的意图识别,识别场景单一,另外就是因为用户输入相对简单。如果面试官认为准确率太低就要指出自己后续可以做的优化。
4.意图识别优化的方法
使用层次意图 这种方法可以避免上下文被塞爆,尤其是可能的意图非常多的情况
使用多层次的 先代码,再小模型 再大模型
使用固定的 fewshot 结合输入的动态的 fewshot
保证意图正交
使用向量匹配兜底 要有一些输入和意图的用例,根据历史信息也可以积攒数据信息存储在向量数据库或者其他方式存储下来
这里向量匹配兜底很重要,而且他可以随着使用积累数据去匹配更加好。
5.关于简历相关
主要是从个人技能和项目两方面去阐述,个人技能层面不要把意图识别作为一个独立的技术栈,项目要介绍基本解释,v0 版本,自己做的改进,v1 版本以及未来打算做的 v2 版本。
这种叙事非常适合面试,因为表达自己的场景,发现问题,解决问题,然后用非常明确的指标表达贡献。
总结,意图识别相关的这个输入规范化之前不知道具体是怎么做的,意图识别这部分之前不知道具体应该输出的是有范围的以及输出参数。
想到了 AI haRness 技术层次,编排和控制,工具选择和调用,记忆和上下文管理,建立反馈循环,输入输出等可靠性安全性的保证。