【案例教学】华为云API对话机器人的魅力—体验AI垃圾分类机器人

云服务、API、SDK,调试,查看,我都行

阅读短文您可以学习到:人工智能AI自言语言的情感分析、文本分词、文本翻译

1 IntelliJ IDEA 之API插件介绍

API插件支持 VS Code IDE、IntelliJ IDEA等平台、以及华为云自研 CodeArts IDE,基于华为云服务提供的能力,帮助开发者更高效、便捷的搭建应用。API插件关联华为云服务下的 API Explorer、DevStar、CodeLabs、SDK 中心和 CLI 中心产品,致力于为开发者提供更稳定、快速、安全的编程体验。

在本插件中,我们提供了但不局限于如下的功能:

对接华为云API开放平台,支持用户检索API、查看API文档、调试API、以及提供SDK示例代码供用户学习如何使用API。

提供华为云SDK代码片段补全功能,SDK依赖包自动引入,加速用户集成华为云API。

对接华为云开发体验馆Codelabs,提供500+云服务代码示例,向导式教程帮助用户快速学习。

说明:

在IntelliJ IDEA等系列平台和VS Code IDE,华为云API插件的名称是Huawei Cloud API。而在CodeArts IDE,API插件是IDE原生内置的,名称是华为云API开发套件。

API插件在IntelliJ IDEA等系列平台和VS Code IDE的使用依赖底座插件,请提前安装底座插件。

2 API插件安装--IntelliJ IDEA

2.1 IntelliJ IDEA等平台

安装准备:下载并安装JDK1.8或更高版本。下载并安装IntelliJ IDEA 2020.2或更高版本。

须知:IntellIj平台同时支撑包括Goland、Pycharm等在内的IDE,若在其它相关IDE上开发,请下载配置好对应语言的编译器或者解释器。这里以IDEA为例介绍IntelliJ平台插件的安装流程,其他IntelliJ系列的IDE请参考IDEA。

开始安装:Toolkit-华为云

您可以在直接在IDE插件市场或者直接在JetBrains插件市场下载离线包安装。

IDE安装

  1. 在IntelliJ IDEA顶部菜单栏中选择File > Settings,在Settings对话框的左侧导航栏中单击Plugins。
  2. Plugins区域单击Marketplace,在搜索栏中输入Huawei Cloud API。
  3. Search Results区域会出现Huawei Cloud API,单击Install,完成后重启IDE。

离线包安装:

  1. 进入插件市场搜索Huawei Cloud API,进入插件详情页,在Versions页签下选择想要版本的API插件,点击Download下载离线的插件压缩包保存到本地。。
  2. 在IntelliJ IDEA顶部菜单栏中选择File > Settings,在Settings对话框的左侧导航栏中单击Plugins。
  3. 在Plugins区域单击 ,再单击Install Plugin from Disk...。
  4. 在Choose Plugin File对话框中选择离线安装包(不用解压),并按照IntelliJ IDEA安装页面的提示,完成后续安装步骤。

说明:若当前您想要安装插件的IntelliJ IDE已经在桌面打开,则进入插件市场搜索Huawei Cloud API,进入插件详情页,在右上角会识别到本地已经打开的IDE,点击相应按钮,在弹出的IDE窗口中点击ok,则IDE后台会开始安装相应版本的API插件。

安装验证:在IntelliJ系列平台上安装插件成功后在左侧的导航栏中可以看到Huawei Cloud Toolkit图标,点击后面板会出现Huawei Cloud API的字样,则说明安装成功。

3 使用对话流程,搭建复杂逻辑的AI对话场景

3.1 华为云API

左侧展示API列表,可以查询所有API,目前云服务206,APIs9213

Toolkit-华为云

3.2 使用对话流程配置复杂场景的多轮对话

什么是对话机器人服务?

对话机器人服务(Conversational Bot Service)是一款基于人工智能技术,针对企业应用场景开发的云服务,主要包括智能问答、智能质检、定制对话机器人和任务型对话等功能。

对话机器人服务中的技能管理是打造任务型对话技能的工具平台。通过创建管理不同技能和词典,满足不同的用户需求,实现不同场景下的多轮对话能力。

在本案例中,您将使用CBS的技能管理为机器人快速配置技能,通过多轮对话实现机器人垃圾分类技能。

案例目标:掌握使用CBS技能的使用方法。掌握使用CBS创建垃圾分类流程配置的方法。

体验垃圾分类机器人配置,需要完成以下准备工作:

创建华为云账号并实名认证。

