From 0325d413502474062e1d400df319bfd390e94956 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 17 Sep 2025 16:12:40 +0800 Subject: [PATCH] feat(ai): 新增 AI 陪练相关功能 --- src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkController.java | 35 ++++++++++++++++++++++++++--------- 1 files changed, 26 insertions(+), 9 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkController.java b/src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkController.java index a2d4df5..86ef30e 100644 --- a/src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkController.java +++ b/src/main/java/cc/mrbird/febs/ai/controller/memberTalk/ApiMemberTalkController.java @@ -1,9 +1,9 @@ package cc.mrbird.febs.ai.controller.memberTalk; -import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkAnswerDto; -import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkDto; -import cc.mrbird.febs.ai.req.memberTalk.ApiMemberTalkItemPageDto; +import cc.mrbird.febs.ai.req.memberTalk.*; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkItemVo; +import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkReloadVo; +import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkStreamVoOld; import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkVo; import cc.mrbird.febs.ai.service.AiMemberTalkService; import cc.mrbird.febs.common.entity.FebsResponse; @@ -11,15 +11,11 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; +import reactor.core.publisher.Flux; -import javax.servlet.http.HttpServletRequest; import java.io.IOException; -import java.util.List; /** * @author Administrator @@ -43,6 +39,17 @@ public FebsResponse start(@RequestBody @Validated ApiMemberTalkDto dto) { return aiMemberTalkService.start(dto); + } + + + @ApiOperation(value = "再练一次(重新回答)", notes = "再练一次(重新回答)") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = ApiMemberTalkReloadVo.class) + }) + @PostMapping(value = "/reload") + public FebsResponse reload(@RequestBody @Validated ApiMemberTalkReloadDto dto) { + + return aiMemberTalkService.reload(dto); } @@ -93,4 +100,14 @@ return emitter; } + + // 修改接口定义 + @ApiOperation("开始AI对话(流式)") + @ApiResponses({ + @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVoOld.class), + }) + @GetMapping("/answer-stream") + public Flux<FebsResponse> answerStream(@RequestParam String question) { + return aiMemberTalkService.answerStream(question); + } } -- Gitblit v1.9.1