华为云 API 对话机器人 CBS 的魅力—实现简单的对话操作
云服务、API、SDK,调试,查看,我都行
阅读短文您可以学习到:人工智能 AI 智能的问答管理、全面的对话管理、高效训练部署
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 的使用依赖底座插件,请提前安装底座插件。
API 插件安装--IntelliJ IDEA
IntelliJ IDEA 等平台
安装准备:下载并安装 JDK1.8 或更高版本。下载并安装 IntelliJ IDEA 2020.2 或更高版本。
须知:IntellIj 平台同时支撑包括 Goland、Pycharm 等在内的 IDE,若在其它相关 IDE 上开发,请下载配置好对应语言的编译器或者解释器。这里以 IDEA 为例介绍 IntelliJ 平台插件的安装流程,其他 IntelliJ 系列的 IDE 请参考 IDEA。
开始安装:https://developer.huaweicloud.com/develop/toolkit.html
您可以在直接在 IDE 插件市场或者直接在 JetBrains 插件市场下载离线包安装。
IDE 安装
在 IntelliJ IDEA 顶部菜单栏中选择 File > Settings,在 Settings 对话框的左侧导航栏中单击 Plugins。
Plugins 区域单击 Marketplace,在搜索栏中输入 Huawei Cloud API。
Search Results 区域会出现 Huawei Cloud API,单击 Install,完成后重启 IDE。
离线包安装:
进入插件市场搜索 Huawei Cloud API,进入插件详情页,在 Versions 页签下选择想要版本的 API 插件,点击 Download 下载离线的插件压缩包保存到本地。。
在 IntelliJ IDEA 顶部菜单栏中选择 File > Settings,在 Settings 对话框的左侧导航栏中单击 Plugins。
在 Plugins 区域单击 ,再单击 Install Plugin from Disk...。
在 Choose Plugin File 对话框中选择离线安装包(不用解压),并按照 IntelliJ IDEA 安装页面的提示,完成后续安装步骤。
说明:若当前您想要安装插件的 IntelliJ IDE 已经在桌面打开,则进入插件市场搜索 Huawei Cloud API,进入插件详情页,在右上角会识别到本地已经打开的 IDE,点击相应按钮,在弹出的 IDE 窗口中点击 ok,则 IDE 后台会开始安装相应版本的 API 插件。
安装验证:在 IntelliJ 系列平台上安装插件成功后在左侧的导航栏中可以看到 Huawei Cloud Toolkit 图标,点击后面板会出现 Huawei Cloud API 的字样,则说明安装成功。
使用对话流程,搭建复杂逻辑的 AI 对话场景
华为云 API
左侧展示 API 列表,可以查询所有 API,目前云服务 206,APIs9213
https://developer.huaweicloud.com/develop/toolkit.html
如何通过 CBS 实现简单的对话操作
什么是对话机器人服务?
对话机器人服务(Conversational Bot Service)是一款基于人工智能技术,针对企业应用场景开发的云服务,主要包括智能问答、智能质检、定制对话机器人和任务型对话等功能。
对话机器人服务中的技能管理是打造任务型对话技能的工具平台。通过创建管理不同技能和词典,满足不同的用户需求,实现不同场景下的多轮对话能力。
在本案例中,您将使用 CBS 的技能管理为机器人快速配置技能,通过多轮对话实现机器人垃圾分类技能。
智能的问答管理
热点问题、趋势、知识自动分析统计。
支持未知问题自动聚类,匹配相似问答,辅助人工不断扩充知识库。
支持问答调测,点对点的监测智能应答过程。
支持领域知识挖掘,提供易用的标注工具挖掘领域知识对。
全面的对话管理
支持自然语言多能力融合,智能对话中控。
灵活的知识库管理,支持对知识的批量操作。
支持嵌入多轮对话技能,满足复杂的任务型对话场景。
高效训练部署
基于 modelarts 的底层算法能力,提供更快的模型训练、部署能力。
支持多算法模型效果验证,验证不同数据、参数、模型对问法效果的影响。
支持模型最优参数组合推荐,保证问答效果。
案例目标:掌握使用 CBS 技能的使用方法。掌握使用 CBS 创建垃圾分类流程配置的方法。
体验垃圾分类机器人配置,需要完成以下准备工作:
创建华为云账号并实名认证。
注册华为云账号。完成实名认证,推荐使用扫码认证。https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0133456714.html
下载数据:
.
├── DB_query_rubbish_type.py
└── rubbish_dict.txt
创建试用版智能问答机器人:由于技能管理是专业版智能问答机器人下的功能,因此首先我们需要购买一个试用版专业版问答机器人。 点击此链接,进入对话机器人服务智能问答机器人页面,点击右上角的购买问答机器人
分别输入问答机器人名称,选择试用的计费模式,并点击立即购买完成支付,即完成试用专业版机器人创建。
购买完成之后,获取到 botid
确保已按照 Java 环境配置细则配置完毕。
集成 CBS JAVA SDK
通过 maven,将 CBS JAVA SDK 引入到系统工程中,引入之后,即可在系统工程中使用。
<dependency>
<groupId>com.huaweicloud.sdk</groupId>
<artifactId>huaweicloud-sdk-core</artifactId>
<version>3.0.89</version>
</dependency>
<dependency>
<groupId>com.huaweicloud.sdk</groupId>
<artifactId>huaweicloud-sdk-cbs</artifactId>
<version>3.0.89</version>
</dependency>
示例代码
package demo;
// 对用户身份进行认证
import com.huaweicloud.sdk.cbs.v1.CbsClient;
// 导入 cbs sdk
import com.huaweicloud.sdk.cbs.v1.model.ExecuteQaChatRequest;
import com.huaweicloud.sdk.cbs.v1.model.ExecuteQaChatResponse;
import com.huaweicloud.sdk.cbs.v1.model.PostRequestsReq;
import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
// Http 配置
import com.huaweicloud.sdk.core.http.HttpConfig;
import com.huaweicloud.sdk.core.region.Region;
public class ExecuteQaChatSolution {
public static void main(String[] args) {
// 配置账户的 AK SK 信息
String ak = "Ak";
String sk = "Sk";
// 获取 iam 站点 https://support.huaweicloud.com/api-iam/iam_16_0005.html
String iamEndpoint = "iamEndpoint"; // https://iam.cn-north-4.myhuaweicloud.com
// 获取 cbs 站点信息 https://support.huaweicloud.com/api-cbs/cbs_03_0102.html
String endpoint = "endpoint"; // https://cbs-ext.cn-north-4.myhuaweicloud.com
// 网络配置信息
HttpConfig config = new HttpConfig();
config.withIgnoreSSLVerification(true);
// 鉴权信息
ICredential auth = new BasicCredentials()
.withIamEndpoint(iamEndpoint)
.withAk(ak)
.withSk(sk);
// 初始化 cbsClient
CbsClient client = CbsClient.newBuilder()
.withCredential(auth)
.withHttpConfig(config)
.withRegion(new Region("cn-north-4", endpoint))
.build();
ExecuteQaChatRequest request = new ExecuteQaChatRequest();
PostRequestsReq body = new PostRequestsReq();
// 设置请求问题 相关参数可以参考:https://support.huaweicloud.com/api-cbs/cbs_03_0115.html
body.setQuestion("你好");
request.withBody(body);
// 设置 botId,可以参考前提条件的获取 botid 方法
request.setQabotId("botid"); // bot id
ExecuteQaChatResponse response = client.executeQaChat(request);
System.out.println(response.toString());
}
}
返回结果示例
评论