注册华为云账号。完成实名认证,推荐使用扫码认证。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0133456714.html

下载数据:

.
├── DB_query_rubbish_type.py
└── rubbish_dict.txt

创建试用版智能问答机器人:由于技能管理是专业版智能问答机器人下的功能,因此首先我们需要购买一个试用版专业版问答机器人。 点击此链接,进入对话机器人服务智能问答机器人页面,点击右上角的购买问答机器人,进入问答机器人购买页面。https://console.huaweicloud.com/cbs/?region=cn-north-4#/home/qa-robot

分别输入问答机器人名称,选择试用的计费模式,并点击立即购买完成支付,即完成试用专业版机器人创建。

问答机器人创建成功后,返回对话机器人服务主页面,等待机器人创建成功后,点击“机器人名称”进入机器人,左侧的标签栏中会有一项技能管理。

创建词典:

添加垃圾类型词典,进入对话机器人服务,点击进入相应的机器人,点击“技能平台”,再点击“实体管理”按钮,按照下图指导添加垃圾类型词典:https://console.huaweicloud.com/cbs/?region=cn-north-4#/home/qa-robot

词典标识:rubbish

词典名称:垃圾物品

点击“确认”按钮,创建该词典,并进入“编辑”页面。

导入词条

点击页面上的“导入”按钮,然后点击“添加文件”按钮,上传本地文件夹下的rubbish_dict.txt文件,导入模式选“追加”,最后点击“确定”按钮,即可完成垃圾物品词典词条导入。如下图所示:

技能配置:

本节将添加语料并标注,配置机器人的“垃圾分类”技能。

点击此链接,https://console.huaweicloud.com/cbs/?region=cn-north-4#/home/qa-robot。进入对话机器人服务的“技能管理”,新建垃圾分类技能并进行技能配置。

创建技能

点击“添加技能”按钮,选择“多轮对话技能”,点击下一步,输入技能名称:垃圾分类,如下图所示:

创建意图:

技能创建完成后,点击进入“垃圾分类”技能,在意图列表中点击“创建”按钮,如下图指导填写:

意图标识:query_rubbish_type

意图名称:判断垃圾种类

然后点击“确认并继续设置”按钮,继续配置该意图。

添加用户问法语料

进入“判断垃圾种类”意图的“用户问法”,点击“用户问法语料”输入框下方的蓝色字体“批量添加用户问法语料”,复制下方的语料至弹出对话框,点击“确认”完成用户问法预料导入。

书怎么处理

书是什么垃圾

其他垃圾包括牙签吗

其他垃圾里有护手霜

卫生纸如何回收

卫生纸属于哪种垃圾

厨余垃圾包括苹果皮吗

厨余垃圾里有土豆皮吗

可乐瓶应当怎样处理

可回收垃圾包括铁皮吗

语料添加完之后,滑动页面到最下方,点击“保存”。可以得到如下结果:

添加槽位

往下滑动页面,找到“槽位管理”页面,创建槽位:rubbish(垃圾类别),然后点击“添加槽位”按钮,按照如下指导,添加rubbish_goods槽位:

关联槽位:不关联

槽位标识:rubbish_goods

槽位名称:垃圾物品

是否必须:

追问轮数:1

输入框:你说的能再具体点吗?

词典选择:rubbish

答案候选:不勾选

然后点击“确定”按钮。槽位添加完成后,滑动页面到最下方,点击“保存”。

语料标注:

往上滑动页面,回到“用户问法”,对“用户问法语料”列表中的语料进行标注。

选中关键词,然后使用槽位对关键词标注。

标注完成后,如下图所示:

添加用户问法模板

点击“用户问法”中的“用户问法模板”页面中添加模板。

点击“添加模板”按钮。模板内容如下图所示,在相应位置点击下方槽位名称插入相应槽位。完成配置后用户即可使用模板的问法与机器人进行对话。

添加模板:

问法模板添加完成后,滑动页面到最下方,点击“保存”。

配置对话流程

点击“配置对话流程”,完成复杂的对话逻辑配置。

从左侧节点栏拖拽一个“条件判断”节点到“对话开始”节点下方,并连接起来两个点。

点击“条件判断”,完成如下图所示的设置:

再从左侧节点栏拖拽一个“信息收集”节点到“条件判断”节点下方,并连接起来两个节点,如下图所示:

函数配置可参考此链接中的第六章节:

开发体验馆Codelabs

