完善AI相关接口
This commit is contained in:
parent
0c84a91bc8
commit
48ad417e94
|
|
@ -1,6 +1,8 @@
|
|||
package com.electromagnetic.industry.software.manage.controller;
|
||||
|
||||
import cn.hutool.core.io.FileUtil;
|
||||
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
|
||||
import com.electromagnetic.industry.software.common.util.ElectromagneticResultUtil;
|
||||
import com.electromagnetic.industry.software.manage.pojo.req.ChatQueryDTO;
|
||||
import com.electromagnetic.industry.software.manage.service.serviceimpl.AiChatService;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
|
@ -26,6 +28,10 @@ public class AiChatController {
|
|||
|
||||
@RequestMapping(value = "addKnowledge")
|
||||
public ElectromagneticResult<?> addKnowledge(@RequestParam("file") MultipartFile file) throws IOException {
|
||||
String fileType = FileUtil.extName(file.getOriginalFilename());
|
||||
if (!fileType.equals("pdf")) {
|
||||
return ElectromagneticResultUtil.fail("-1", "当前仅支持pdf格式文件");
|
||||
}
|
||||
return aiChatService.addKnowledge(file);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
package com.electromagnetic.industry.software.manage.service.serviceimpl;
|
||||
|
||||
import cn.hutool.core.io.IoUtil;
|
||||
import cn.hutool.core.text.StrFormatter;
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.electromagnetic.industry.software.common.parse.PdfParse;
|
||||
import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
|
||||
import com.electromagnetic.industry.software.manage.config.ElePropertyConfig;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -12,7 +12,6 @@ import org.springframework.web.multipart.MultipartFile;
|
|||
|
||||
import javax.annotation.Resource;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -25,17 +24,14 @@ public class AiChatService {
|
|||
|
||||
public ElectromagneticResult<?> chat(String message) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("msg", message);
|
||||
String url = StrFormatter.format("http://{}:{}/data/ed/ai/chat", elePropertyConfig.getAiRemoteHost(), elePropertyConfig.getAiRemotePort());
|
||||
String res = HttpUtil.post(url, JSONUtil.toJsonStr(map), 5 * 60 * 1000);
|
||||
log.info("answer is {}", res);
|
||||
ElectromagneticResult<?> result = JSONUtil.toBean(res, ElectromagneticResult.class);
|
||||
log.info("result ----------------------------->{}", result);
|
||||
return result;
|
||||
}
|
||||
|
||||
public ElectromagneticResult<?> addKnowledge(MultipartFile file) throws IOException {
|
||||
String content = IoUtil.read(file.getInputStream(), Charset.defaultCharset());
|
||||
String content = new PdfParse().parseAllText(file.getInputStream(), "pdf");
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("content", content);
|
||||
String url = StrFormatter.format("http://{}:{}/data/ed/ai/upload", elePropertyConfig.getAiRemoteHost(), elePropertyConfig.getAiRemotePort());
|
||||
|
|
|
|||
Loading…
Reference in New Issue