更新时间:2023-09-06 GMT+08:00

自助服务

为什么要配置停用词?

在配置意图的过程中,发现在A意图中配置了语料Are you a Robot, 但是实际测试时,输入are you a robot会匹配到其他语料,这是什么原因造成的呢?

原来系统中未将Are配置为停用词,造成机器人将are进行词形还原成be,而语料中存在is,也一样进行词形还原为be,所以导致输入“are you a robot”时系统根据语料匹配到其他意图。这种问题可以通过配置停用词解决。

实际语言中存在一些词,并没有实际含义,仅起到连接作用,例如英文中的BE动词,中文中的助词“的”等。为了使这些词不参与语义解析,需要将这些词在知识管理 > 实体管理的停用词页签添加。

为什么有的意图匹配率挺低,但却也命中了?

用户输入的信息在TUC侧解析后会生成匹配率,该匹配率会和系统中定义的匹配率阈值做比较,来确定该意图是命中还是没有命中。

系统的匹配率在系统管理 > 系统配置 >智能引擎参数配置 > 意图参数中配置。

意图参数的不当设置会导致意图识别模块运行异常或准确率下降,请在专业人员指导下进行。

目前意图决策模块中有两个参数:

高于“top阈值”即认为命中,将命中的意图响应返回,低于“bottom阈值”的即识别为未知意图,在这两个值中间的当前系统作为命中意图处理。即,再上述配置下, 只要意图匹配率高于20%,就算是命中了。

TTS无法识别日期格式

问题描述

在配置西班牙语对话识别时,发现TTS播报时无法将20190801 这种格式的字符串视为年月日的格式进行播报,而直接播报成数字,客户体验不好。因此需要采取措施优化播报结果,使之播报成日期格式。

问题分析

流程中发现无论是通过获取ODFS系统日期SYS.systemDate,还是通过获取TUC槽位的日期实体值,都是yyyyMMdd格式,均没有自动转换格式的能力,怀疑是局点使用的TTS(Text to Speech0)系统对日期格式有要求。

根据同局点提供的TTS进行对接调试发现,2019/08/01这种格式的日期字符串送到TTS可以正常播报为年月日的形式,因此需要在放音前手工处理,将格式进行转换。

解决方法

在语义识别图元后添加一个业务接口调用图元,将语义识别图元中的槽位变量的值通过Java的字符串处理函数substring()进行格式转换和拼接。

具体参数值如下所示:

TOC.ChatBotMonth.substring(0,4)+"/"+TOC.ChatBotMonth.substring(4,6)+"/"+TOC.ChatBotMonth.substring(6,8)+ " a "+TOC.ChatBotMonth.substring(9,13)+"/"+TOC.ChatBotMonth.substring(13,15)+"/"+TOC.ChatBotMonth.substring(15,17)

Month为语音识别图元执行时获取的槽位变量名,在系统中使用TOC.ChatBotMonth表示。

槽位变量的使用方法请参见参数

如何配置多槽位反复填充场景?

问题描述

要实现与机器人交互来进行订餐的话术,需要获取的槽位信息有,订餐日期,时间,人数等,要求支持用户在与机器人交互的过程中随时更改已填过的槽位。

例如用户已说过“明天晚上6点,3个人”,但是确认环节时,又说“改成7点吧”,系统需要重新填槽,时间改成晚上7点。

根据当前ODFS的处理方式,如果使用意图模板的槽位必填校验,则会造成修改后的槽位信息不能立刻修改;而如果使用清除上下文重新填槽位,则不需要修改的槽位也会被清空。

解决方法

可使用如下方法实现多轮对话中用户反复变更信息的场景:

  1. 在意图模板配置时,将所有的槽位都设置成非必选槽位,这样不会使TUC在一个意图里缓存已填槽位。等待下次交互获取下一个槽位信息,避免了槽位已填就不能修改的问题。
  2. “响应”页签添加根据不同槽位信息返回不同命令字的判断逻辑。

  3. 在流程编排页面,通过流程对意图返回命令字进行分支判断,播放不同的语音。

    每一次的识别交互,都填一次槽,填上一个或多个就返回不同的意图码给对话流程,对话流程将每次交互获取的槽位信息,缓存到流程变量中,从而实现每次识别都能根据ODFS缓存的信息来刷新槽位填充的内容。

IVR与ODFS交互出现死循环的检查方法

问题描述

通过IVR拨测流程,当出现放音失败,比如TTS对接问题或者放文件音时文件不存在等异常情况时,流程异常终止,检查IVR和ODFS日志,发现出现疑似死循环的日志出现,主要现象是TTS一直播报the system error。

问题分析

当IVR执行系统返回的放音时,如果放音失败,则向IVR向OIAP系统发起sys_err的请求,此时系统无法再处理sys_err的时候触发了异常,而系统的对话流程并未找到异常子流程进行处理,则直接返回IVR默认的异常TTS内容返回信息。

