问答对话 #
进入问答对话后,我们会看到如下图所示页面;主要包括三部分:助理列表、输入模块、展示模块;现在对其进行详细说明;
1. 助理列表 #
智能助理可以理解为超音数一系列工具的集合, 如单个智能助理可以集成规则解析, LLM语义解析, 插件等多种工具和能力。而每个工具可指定模型范围(支持的view列表)和查询模型,用户可以根据自己需求定制化不同的智能助理; 默认会创建算指标、标签圈选助理;助理列表是将用户创建的助理都展示在此,方便用户进行助理间的切换;
2. 输入模块 #
输入模块主要包括文本输入框、会话管理两部分;
2.1. 文本输入框 #
顾名思义,可在此处进行自然语音交互;如果在助理设置中开启了联想,输入文本时会实时进行联想提示
实时联想原理:
- 先对文本进行分词
- 然后再进行并行分段探测
- 选取探测文本最长的、且有联想结果的那项进行返回
2.2. 会话管理 #
主要包括四个部分:新对话、历史对话、智能助理、showcase;
- 新对话,创建新的一轮对话;查询过的问题将按对话级别进行保存,后续多轮对话也是在对话基础之上进行;
- 历史对话,能够查询历史对话记录,包括曾经问过哪些问题以及查询结果;支持搜索、删除历史会话;
- 智能助理,对智能助理的管理,是否展示助理列表;
- showcase,通过对查询结果点赞功能加入至showcase,用于展示典型的查询case和问法;
3. 展示模块 #
展示模块主要四个部分:意图解析、SQL生成、数据查询、推荐相似问题;每部分都会记录耗时;如下图所示:
3.1. 意图解析 #
用于展示supersonic对输入文本的解析;parser阶段会生成多个解析结果,如上图生成2个解析,可点击切换解析结果;
为了让用户快速分析识别结果,解析内容目前包括:识别到的数据模型、查询模式、指标以及筛选条件等关键数据;
其中筛选条件可按需修改,如数据时间的灵活切换、切换其他维度值;修改条件后,点击重新查询即可;
3.2. SQL生成 #
SQL生成展示按照解析类型分为两类,Rule解析、LLM解析;
-
Rule解析:主要包括解析S2SQL、修正S2Sql、最终执行SQL; Rule解析S2SQL是通过按规则方式从文本中解析维度、维度值、指标等内容,构造成S2SQL;再经过修正操作生成修正S2SQL;Headless再将S2SQL解析成最终可在数据库引擎的执行SQL;
-
LLM解析:在Rule解析基础上增加Schema映射、Few-shot示例信息;这两项是用于与大模型交互构造prompt,并生成S2SQL时使用到的信息;
3.3. 数据查询 #
主要功能是展示查询结果;根据返回结果的不同,前端灵活展示不同的样式;
-
结果中存在时间、指标,则展示指标趋势;
-
结果中只有一条数据则展示指标卡;
-
结果中存在多个维度、指标等,则按照表格进行展示;
注意
几点说明如下:
如果是指标模式,并且返回结果中存在指标,会进行指标的同环比计算,如上图;
如果是趋势图,可进行固定天数的时间范围切换;如近7天、近30天等;点击最右侧可进行切换;
指标和维度推荐;在查询结果下方,会展示推荐的维度和指标;点击指标,则整个查询会切换成该指标查询;点击维度,会按照该维度进行下钻查询;
4. 推荐相似问题 #
每次用户查询成功的问题会被记录下来,并按对话级别向量化存储到向量数据库;用于后续用户查询时召回相似问题使用;用户输入新问题时,使用输入文本按相似度召回已成功的问题,供用户选择;