| | |
| | | |
| | | import com.zy.ai.entity.ChatCompletionRequest; |
| | | import com.zy.ai.entity.WcsDiagnosisRequest; |
| | | import com.zy.ai.entity.WcsDiagnosisResponse; |
| | | import com.zy.ai.service.WcsDiagnosisService; |
| | | import com.zy.ai.utils.AiUtils; |
| | | import com.zy.common.web.BaseController; |
| | |
| | | @Autowired |
| | | private AiUtils aiUtils; |
| | | |
| | | @GetMapping("/runAi") |
| | | public WcsDiagnosisResponse runAi() { |
| | | WcsDiagnosisRequest request = aiUtils.makeAiRequest(1000, "系统当前不执行任务,但具体原因不明,请根据以下信息帮助判断。\n\n"); |
| | | WcsDiagnosisResponse response = diagnose(request); |
| | | return response; |
| | | } |
| | | |
| | | @GetMapping("/runAiStream") |
| | | public SseEmitter runAiStream() { |
| | | SseEmitter emitter = new SseEmitter(0L); |
| | | |
| | | new Thread(() -> { |
| | | try { |
| | | WcsDiagnosisRequest request = aiUtils.makeAiRequest(1000, "系统当前不执行任务,但具体原因不明,请根据以下信息帮助判断。\n\n"); |
| | | WcsDiagnosisRequest request = aiUtils.makeAiRequest(1000, "对当前系统进行巡检,如果有异常情况就进行详细的分析,如果没有异常情况则当成一次检查\n\n"); |
| | | wcsDiagnosisService.diagnoseStream(request, emitter); |
| | | } catch (Exception e) { |
| | | emitter.completeWithError(e); |
| | |
| | | @GetMapping("/chats/{chatId}/history") |
| | | public List<ChatCompletionRequest.Message> getChatHistory(@PathVariable("chatId") String chatId) { |
| | | return wcsDiagnosisService.getChatHistory(chatId); |
| | | } |
| | | |
| | | /** |
| | | * POST /api/ai/diagnose/wcs |
| | | */ |
| | | @PostMapping("/wcs") |
| | | public WcsDiagnosisResponse diagnose(@RequestBody WcsDiagnosisRequest request) { |
| | | String analysis = wcsDiagnosisService.diagnose(request); |
| | | |
| | | WcsDiagnosisResponse resp = new WcsDiagnosisResponse(); |
| | | resp.setAnalysis(analysis); |
| | | resp.setOriginalRequest(request); |
| | | return resp; |
| | | } |
| | | } |