意图识别

从用户输入的内容中判断用户的目的或者意图。
作用有以下几点:

  1. 有效引导对话流程。帮助对话系统理解用户想要做什么,从而决定对话的走向。比如系统识别出用户需要订飞机票,接下来就可以引导用户提供目的地、时间、价钱等因素。
  2. 提高对话效率。准确的意图识别可以避免系统答非所问,减少对话轮数,提高效率。
  3. 增强用户体验。当系统能够准确理解用户意图时,用户会感觉到自己的需求被重视和理解,反之,如果意图识别错误,用户的体验感会下降。

单轮意图

几种常见的方案:基于规则、向量搜索、深度学习、大模型、融合方案。

  1. 基于规则的意图识别
    使用分词器(例如 jieba 库),返回预先设置的关联短语或词汇,然后返回意图。
  2. 向量检索
    将输入 query 匹配到与知识库中与之相似的其他 query。
  3. 深度学习
    使用文本分类深度学习框架,例如,预训练模型+TextCNN。
  4. 大模型意图识别
    (1)借助Zero Shot、Few Shot ,使用 Prompt 快速获得分类结果。
    (2)使用大模型微调来获得更高的准确率。同时也要考虑模型的选择、文本长度的设置、标注数据的质量和数量等因素。
  5. 方案融合
    实际中,受到准确率、业务逻辑、上线效率等因素的影响,意图识别不能被单一模型完成。所以,融合方案是指一个串并行同时存在且进行排序的意图框架。
    在这里插入图片描述

多轮意图

多轮意图需要考虑对话的历史记录,包括之前轮次的意图、对话的主题转移、用户情绪的变化等诸多因素。多轮意图系统需要准确识别出这种意图的转变,并准确理解每一个意图在整个对话流程中的作用。

  1. 通过上下文语义分割,例如使用端到端的大模型方案,然后通过标注一部分指令数据集,实现对意图识别模型的优化。
Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