目录

  • 讯飞AIUI语音助手功能集成 一
  • 讯飞AIUI语音助手功能集成 二
  • 讯飞AIUI语音助手功能集成 三
  • 官方网站
  • 1. 文档流程
  • 应用信息
  • 应用配置
  • 情景模式
  • 识别设置
  • 识别热词
  • 语义理解

讯飞AIUI语音助手功能集成 一

讯飞AIUI语音助手功能集成 二

讯飞AIUI语音助手功能集成 三

官方网站

项目中需要用到语音识别和播报功能。看了网上关于智能语音的大厂,由于一直使用讯飞输入法,感觉不错,这里选择讯飞的SDK。

如果是直接到讯飞的开放平台,则会看到提供的服务和语音交互相关的有以下。 语音识别 语音合成 语音分析 和 自然语言处理。

第一次接触,直接使用的 语音识别和语音合成相关的功能,但缺少了语义的解析。只能机械的使用自己定义的模板来翻译,效果很不好。

最后查看 AIUI 文档。AIUI 是讯飞提供的一套成熟的人机交互智能解决方案。创建好应用后可以直接接入现有的技能实现 常见的“天气播报”,“新闻播放”等,如果自己应用中有特殊的交互处理,可以自定义相关技能来命中识别定义的意图,来执行相关的命令。

android vad 讯飞 讯飞功能_android vad 讯飞

1. 文档流程

参考 AIUI文档中心 快速入门 以下只作简单的记录,方便日后查询

打开官网后,选择顶部应用接入,然后点击进入应用。如果还没有应用需要创建自己的应用,按照提示创建即可。

创建完应用后,点击应用进入。如下图。

android vad 讯飞 讯飞功能_讯飞_02

其中左侧一列为应用的基本标签页,可以点击看下相关功能。

应用信息

android vad 讯飞 讯飞功能_实体类_03

应用信息中的 APPID 是在集成时需要使用的。

应用配置

点开其中的高级设置,如下图

android vad 讯飞 讯飞功能_自定义_04

情景模式

情景模式是应用使用的场景。一个应用可能会有 老年人模式,青少年模式等,每个模式中对应的 技能也是不一样的。这里可以添加任意模式。

在语音交互时,可以通过程序主动切换到对应的模式。比如应用中有对应的切换模式按钮。

识别设置

根据需要选择需要的,一般 识别结果添加标点 除外 其他全选。

识别热词

对于应用中有一些特有的词,可以下载模板,添加进来。如 有的应用可能有自己的组合词 如 测量类的 血氧 可能会翻译为 学养 ,家医 翻译为 加一 +1 等。把这些容易混淆的词加入热词中,配上权重,会更容易识别。

语义理解

其中的关键词过滤,主要是用在唤醒词的过滤。

语义技能:

这其中设置了 技能的概念。 参考 AIUI文档中心 技能开发

这里作简单记录。

我们需要语音交互让app去做的任何一件事情都是一个技能。比如 打开 某某,播放 某某。这里以 设计一个 控制播放类的技能为例。

一般我们口语化的说法是,播放人在江湖,我要看蓝猫淘气三千问,播放电视,打开电影,快进十分钟,快退一分钟,暂停,播放。

这里我们可以拆分这两种形式,一种是打开视频类的,一种是控制视频类的。

我们把 播放 要看 打开 归为一个实体类,这个实体类为 open类

我们把 快进 快退 暂停 继续 关闭 播放 归为一个实体类,这个实体类为 control类

然后把 open类+名称 的形式称为 播放类意图

把 control类 的形式称为 控制类意图。

点击语义技能中的 自定义技能,添加技能。会跳转到技能控制台。

其中有 我的技能 我的实体 我的辅助词 设备人设 我的问答库。 主要在 我的技能和我的实体。

点击创建技能

这里取名为 播放控制

android vad 讯飞 讯飞功能_语音助手_05

创建成功后,跳转到意图界面,这里我们创建意图,暂时不引用官方意图。

android vad 讯飞 讯飞功能_android vad 讯飞_06

继续填写 意图名称和标识

完成后,会看到如下界面

android vad 讯飞 讯飞功能_讯飞_07

主要有这几个版块

  • 语料
    语料简单的说可以认为 ,一个操作有多少种可能的说法,尽量多的涵盖。在输入语料时会匹配到我们设定的实体或者官方的实体。比如我们刚才设置的 控制类实体 {play_control} 只要语料中包括 play_control 中的内容都属于包含了。可以先看创建实体部分。
    实体部分创建完成后。
    我们输入我们的常规语料如 快进十分钟。

android vad 讯飞 讯飞功能_实体类_08

这时会看到 快退已经匹配了我们设置的实体库中的 play_control 十分钟匹配的是讯飞自带的时间实体。

如果我们转入倒退十分钟看情况

android vad 讯飞 讯飞功能_自定义_09

由于倒退不在实体中,所以只匹配了 十分钟。

这时我们点击构建技能。

由于实体 play_control 已经被引用,所以实体中的所有词条都会匹配。并且语料库中增加了 倒退十分钟,所以这里 倒退十分钟也能被识别,但倒退五分钟可能就识别不了。

android vad 讯飞 讯飞功能_讯飞_10

这里可以看到,匹配的实体。

单个实体控制我们需要添加进语料,如 暂停 播放。 只是单纯的指令。

android vad 讯飞 讯飞功能_语音助手_11

android vad 讯飞 讯飞功能_语音助手_12

这样我们就能够单独的匹配实体了



构建完技能后,选择左侧的发布。就可以在自定义技能中使用该技能了



选择发布后,点击构建技能,构建成功后,选择最下方的发布上线



然后回到 应用配置界面

android vad 讯飞 讯飞功能_自定义_13

选择刚才的 播放控制,然后点击右上角保存修改

在右侧模拟测试中,看下 刚才的 命令是否能够识别

android vad 讯飞 讯飞功能_自定义_14

能够正常识别 ,说明该技能已经成功
  • 实体
    点击左上角我的列表,然后选择 我的实体 点击创建实体

android vad 讯飞 讯飞功能_讯飞_15


android vad 讯飞 讯飞功能_讯飞_16

点击进入后,创建词条,每个词条可以设置对应的别名,这样扩展能力更大,返回的json中 默认 normValue为词条名称,value为 别名。

android vad 讯飞 讯飞功能_自定义_17

创建好后,点击构建实体
  • 辅助词
    可以设置口语中的语气词或者其他用到的辅助词 ,如 你可以来一下吗,这里的一下 可以作为辅助词
  • 技能回复
    需要采集用户数据的指定问答类型的交互。可能参考 文档 快速开始中的功能
  • 意图确认
    在问答类交互最后槽值填满后是否会确认一下,正常做法是需要确认操作。