讯飞AIUI智能机器人4-----让器理解你(语义理解)

在这里插入图片描述


作者 : 不良使
潜力创作新星 华为云享专家
博客记录学习的思路,项目和错误,寻找志同道合的朋友
如果觉得有帮助记得一键三连 ┗|`O′|┛ 嗷~~

简介

通过 AIUI 开放平台的语义技能的配置,结合机器人客户端智能 应用的开发,了解 AIUI 语义理解的调用过程,同时对语义配置的流程 和步骤进行详细讲解,理解掌握起来更加轻松。主要有以下三个方面:
1、了解 AIUI 商店技能、自定义技能和问答库的添加基本流程;
2、了解 AIUI 平台语义设计和配置方法;
3、掌握基础的语义技能中意图、语料、实体及辅助词的配置方法。


内容

语音交互技术作为人工智能领域的核心组成部分,也是智能机器人技术发展 的重要要素。语音交互技术主要包含以下几个方面:
1、 语音合成技术,将文本内容合成为自然语音,并通过设备发声;
2、 语音识别技术,将自然语音通过转写引擎识别为文本内容;
3、语义理解技术,对自然语言文本的理解,识别其具体表达的意思。 本次实验通过完成一个智能语音控制的音乐播放器,来深入了解语义平台的 使用流程以及相应的语义功能在项目中的实现方法,具体如下:

讯飞AIUI智能机器人4-----让器理解你(语义理解)_第1张图片


步骤

步骤 1:AIUI 开放平台应用添加及设置

**
在使用 AIUI 开放平台的语义理解功能之前,我们需要先参考“语音识别技 术体验_实验指导书”完成应用的添加,然后,在应用配置页面开启应用的“语 义理解”功能,如下图所示**
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第2张图片

技能工作室。当商店技能无法满足我们个性化的需求,需要处理特定的任务,例如,实现 校园卡业务的咨询和办理,日常的带路等任务时,我们可以利用技能工作室(Skill Studio)完成自定义技能的设计、开发、测试、发布等工作;开发者可以通过可 视化的界面,快速高效地将自己的创意、产品或服务,通过语音技能传达给智能 硬件的用户。 点击 AIUI 开放平台页面上方的“我的技能”菜单,通过引导,进入“技能 控制台”页面
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第3张图片
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第4张图片

意图指用户在技能中可能的请求或目的。作为”机器人控制”技能,可以满足 用户增大音量、减小音量、查询电量等需求。 用户在完成某一意图时,可能会有很多种提问方式,这些提问方式我们统称为 语料。为保证良好的体验,开发者需要尽可能完善用户所有的提问方式。

语料中,同一类型的名词将会被总结为实体。
示例:
⚫ 明天合肥天气怎么样
⚫ 后天北京天气怎么样 抽象成模板语料为:{time}{city}天气怎么样 其中,time 为时间实体,city 为城市实体。平台提供了部分较为通用的官方实 体,可在语料配置中引用。
为了满足开发者快速编写语料的需求,同时兼顾语料的可维护性,平台提出了 辅助词的概念。 实体和辅助词在本质上都是同一类词的集合,一些会严重影响到我们理解的词, 我们倾向使用实体去定义,另一些不会太影响我们理解的词,我们则倾向于用辅 助词去定义。

讯飞AIUI智能机器人4-----让器理解你(语义理解)_第5张图片

自定义技能和自定义问答

完成技能工作室中本次实验语义的数据设置后,我们开始将相应的自定义语义 技能和自定义问答库添加到我们的实验应用中。 添加自定义技能:在应用配置页面,点击语义技能区域的“自定义技能”链接, 然后点击下方的“添加自定义技能”按钮,在弹出的界面中选择之前在技能工作 室中添加的“技能”后点击“确定”按钮。
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第6张图片
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第7张图片


步骤 2:项目工程搭建及能力包导入

讯飞AIUI智能机器人4-----让器理解你(语义理解)_第8张图片
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第9张图片


步骤 3:项目 AIUI 能力导入及配置

完成了工程项目的搭建后,我们需要在项目工程中集成 AIUI 能力,具体步 骤如下:
一、首先,导入配置文件,将 aiui.cfg 文件导入到应用工程目录:src/main/assets/cfg/ (该文件示例工程同目录中可获取);
二、修改 aiui.cfg 文件中的配置信息,具体如下:

1. / AIUI 参数配置 /
/
login 相关参数 /
“login”:{
“appid”:"
******“,
“key”:”
*********************"
}
/* 交互参数 /
“interact”:{
“interact_timeout”:“60000”,
“result_timeout”:“5000”
},
/
全局设置 */
“global”:{
“scene”:"
"
}, 修改代码中*标识的位置,主要包括 appid,appkey ,scene(场景),将 AIUI 平台创建的应用相关信息填入。 同时需要在 AndroidManifest.xml 中完成权限申请,如下图所示


讯飞AIUI智能机器人4-----让器理解你(语义理解)_第10张图片

步骤 4:功能代码开发(部分)

public class MusicPlayUtils {

    private Context mContext;
    private MediaPlayer mMediaPlayer;


    /**
     * 监听播放完成
     */
    public interface onPlayCompletedCallback {
        void onCompleted();
    }

    public MusicPlayUtils(Context ctx) {
        mContext = ctx;
        mMediaPlayer = new MediaPlayer();
    }

    /**
     * 判断是否正在播放
     *
     * @return
     */
    public boolean isPlaying() {
        try {
            return mMediaPlayer.isPlaying();
        } catch (Exception e) {
            return false;
        }
    }

    /**
     * 停止播放
     */
    public void stop() {
        if (null != mMediaPlayer) {
            mMediaPlayer.stop();
            mMediaPlayer.reset();
        }
    }

    /**
     * 暂停播放
     */
    public void pause() {
        if (null != mMediaPlayer && mMediaPlayer.isPlaying()) {
            mMediaPlayer.pause();
        }
    }


    /**
     * 继续播放
     */
    public void resume() {
        if (null != mMediaPlayer) {
            mMediaPlayer.start();
        }
    }

    /**
     * 播放
     *
     * @param fileName  音频文件地址
     * @param mCallback 播完的回调
     * @return
     * @throws JSONException
     */
    public void playLocalMedia(String fileName, final onPlayCompletedCallback mCallback) {
        if (null == mMediaPlayer) {
            return;
        }
        if (mMediaPlayer.isPlaying()) {
            Log.e("MediaPlayer", "MediaPlayer is busying now!");
            return;
        }
        try {
            AssetManager am = mContext.getAssets();
            mMediaPlayer.setDataSource(am.openFd(fileName));
            mMediaPlayer.setOnCompletionListener(new
                                                         MediaPlayer.OnCompletionListener() {
                                                             @Override
                                                             public void onCompletion(MediaPlayer mp) {
                                                                 mCallback.onCompleted();
                                                             }
                                                         });
            mMediaPlayer.prepare();
            mMediaPlayer.start();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

结果

讯飞AIUI智能机器人4-----让器理解你(语义理解)_第11张图片
讯飞AIUI智能机器人4-----让器理解你(语义理解)_第12张图片


参考资料与扩展阅读

1)Android 开发工具网站
2)Android 开发者社区
3)科大讯飞 AIUI 开放平台
4)科大讯飞开放平台文档中心


最后,兄弟们悠着点,免费(白嫖)用户,一天就500次交互机会,手下留点情。
源码链接:Android学习代码(全)需要自取







觉得有用的可以给个三连,关注一波!!!带你了解更多的智能机器人小知识

你可能感兴趣的:(Android机器人,语音识别,人工智能,自然语言处理,android)