| | |
| | | package cc.mrbird.febs.ai.controller.talk; |
| | | |
| | | 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.talk.AiTalkAnswerStream; |
| | | import cc.mrbird.febs.ai.req.talk.ApiTalkDto; |
| | | import cc.mrbird.febs.ai.req.talk.ApiTalkItemPageDto; |
| | | import cc.mrbird.febs.ai.req.talk.ApiTalkPageDto; |
| | | import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkItemVo; |
| | | import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkStreamVo; |
| | | import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkVo; |
| | | import cc.mrbird.febs.ai.res.memberTalk.ApiMemberTalkStreamVoOld; |
| | | import cc.mrbird.febs.ai.res.talk.ApiTalkItemPageVo; |
| | | import cc.mrbird.febs.ai.res.talk.ApiTalkPageVo; |
| | | import cc.mrbird.febs.ai.res.talk.ApiTalkQuestionVo; |
| | | import cc.mrbird.febs.ai.res.talk.ApiTalkVo; |
| | | import cc.mrbird.febs.ai.service.AiMemberTalkService; |
| | | import cc.mrbird.febs.ai.service.AiTalkService; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cn.hutool.core.util.StrUtil; |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.servlet.mvc.method.annotation.SseEmitter; |
| | | import reactor.core.publisher.Flux; |
| | | |
| | | import java.io.IOException; |
| | | |
| | | /** |
| | | * @author Administrator |
| | |
| | | |
| | | @ApiOperation("提问AI(流式)") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVo.class), |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVoOld.class), |
| | | }) |
| | | @GetMapping("/answer-stream") |
| | | public Flux<FebsResponse> answerStream(@RequestParam String question) { |
| | |
| | | |
| | | @ApiOperation("提问AI(流式)V2") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVo.class), |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVoOld.class), |
| | | }) |
| | | @PostMapping("/answer-streamV2") |
| | | public Flux<FebsResponse> answerStreamV2(@RequestBody @Validated AiTalkAnswerStream dto) { |
| | |
| | | |
| | | @ApiOperation("提问AI(流式带思考过程)V3") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVo.class), |
| | | @ApiResponse(code = 200, message = "流式响应", response = ApiMemberTalkStreamVoOld.class), |
| | | }) |
| | | @PostMapping("/answer-streamV3") |
| | | public Flux<FebsResponse> answerStreamV3(@RequestBody @Validated AiTalkAnswerStream dto) { |