函数参考代码如下:

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
# @Version : Python 3.6
import json
import requests
# 定义一个垃圾类型的处理建议词典
rubbish_info = {
    0: "分类投放可回收物时应保持清洁干燥,避免污染,轻投轻放;其中废纸尽量平整;立体包装物请清空内容物,清洁后压扁投放;有尖锐边角的,应包裹后投放。",
    1: "充电电池、纽扣电池、蓄电池投放时应注意轻放;油漆桶、杀虫剂如有残留请密闭后投放;荧光灯、节能灯易破损连带包装或包裹后投放;废药品及其包装应一并投放进垃圾桶中。",
    2: "有包装物的厨余垃圾应取出后分类投放;大块骨头和椰子壳、榴莲壳等不易生化降解,作为干垃圾进行投放;纯液体(如牛奶等)食物垃圾可直接倒入下水口;其余应沥干水分后再投放进厨余垃圾桶。",
    3: "干垃圾应尽量沥干水分,投入干垃圾容器内。",
}

# 调用垃圾分类API
def get_response(word, mode=1):
    """
    调用天行API接口 获取垃圾分类信息
    :param word: 需要查询的垃圾物品
    :return: 返回改垃圾物品的分类信息
    """
    key = "替换成apikey" # 可浏览https://www.tianapi.com/注册获取apikey
    url = "http://api.tianapi.com/lajifenlei/index"
    data = {
        "key": key,
        "word": word,
        "mode": mode,
    }
    headers = {'Content-type': 'application/x-www-form-urlencoded'}
    res = requests.post(url, data=data, headers=headers, verify=False)
    return res.json()
# 函数入口
def handler(event, context):
    """
    """
    slot_temp = json.dumps(event, ensure_ascii=False)
    slot_info = json.loads(slot_temp)
    logg = context.getLogger()
    logg.info(slot_temp)
# 获取槽位信息,即槽位取到的值
    word = slot_info.get("goods", None)
    result = {
        "content": "我不知道这是什么,换个垃圾物品吧~"
    }
    if word:
        res = get_response(word)
# 判断API响应码
        if res['code'] != 200:
            result["content"] = "数据源资源不足!"
            return json.dumps(result, ensure_ascii=False)
        all_data_list = res.get("newslist", [{}])
        filter_data_list = list(filter(lambda x: x.get("name", "") == word, all_data_list))
        if filter_data_list:
            _type = filter_data_list[0].get("type", 4)
            rubbish_result = ""
            logg.info(word)
# 根据垃圾类型拼接返回值
            if _type == 0:
                rubbish_result = "{}是可回收垃圾。投放建议:{}".format(word, rubbish_info[_type])
            elif _type == 1:
                rubbish_result = "{}是有害垃圾。投放建议:{}".format(word, rubbish_info[_type])
            elif _type == 2:
                rubbish_result = "{}是厨余垃圾(即湿垃圾)。投放建议:{}".format(word, rubbish_info[_type])
            elif _type == 3:
                rubbish_result = "{}是其他垃圾(即干垃圾)。投放建议:{}".format(word, rubbish_info[_type])
            else:
                pass
            if rubbish_result:
                result["content"] = rubbish_result
    logg.info(json.dumps(result, ensure_ascii=False))
return json.dumps(result, ensure_ascii=False)

模型训练发布

在“垃圾分类技能”页面中,进入“发布测试”页面,点击“训练模型”按钮,勾选“用户常用问法”,技能阈值默认即可。点击“确定”开始模型训练,训练时长大概3分钟。

模型训练完成后,点击“线上发布”按钮发布模型。

技能体验:

模型发布完成后,回到“技能管理”页面,点击右上角“对话体验”按钮

下图是一组对话样例:

4 参考文献

创建一个问答机器人_ 对话机器人服务 CBS_用户指南_智能问答机器人_华为云

https://console.huaweicloud.com/cbs/?region=cn-north-4#/cbs/management/skills

5 体验插件的魅力

华为云devkit已上线

