阿里云自然语言处理--文本相似度(电商)Java SDK 调用示例

简介: 自然语言处理(Natural Language Processing,简称NLP),是为各类企业及开发者提供的用于文本分析及挖掘的核心工具,旨在帮助用户高效的处理文本,已经广泛应用在电商、文娱、司法、公安、金融、医疗、电力等行业客户的多项业务中,取得了良好的效果。文本相似度可以提供不同文本之间相似度的计算,并输出一个介于0到1之间的分数,分数越大则文本之间的相似度越高。可广泛应用于信息检索,新闻推荐、智能客服等场景。使用该服务建议分数不要用于直接判断,可以作为特征,并按照范围进行分桶。本文将使用Java Common SDK 演示文本相似度(电商)服务的快速调用以供参考。

使用前提与环境准备:服务开通与购买


Step By Step

1.参考API文档与公共参数文档获取相应请求参数

52b236948fbc11.png

  • 公共参数说明

NjIucG5n.png

2.添加pom依赖

        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.5.25</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-nlp-automl</artifactId>
            <version>0.0.5</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-alinlp</artifactId>
            <version>1.0.16</version>
       </dependency>

2.Code Sample

import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;

//文本相似度(电商)common request 调用示例
public class WenBenxsd {
    public static void main(String[] args) {
        // 创建DefaultAcsClient实例并初始化
        DefaultProfile defaultProfile = DefaultProfile.getProfile(
                "cn-hangzhou",
                "XXXXXXXXXX",
                "XXXXXXXXXX");
        IAcsClient client = new DefaultAcsClient(defaultProfile);
        // 创建API请求并设置参数
        CommonRequest request = new CommonRequest();
        // domain和version是固定值
        request.setDomain("alinlp.cn-hangzhou.aliyuncs.com");
        request.setVersion("2020-06-29");
        //action name可以在API文档里查到
        request.setSysAction("GetTsChEcom");//请求的接口名称
        //put的参数可以在API文档查看到
        request.putQueryParameter("ServiceCode", "alinlp");
        request.putQueryParameter("OriginT","蓝色裤子");
        request.putQueryParameter("OriginQ","一条红色连衣裙");
        request.putQueryParameter("Type","similarity");

        try {
            CommonResponse response = client.getCommonResponse(request);
            System.out.println(response.getData());
        } catch (ServerException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ClientException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

3.测试结果

{"RequestId":"6EEEB336-8B48-50E2-9041-386CBAF04985","Data":"{\"result\":[{\"score\":\"0.16925383\",\"flag\":true}],\"success\":true}"}

更多参考

快速入门
API参考-文本相似度(电商)
SDK示例
阿里云自然语言处理PHP Core SDK使用Quick Start

目录
相关文章
|
6月前
|
Java 开发工具
【Azure Storage Account】Java Code访问Storage Account File Share的上传和下载代码示例
本文介绍如何使用Java通过azure-storage-file-share SDK实现Azure文件共享的上传下载。包含依赖引入、客户端创建及完整示例代码,助你快速集成Azure File Share功能。
467 6
|
6月前
|
Java API 开发工具
百宝箱开放平台 ✖️ Java SDK
百宝箱提供Java SDK,支持开发者集成其开放能力。需先发布应用,准备Java 8+及Maven环境,通过添加依赖安装SDK,并初始化客户端调用对话型或生成型智能体,实现会话管理、消息查询与文件上传等功能。
1504 0
百宝箱开放平台 ✖️ Java SDK
|
7月前
|
IDE Java 关系型数据库
Java 初学者学习路线(含代码示例)
本教程为Java初学者设计,涵盖基础语法、面向对象、集合、异常处理、文件操作、多线程、JDBC、Servlet及MyBatis等内容,每阶段配核心代码示例,强调动手实践,助你循序渐进掌握Java编程。
896 3
|
7月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
555 0
Java API 开发者
226 0
|
9月前
|
安全 Java 网络安全
Java 实现 SMTP 协议调用的详细示例及实战指南 SMTP Java 调用示例
本文介绍了如何使用Java调用SMTP协议发送邮件,涵盖SMTP基本概念、JavaMail API配置、代码实现及注意事项,适合Java开发者快速掌握邮件发送功能集成。
1077 0
|
6月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
304 1
|
6月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
319 1
|
7月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案