写点什么

华为云 API 自然语言处理的魅力—AI 情感分析、文本分析

  • 2023-10-07
    广东
  • 本文字数:5732 字

    阅读完需:约 19 分钟

华为云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。


开始安装:


您可以在直接在 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

3.2  情感分析


情感分析(基础版),针对通用领域的用户评论进行情感分析。


前提条件:


1、已注册华为云,并完成实名认证 。


2、已完成自然语言处理服务申请,具体请参考 申请服务。


3、已获取自然语言处理服务对应区域终端节点地址,具体请参考 地区和终端节点。


4、已获取自然语言处理服务对应区域的项目 ID,请在华为云控制台“我的凭证 > API 凭证”页面上查看项目 ID。具体请参见 API 凭证。


5、已获取华为云帐号对应的有效 AK、SK,具体请参见 如何获取访问密钥 AK/SK。


6、已具备开发环境 ,支持 Java JDK 1.8 及其以上版本。


开始使用:


import com.huaweicloud.sdk.core.auth.BasicCredentials;import com.huaweicloud.sdk.core.exception.ClientRequestException;import com.huaweicloud.sdk.core.exception.ServerResponseException;import com.huaweicloud.sdk.nlp.v2.NlpClient;import com.huaweicloud.sdk.nlp.v2.model.HWCloudSentimentReq;import com.huaweicloud.sdk.nlp.v2.model.RunSentimentRequest;import com.huaweicloud.sdk.nlp.v2.model.RunSentimentResponse;import org.slf4j.Logger;import org.slf4j.LoggerFactory;
public class RunSentiment { private static final Logger logger = LoggerFactory.getLogger(RunSentiment.class.getName());
public static void main(String[] args) {
/* * 初始化认证信息,相关参数说明如下所示: * - ak:华为云账号Access Key。 * - sk:华为云账号Secret Access Key 。 */ String ak = "<YOUR AK>"; String sk = "<YOUR SK>"; String projectId = "<YOUR PROJECT ID>"; String endpoint = "<APIG ENDPOINT>"; BasicCredentials auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId); NlpClient client = NlpClient.newBuilder().withCredential(auth).withEndpoint(endpoint).build();
try { // 构造请求参数 HWCloudSentimentReq sentimentReq = new HWCloudSentimentReq(); sentimentReq.setContent("<YOUR CONTENT>"); sentimentReq.setLang(HWCloudSentimentReq.LangEnum.ZH); RunSentimentRequest runSentimentRequest = new RunSentimentRequest(); runSentimentRequest.setBody(sentimentReq);
// 接收响应参数 RunSentimentResponse response = client.runSentiment(runSentimentRequest); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.getMessage()); } }}
复制代码

3.3 文本分词

文本分词,对文本进行分割,返回分割后的词语组和词语对应的词性。


开始使用:


import com.huaweicloud.sdk.core.auth.BasicCredentials;import com.huaweicloud.sdk.core.exception.ClientRequestException;import com.huaweicloud.sdk.core.exception.ServerResponseException;import com.huaweicloud.sdk.nlp.v2.NlpClient;import com.huaweicloud.sdk.nlp.v2.model.RunSegmentRequest;import com.huaweicloud.sdk.nlp.v2.model.RunSegmentResponse;import com.huaweicloud.sdk.nlp.v2.model.SegmentRequest;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class RunSegment {    private static final Logger logger = LoggerFactory.getLogger(RunSegment.class.getName());    public static void main(String[] args) {        /*         * 初始化认证信息,相关参数说明如下所示:         *   - ak:华为云账号Access Key。         *   - sk:华为云账号Secret Access Key 。         */        String ak = "<YOUR AK>";        String sk = "<YOUR SK>";        String projectId = "<YOUR PROJECT ID>";        String endpoint = "<APIG ENDPOINT>";        BasicCredentials auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId);        NlpClient client = NlpClient.newBuilder().withCredential(auth).withEndpoint(endpoint).build();
try { // 构造请求参数 SegmentRequest segmentRequest = new SegmentRequest(); segmentRequest.setText("<YOUR TEXT>"); segmentRequest.setLang(SegmentRequest.LangEnum.fromValue("zh")); segmentRequest.setCriterion(SegmentRequest.CriterionEnum.fromValue("PKU")); segmentRequest.setPosSwitch(SegmentRequest.PosSwitchEnum.fromValue(0)); RunSegmentRequest runSegmentRequest = new RunSegmentRequest(); runSegmentRequest.setBody(segmentRequest);
// 接收响应参数 RunSegmentResponse response = client.runSegment(runSegmentRequest); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.getMessage()); } }}
复制代码

3.4 文本翻译

文本翻译,将用户输入原始语种的文本转换为目标语种的文本。


开始使用:


import com.huaweicloud.sdk.core.auth.BasicCredentials;import com.huaweicloud.sdk.core.exception.ClientRequestException;import com.huaweicloud.sdk.core.exception.ServerResponseException;import com.huaweicloud.sdk.nlp.v2.NlpClient;import com.huaweicloud.sdk.nlp.v2.model.RunTextTranslationRequest;import com.huaweicloud.sdk.nlp.v2.model.RunTextTranslationResponse;import com.huaweicloud.sdk.nlp.v2.model.TextTranslationReq;import org.slf4j.Logger;import org.slf4j.LoggerFactory;
public class RunTextTranslation { private static final Logger logger = LoggerFactory.getLogger(RunTextTranslation.class.getName());
public static void main(String[] args) {
/* * 初始化认证信息,相关参数说明如下所示: * - ak:华为云账号Access Key。 * - sk:华为云账号Secret Access Key 。 */ String ak = "<YOUR AK>"; String sk = "<YOUR SK>"; String projectId = "<YOUR PROJECT ID>"; String endpoint = "<APIG ENDPOINT>"; BasicCredentials auth = new BasicCredentials().withAk(ak).withSk(sk).withProjectId(projectId); NlpClient client = NlpClient.newBuilder().withCredential(auth).withEndpoint(endpoint).build();
try { // 构造请求参数 TextTranslationReq textTranslationReq = new TextTranslationReq(); textTranslationReq.setFrom(TextTranslationReq.FromEnum.ZH); textTranslationReq.setTo(TextTranslationReq.ToEnum.EN); textTranslationReq.setText("<YOUR TEXT>"); textTranslationReq.setScene(TextTranslationReq.SceneEnum.COMMON); RunTextTranslationRequest runTextTranslationRequest = new RunTextTranslationRequest(); runTextTranslationRequest.setBody(textTranslationReq);
// 接收响应参数 RunTextTranslationResponse response = client.runTextTranslation(runTextTranslationRequest); logger.info(response.toString()); } catch (ClientRequestException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.toString()); } catch (ServerResponseException e) { logger.error(String.valueOf(e.getHttpStatusCode())); logger.error(e.getMessage()); } }}
复制代码

4  如何使用 SDK 调用华为云 NLP 服务

4.1  操作须知

自然语言处理的 API 接口已全部商用,无需开通,可直接调用。调用费用请参见自然语言处理价格计算器。


准备工作:已注册华为帐号并开通华为云,并完成实名认证,帐号不能处于欠费或冻结状态。


步骤 1:配置环境


  1. 下载 NLP Java SDK。


下载地址:https://nlp-sdk.obs.cn-north-4.myhuaweicloud.com/nlp-java-sdk.zip


  1. 准备环境。


说明:


如果用户已经下载 JDK 并配置好环境,请跳过 2.a~2.d。


  1. 下载 JDK 文件。

  2. 下载完成后按照提示安装,位置自选,例如安装到本地 C:\Program Files\Java\jdk1.8.0_131。

  3. 配置 Java 环境变量:右键“计算机>属性>高级系统设置>环境变量”,进行如下操作。

  4. 新建系统变量 JAVA_HOME,变量值为实际 JDK 安装位置。

  5. 在 Path 中添加 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin (注意用英文分号分隔)。

  6. 打开命令行窗口,输入“java -version”,显示如图 1 表示配置成功。

  7. IntelliJ IDEA 安装。在 https://www.jetbrains.com/idea/ 或者其他途径下载对应平台的 IntelliJ IDEA 版本,安装后直接打开 IntelliJ IDEA,一般会自动检查 JRE 路径并配置。


图 1 Java 版本信息



  1. JAVA SDK Demo 工程导入

  2. 单机左上角“File”页面打开菜单。

  3. 选择“Open”,再选择对应要打开工程,选择 Demo 工程目录,注意目录下一级就要包含 pom 文件。

  4. 单击“确认”,导入 demo,导入后打开工程,工程目录如下:



步骤 2:设置鉴权信息


获取 AK/SK。AK/SK 即访问密钥,请登录“我的凭证”界面,选择“管理访问密钥 > 新增访问密钥”获取。


AK/SK 认证鉴权,配置 Java SDK 中的 AK/SK。根据获取的 AK/SK,修改 Demo 工程“NLPDemo.java”文件中函数的“AK”和“SK”的值。


图 3 AK/SK 认证鉴权



步骤 3:调用分词服务


执行 Demo,控制台输出状态码“200”即表示程序执行成功。


分词识别的返回结果为 JSON 格式,如下所示。


{    "words": [        {            "content": "今天",            "pos": "t"        },        {            "content": "天气",            "pos": "n"        },        {            "content": "真",            "pos": "d"        },        {            "content": "好",            "pos": "a"        }    ]}
复制代码

4.2  展现效果

5 体验插件的魅力

华为云 devkit 已上线: https://developer.huaweicloud.com/develop/toolkit.html

用户头像

公众号:华为云PaaS服务,有见面礼等你哦! 2022-09-26 加入

还未添加个人简介

评论

发布
暂无评论
华为云API自然语言处理的魅力—AI情感分析、文本分析_人工智能_华为云PaaS服务小智_InfoQ写作社区