Toolkit-华为云协同华为云云端的云服务产品,支持主流 IDE 平台包括(IntelliJ系列、VS Code),以及华为云自研 CodeArts IDE,提供诸如API检索调试、代码补全、一键部署等丰富功能,致力于为开发者提供更稳定、快速、安全的编程体验。icon-default.png?t=N7T8https://developer.huaweicloud.com/develop/toolkit.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 华为云AI人工智能开发者入门级考试实验主要包括以下几个步骤: 1. 注册华为云账号:首先,考生需要在华为云官网注册一个华为云账号,获取账号和密码。 2. 登陆华为云平台:使用注册的账号和密码登陆华为云平台,进入控制台。 3. 创建实验环境:在控制台中,选择AI服务,然后选择自然语言处理(NLP)服务,按照指引创建一个NLP实验环境。 4. 获取API密钥:在成功创建实验环境后,进入NLP服务,获取API密钥,确保后续调用接口时能够进行身份验证。 5. 下载并配置实验代码:在实验环境中,选择合适的编程语言(如Python),下载并配置相应的实验代码,以便后续调用API进行开发。 6. 测试API接口:使用下载并配置好的实验代码,调用NLP的API接口,进行简单的测试,确认接口调用正常。 7. 完成自定义开发:根据实验考题要求,进行自定义的开发,可以调用NLP的各种接口,实现相应的功能。 8. 实验报告提交:完成实验开发后,根据考试要求,将实验代码、运行结果以及相关文档整理成实验报告,按照指定格式进行提交。 以上就是华为云AI人工智能开发者入门级考试实验的基本步骤。通过完成实验,考生能够更好地了解和掌握华为云平台上AI服务的使用方法,并能够进行简单的开发和调试。 ### 回答2: 华为云AI人工智能开发者入门级考试实验步骤主要包括以下几个步骤: 第一步:了解实验要求与背景知识 首先,仔细阅读考试实验要求,理解所需完成的任务和考察的知识点。同时,需要掌握一定的人工智能基础知识,如机器学习、深度学习等。 第二步:安装环境与配置相关软件 根据实验要求,安装并配置相关的人工智能开发环境,如Python编程环境、TensorFlow、PyTorch等深度学习框架以及相关的数据处理、数据可视化工具等。 第三步:收集与处理数据 根据实验要求,收集所需的数据集并进行预处理,包括数据清洗、去除异常值等。可使用Python编程语言及相关的数据处理库进行数据处理工作。 第四步:选择与建立模型 根据实验要求,选择合适的机器学习或深度学习模型,并进行模型的建立与调优。可以根据任务需求,选择适合的模型架构,如卷积神经网络、循环神经网络等,并根据实验提供的数据集进行模型训练。 第五步:模型评估与结果分析 使用训练好的模型对测试数据进行预测,并评估模型的性能。可以使用一些评价指标,如准确率、召回率、精确率等对模型进行评估,并进行结果分析,分析模型的优点与不足之处。 第六步:撰写实验报告 根据实验要求,撰写实验报告,详细介绍实验的整个流程、使用的方法、所得结果以及对结果的分析与讨论。在报告中,要清晰地描述实验步骤,提供相应的代码和结果展示,并给出必要的结论和建议。 总结: 华为云AI人工智能开发者入门级考试实验步骤主要包括了解实验要求与背景知识、安装环境与配置软件、收集与处理数据、选择与建立模型、模型评估与结果分析,以及撰写实验报告。通过这些步骤,考生可以完成实验任务并提交相应的实验报告。 ### 回答3: 华为云AI人工智能开发者入门级考试实验主要包括以下步骤: 1. 准备工作:首先,需要注册华为云账号,并登录华为云AI开发者平台。获取实验相关的资料和教程,确保对相关知识和技能有一定的了解。 2. 环境搭建:根据实验要求,下载和安装相应的开发工具和软件,例如Python编程环境、Jupyter Notebook等。确保环境搭建正确无误。 3. 实验准备:根据实验要求,准备实验所需的数据集和模型。可以使用华为云提供的开放数据集或自己准备的数据集。 4. 实验步骤:根据实验指导,按照步骤进行实验。可能涉及到各种人工智能领域的任务,例如图像识别、语音识别、自然语言处理等。根据具体要求,编写代码、运行程序并进行调试。 5. 实验结果分析与总结:在实验过程中,记录实验结果和观察到的现象,根据实验结果分析实验效果和准确度。进行总结和归纳,发现问题和不足之处。 6. 提交实验报告:根据实验要求,整理实验过程、结果及分析,撰写实验报告。说明实验的目的、方法和技术实现,展示自己对于人工智能开发的理解和应用能力。 7. 评估和反馈:提交实验报告后,会有专业人士对实验报告进行评估和反馈。根据反馈进行改进和学习,提高自己的能力和水平。 总之,华为云AI人工智能开发者入门级考试实验步骤主要包括准备工作、环境搭建、实验准备、实验步骤、实验结果分析与总结、提交实验报告以及评估和反馈。通过这些步骤,可以提升自己在人工智能领域的开发和应用能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值