作者:俏巴
概述
智能語義理解(Intelligent Semantic Understanding)依託阿里巴巴在深度學習、自然語言處理方向上的技術積累,為客戶提供文本相似度和機器閱讀理解等優質算法技術。其中文本相似度可以計算兩段短文本之間的相似度,並給出相似度評分;機器閱讀理解能針對某幾個問題,從若干篇文章中分別尋找問題答案。智能語義理解技術可以應用於問答系統、信息檢索、新聞推薦等場景。下面主要介紹該產品的開通及使用。
Step By Step
1、開通服務,公測申請地址。
2、開通後控制檯概覽
3、操作步驟,可以在控制檯快速查看創建項目,然後查看進程
4、使用SDK進行相關操作
-
4.1 pom.xml
<dependencies> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-iqa</artifactId> <version>1.0.0</version> </dependency> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.4.9</version> </dependency> </dependencies>
4.2 code sample
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.iqa.model.v20190813.*;
import com.aliyuncs.profile.DefaultProfile;
public class demo1 {
public static void main(String[] args) throws ClientException {
DefaultProfile profile = DefaultProfile.getProfile(
"cn-hangzhou",
"LTAIOZZgYX******",
"v7CjUJCMk7j9aKduMAQLjy********");
IAcsClient client = new DefaultAcsClient(profile);
// 調用ListProjects獲取項目列表
ListProjectsRequest request = new ListProjectsRequest();
request.setProjectType("faq");
ListProjectsResponse response = client.getAcsResponse(request);
System.out.println("項目數量: " + response.getTotalCount());
// // 調用CreateProject創建一個項目
// CreateProjectRequest createProjectRequest = new CreateProjectRequest();
// createProjectRequest.setModelId("general");
// createProjectRequest.setProjectName("FaqProjectDemo1");
// createProjectRequest.setProjectType("faq");
// CreateProjectResponse createProjectResponse = client.getAcsResponse(createProjectRequest);
// System.out.println(createProjectResponse.getProjectId());
String projectId = "nynauj21********";// 使用創建項目獲取的ProjectId
//
// // 調用UploadDictionary上傳自定義詞表,支持多次調用增量導入,此操作是用來對導入的document增加分詞功能,可以不操作
// UploadDictionaryRequest uploadDictionaryRequest = new UploadDictionaryRequest();
// uploadDictionaryRequest.setDictionaryFileUrl("http://iqa-console.oss-cn-hangzhou.aliyuncs.com/example/iqa_example_shorttext.xlsx?spm=a2c4g.11186623.2.14.5d7b727d7qG2oF&Expires=2179036688&OSSAccessKeyId=LTAI2WA8174xk3ii&Signature=967zD%2BonZHoVbSZqkmxx8KVcEeI%3D");
// uploadDictionaryRequest.setProjectId(projectId);
// UploadDictionaryResponse uploadDictionaryResponse = client.getAcsResponse(uploadDictionaryRequest);
// System.out.println(uploadDictionaryResponse.getTotalCount());
// UploadDocumentRequest uploadDocumentRequest = new UploadDocumentRequest();
// uploadDocumentRequest.setDocumentFileUrl("http://iqa-console.oss-cn-hangzhou.aliyuncs.com/example/iqa_example_shorttext.xlsx?spm=a2c4g.11186623.2.14.5d7b727dtesby4&Expires=2179036688&OSSAccessKeyId=LTAI2WA8174xk3ii&Signature=967zD%2BonZHoVbSZqkmxx8KVcEeI%3D");
// uploadDocumentRequest.setProjectId(projectId);
// UploadDocumentResponse uploadDocumentResponse = client.getAcsResponse(uploadDocumentRequest);
// System.out.println(uploadDocumentResponse.getFileDataCount());
// // 調用DeployService發佈一個項目
// DeployServiceRequest deployServiceRequest = new DeployServiceRequest();
// deployServiceRequest.setProjectId(projectId);
// DeployServiceResponse deployServiceResponse = client.getAcsResponse(deployServiceRequest);
// System.out.println(deployServiceResponse.getRequestId());
GetPredictResultRequest getPredictResultRequest = new GetPredictResultRequest();
getPredictResultRequest.setProjectId(projectId);
getPredictResultRequest.setQuestion("充話費");
getPredictResultRequest.setTopK(3);
GetPredictResultResponse getPredictResultResponse = client.getAcsResponse(getPredictResultRequest);
for (GetPredictResultResponse.PredictResult predictResult:getPredictResultResponse.getPredictResults()
) {
System.out.println("Question: " + predictResult.getQuestion() + " Answer: " + predictResult.getAnswer() + " Score: " + predictResult.getScore());
}
}
}
4.3 result
項目數量: 3
Question: 積分怎麼充話費 Answer: Score: 0.9948719
Question: 積分充話費的方式 Answer: Score: 0.9937389
Question: 我怎麼用積分充話費 Answer: Score: 0.47255847
5、Demo相關解釋
- 5.1 UploadDictionary作用:
幫助分詞,業務的一些專有詞,默認分詞分不出來的情況下需要用上傳到自定義詞表。
- 5.2 上傳數據格式參考及解釋:數據格式說明。
- 5.3 用戶答疑釘釘群號:23162166。(可在文件位置獲取產品簡介文檔,對理解產品有很大幫助)
https://yqfile.alicdn.com/36559ee204e61d8994481137a45fdb1fa808e5c1.png