IVR在接收到默认TTS内容播报时也播放失败,继续发送sys_err的请求给OIAP,而OIAP继续触发异常返回异常TTS,即使用户挂机,IVR业务无法捕获挂机事件,只能发送sys_err请求,因此出现死循环。

根据上述分析,造成错误的原因可能如下:

  • 未配置sys_err意图或未识别意图
  • 对话流程中未配置异常的条件分支

解决方法

可以对您的意图模板和对话流程做如下检查:

  • 检查分支判断是否考虑全面:
  1. 在进行各个图元的条件分支定义时,尽量保证所有条件的合集能包含所有正常异常的场景,避免出现实际产生的结果无法匹配所配置的各个分支。图元后续的连线,没有选择条件时,就是默认分支,这个分支的连线务必要处理。

  2. 对话流程中要创建一个异常子流程,子流程里可简单播放一个系统异常的语音,只支持放音不支持按键和识别,然后直接结束。

  • 检查意图模板中是否配置了未知意图。

    在8.9.0版本及以后版本中,新建的领域下已经预置了几个常用的意图模板,请确保这些意图模板未被删除,如果不存在未知意图,请自行配置, 确保未知意图的“响应”页签,意图回复的“命令”配置为“UNKNOWN_INTENT”,如图1所示。

    图1 未知意图配置页面

如何在流程中配置语音识别错误次数?

问题描述

流程在进行语音识别交互时,对话流程提供了默认的错误次数控制,具体处理机制为:

  1. IVR识别超时,则记录一次timeout。
  2. IVR识别错误以及意图模板拒识则记录一次 nomatch。
  3. OIAP会进行次数累加,超时和拒识是重叠计数的,累计达到三次,则默认会记录成error3的条件。

只支持同一个语音识别的图元下进行计数。

以上固定的规则,只能满足同一识别场景,超时与拒识一起计数,且到三次即停止。

但是当需求要求超时次数与拒识分开计数时、或者多次识别共同计数、或者其他的错误场景也累计到此错误、甚至错误次数不止三次等等,上述规则则不能满足了。

解决方法

当默认的规则不满足需求要求时,可以使用业务计数规则:

使用业务接口调用图元,自定义计数变量,可使用GLOBAL级别或者FLOW级别,分别可以用于不同计数场景;当识别超时,或者拒识可设置不同的分支,分别连接到次数累加图元:

根据错误次数变量来决定走什么样的分支,比如播放错误提示,或者直接返回重新播放提示音等等。

如何设置呼叫中心呼叫黑名单?

客户拨打电话可以找到之前通话过的客服座席么?

在熟知座席工号的情况下,IVR支持转座席处理,详细操作请参考配置普通IVR

呼叫中心是否支持指定座席接听?

IVR流程配置中支持转座席操作,需已知座席工号,详细操作请参考配置普通IVR

呼叫中心是否支持根据座席上下班时间设置不同提示音?

您可以在IVR中配置相关流程,使用不同放音提示提醒客户座席工作时间。具体IVR流程配置可参考配置普通IVR

呼叫中心是否支持其他产品?

呼叫中心支持智能语音导航产品,可以实现自助式导航功能,具体配置可参考配置普通IVR

呼叫中心是否可以不用人工参与完成某些查询业务?

可以选择智能IVR流程,根据客户语音识别完成查询业务。

如何配置来电提示音?

在IVR流程中配置放音图元,当前支持“语音”、“文字转语音”和“视频”三种类型的语音提示。

通过呼叫中心提供的API能否创建一个IVR流程?

不能,IVR流程需要在云联络中心系统界面上创建,创建完成后可以通过调用IVR的ID引用在API接口中。

如何处理IVR流程发布失败?

IVR流程状态为发布失败,可以通过以下办法排查:

  • 放音图元中TTS转语音文件中存在空格,TTS无法识别,造成IVR流程发布失败。
  • 单击所选图元,检查右侧图元信息必填内容是否填写完整。
  • 检查图元间连线是否完整,,从开始图元开始,连接所有图元,到结束图元结束。

根据以上方法排查后流程依然发布失败,请联系云客服运营人员处理。

如何创建一个简单的机器人流程?

请参考和机器人说你好

机器人是否支持语音文本转换或者情绪识别功能?

智能IVR流程支持语音文本转换功能以及情绪识别功能,具体内容可以参考配置智能IVR

从多媒体服务变到转语音的时候,是座席呼叫客户吗?

不是,如果是全能型座席场景,是直接在音视频技能队列里面来的呼叫。

如果是多媒体座席的协同呼叫,用户可以发起匿名呼叫到座席,座席可以发起点击呼叫到已经接入的用户,点对点的。