Package com.bytedesk.ai.service
Class SseMessageHelper
java.lang.Object
com.bytedesk.ai.service.SseMessageHelper
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidhandleSseError(Throwable error, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) booleanisEmitterCompleted(org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) private booleanlooksLikeRobotContentJson(String content) voidprocessPromptSseWithContext(BaseSpringAIService service, String query, String context, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, List<RobotContent.SourceReference> sourceReferences, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String errorLogTag) voidsendDefaultReplySse(String query, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) voidsendMessageWebsocket(MessageTypeEnum type, String content, MessageProtobuf messageProtobufReply) voidsendStreamEndMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, long promptTokens, long completionTokens, long totalTokens, org.springframework.ai.chat.prompt.Prompt prompt, String aiProvider, String aiModel) voidsendStreamEndMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, long promptTokens, long completionTokens, long totalTokens, org.springframework.ai.chat.prompt.Prompt prompt, String aiProvider, String aiModel, boolean persistMessage) voidsendStreamMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String content, String reasonContent, List<RobotContent.SourceReference> sourceReferences) voidsendStreamMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String content, String reasonContent, List<RobotContent.SourceReference> sourceReferences, Boolean isUnanswered, boolean completeAfterSend, boolean contentIsStreamContentJson) voidsendStreamStartMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String initialContent)
-
Field Details
-
messagePersistenceHelper
-
promptHelper
-
-
Constructor Details
-
SseMessageHelper
public SseMessageHelper()
-
-
Method Details
-
sendStreamStartMessage
public void sendStreamStartMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String initialContent) -
sendStreamMessage
public void sendStreamMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String content, String reasonContent, List<RobotContent.SourceReference> sourceReferences) -
sendStreamMessage
public void sendStreamMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String content, String reasonContent, List<RobotContent.SourceReference> sourceReferences, Boolean isUnanswered, boolean completeAfterSend, boolean contentIsStreamContentJson) -
looksLikeRobotContentJson
-
sendStreamEndMessage
public void sendStreamEndMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, long promptTokens, long completionTokens, long totalTokens, org.springframework.ai.chat.prompt.Prompt prompt, String aiProvider, String aiModel) -
sendStreamEndMessage
public void sendStreamEndMessage(MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, long promptTokens, long completionTokens, long totalTokens, org.springframework.ai.chat.prompt.Prompt prompt, String aiProvider, String aiModel, boolean persistMessage) -
sendDefaultReplySse
public void sendDefaultReplySse(String query, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) -
sendMessageWebsocket
public void sendMessageWebsocket(MessageTypeEnum type, String content, MessageProtobuf messageProtobufReply) -
processPromptSseWithContext
public void processPromptSseWithContext(BaseSpringAIService service, String query, String context, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, List<RobotContent.SourceReference> sourceReferences, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter, String errorLogTag) -
handleSseError
public void handleSseError(Throwable error, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) -
isEmitterCompleted
public boolean isEmitterCompleted(org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter)
-