AI 集成基础方法添加
This commit is contained in:
@@ -135,4 +135,20 @@ public interface IHotakeAiCommonToolsService {
|
||||
*/
|
||||
public String handleCandidateAiInterviewAnalysis(HotakeCandidateAiInterviewAnalysisVo analysisVo);
|
||||
|
||||
|
||||
/**
|
||||
* 招聘者AI简历评分和排名系统
|
||||
* @param scoringRankingVo 招聘者AI简历评分和排名系统输入信息
|
||||
* @return
|
||||
*/
|
||||
public String handleAiCvScoringRanking(HotakeAiCvScoringRankingVo scoringRankingVo);
|
||||
|
||||
|
||||
/**
|
||||
* 招聘者查看候选人匹配度
|
||||
* @param compatibilityVo 招聘者查看候选人匹配度 输入信息
|
||||
* @return
|
||||
*/
|
||||
public String handleCandidateCompatibility(HotakeCandidateCompatibilityVo compatibilityVo);
|
||||
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.vetti.hotake.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.vetti.common.ai.gpt.ChatGPTClient;
|
||||
import com.vetti.common.constant.AiCommonPromptConstants;
|
||||
@@ -1036,4 +1035,70 @@ public class HotakeAiCommonToolsServiceImpl extends BaseServiceImpl implements I
|
||||
|
||||
return resultJsonOne;
|
||||
}
|
||||
|
||||
/**
|
||||
* 招聘者AI简历评分和排名系统
|
||||
* @param scoringRankingVo 招聘者AI简历评分和排名系统输入信息
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String handleAiCvScoringRanking(HotakeAiCvScoringRankingVo scoringRankingVo) {
|
||||
|
||||
String prompt = AiCommonPromptConstants.initializationAiCvScoringRankingPrompt();
|
||||
String userPrompt_1 = JSONUtil.toJsonStr(scoringRankingVo);
|
||||
//处理岗位信息补充
|
||||
List<Map<String, String>> listOne = new LinkedList();
|
||||
Map<String, String> mapEntityOne = new HashMap<>();
|
||||
mapEntityOne.put("role", "system");
|
||||
mapEntityOne.put("content",prompt);
|
||||
listOne.add(mapEntityOne);
|
||||
Map<String, String> mapUserEntityOne = new HashMap<>();
|
||||
mapUserEntityOne.put("role", "user");
|
||||
mapUserEntityOne.put("content",userPrompt_1);
|
||||
listOne.add(mapUserEntityOne);
|
||||
String promptJsonOne = JSONUtil.toJsonStr(listOne);
|
||||
String resultStrOne = chatGPTClient.handleAiChat(promptJsonOne,"AICVSR");
|
||||
String resultJsonOne = resultStrOne.replaceAll("```json","").replaceAll("```","");
|
||||
log.info("招聘者AI简历评分和排名系统结果:{}",resultJsonOne);
|
||||
|
||||
return resultJsonOne;
|
||||
}
|
||||
|
||||
/**
|
||||
* 招聘者查看候选人匹配度
|
||||
* @param compatibilityVo 招聘者查看候选人匹配度 输入信息
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String handleCandidateCompatibility(HotakeCandidateCompatibilityVo compatibilityVo) {
|
||||
String prompt = AiCommonPromptConstants.initializationCandidateCompatibilityPrompt();
|
||||
|
||||
String userPrompt_1 = "Please analyze the matching details of the following candidates:\n" +
|
||||
"\n" +
|
||||
"【Position】: "+compatibilityVo.getPosition()+"\n" +
|
||||
"【Candidate】: "+compatibilityVo.getCandidate()+"\n" +
|
||||
"【Current position】: "+compatibilityVo.getCurrentPosition()+"\n" +
|
||||
"【Work Experience】: "+compatibilityVo.getWorkExperience()+"\n" +
|
||||
"【Skill】: "+JSONUtil.toJsonStr(compatibilityVo.getSkills())+"\n" +
|
||||
"【Overall Rating】: "+compatibilityVo.getOverallRating()+"\n" +
|
||||
"\n" +
|
||||
"Please return a detailed analysis in JSON format。";
|
||||
|
||||
//处理岗位信息补充
|
||||
List<Map<String, String>> listOne = new LinkedList();
|
||||
Map<String, String> mapEntityOne = new HashMap<>();
|
||||
mapEntityOne.put("role", "system");
|
||||
mapEntityOne.put("content",prompt);
|
||||
listOne.add(mapEntityOne);
|
||||
Map<String, String> mapUserEntityOne = new HashMap<>();
|
||||
mapUserEntityOne.put("role", "user");
|
||||
mapUserEntityOne.put("content",userPrompt_1);
|
||||
listOne.add(mapUserEntityOne);
|
||||
String promptJsonOne = JSONUtil.toJsonStr(listOne);
|
||||
String resultStrOne = chatGPTClient.handleAiChat(promptJsonOne,"AICAC");
|
||||
String resultJsonOne = resultStrOne.replaceAll("```json","").replaceAll("```","");
|
||||
log.info("招聘者查看候选人匹配度结果:{}",resultJsonOne);
|
||||
|
||||
return resultJsonOne;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user