diff --git a/src/main/java/com/nanyan/securitylink/controller/AIController.java b/src/main/java/com/nanyan/securitylink/controller/AIController.java index 83719a522d444b7c89a9d9cf1d1abd6b9bea80ed..a3aad0003791c5c5ea1e284c01b2aae30466e53f 100644 --- a/src/main/java/com/nanyan/securitylink/controller/AIController.java +++ b/src/main/java/com/nanyan/securitylink/controller/AIController.java @@ -1,23 +1,28 @@ package com.nanyan.securitylink.controller; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.nanyan.securitylink.dto.AIRequestDTO; import com.nanyan.securitylink.service.AIService; import com.nanyan.securitylink.vo.AIResponse; import com.nanyan.securitylink.vo.CodeVO; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RestController; import com.nanyan.securitylink.vo.Response; +@Slf4j @RestController public class AIController { @Autowired AIService aiService; @PostMapping("/translate") - public Response<AIResponse<String>> translate(@RequestBody AIRequestDTO AIRequestDTO) { - return Response.SUCCESS(aiService.translate(AIRequestDTO)); + public Response<AIResponse<String>> translate(@RequestBody AIRequestDTO AIRequestDTO, @RequestHeader("request_id") String requestId) { + log.info("requestId:{}, body:{}", requestId, JSONObject.toJSONString(AIRequestDTO)); + return Response.SUCCESS(aiService.translate(AIRequestDTO, requestId)); } @PostMapping("/news/tag") public Response<AIResponse<CodeVO>> newsTag(@RequestBody AIRequestDTO AIRequestDTO) { diff --git a/src/main/java/com/nanyan/securitylink/service/AIService.java b/src/main/java/com/nanyan/securitylink/service/AIService.java index 2d6f8a75ea1c1606893de3b8f1dd3876adc006a2..5595b839dbeea7c24afeaf6d9ae4b338345d0672 100644 --- a/src/main/java/com/nanyan/securitylink/service/AIService.java +++ b/src/main/java/com/nanyan/securitylink/service/AIService.java @@ -6,7 +6,7 @@ import com.nanyan.securitylink.vo.AIResponse; import com.nanyan.securitylink.vo.CodeVO; public interface AIService { - AIResponse<String> translate(AIRequestDTO AIRequestDTO); + AIResponse<String> translate(AIRequestDTO AIRequestDTO, String requestId); AIResponse<CodeVO> newsTags(AIRequestDTO AIRequestDTO); AIResponse<CodeVO> naturalDisasterTag(AIRequestDTO aiRequestDTO); diff --git a/src/main/java/com/nanyan/securitylink/service/impl/AIServiceImpl.java b/src/main/java/com/nanyan/securitylink/service/impl/AIServiceImpl.java index 37a878fc09d501e27552f09d3724154bd29fc0ae..f1799777a34f118f7621fdde711421464391fa59 100644 --- a/src/main/java/com/nanyan/securitylink/service/impl/AIServiceImpl.java +++ b/src/main/java/com/nanyan/securitylink/service/impl/AIServiceImpl.java @@ -149,12 +149,13 @@ public class AIServiceImpl implements AIService { private final static String DEEP_SEEK_URL = "https://ark.cn-beijing.volces.com/api/v3/chat/completions"; @Override - public AIResponse<String> translate(AIRequestDTO AIRequestDTO) { + public AIResponse<String> translate(AIRequestDTO AIRequestDTO, String requestId) { ChatInputData chatInputData = new ChatInputData(); buildTranslate(chatInputData, AIRequestDTO); String apiKey = getModelApiKey(); ChatCompletionResponse chatCompletionResponse = aiRequest(chatInputData, apiKey); + log.info("requestId:{} translate response:{}",requestId, JSONObject.toJSONString(chatCompletionResponse)); if (CollectionUtils.isNotEmpty(chatCompletionResponse.getChoices())) { AIResponse<String> aiResponse = new AIResponse<>(); @@ -561,12 +562,7 @@ public class AIServiceImpl implements AIService { HttpEntity<String> entity = new HttpEntity<>(writeValueAsString, header.getHeaders()); ResponseEntity<ChatCompletionResponse> response = restTemplate.postForEntity(DEEP_SEEK_URL, entity, ChatCompletionResponse.class); if (response.getStatusCode().is2xxSuccessful()) { - if(response.getHeaders().containsKey(REQUEST_ID)){ - log.info("request id:{},translate response:{}",response.getHeaders().get(REQUEST_ID), JSONObject.toJSONString(response.getBody())); - }else { - log.info("translate response:{}",JSONObject.toJSONString(response.getBody())); - } - + log.info("ai response:{}",JSONObject.toJSONString(response.getBody())); return response.getBody(); } throw new BaseException(MsgCode.TRANSLATE_ERROR); diff --git a/src/main/java/com/nanyan/securitylink/vo/AIResponse.java b/src/main/java/com/nanyan/securitylink/vo/AIResponse.java index c70468ad4b28145393443edec93281c2c3e2874f..458c049ce1a390ee5bda6edd69b24bd268b91f94 100644 --- a/src/main/java/com/nanyan/securitylink/vo/AIResponse.java +++ b/src/main/java/com/nanyan/securitylink/vo/AIResponse.java @@ -8,6 +8,7 @@ public class AIResponse<T> { private String task_id; private String id; private String message_id; + private String requestId; private String mode; private String answer; private ResultVO<T> outputs;