Class SpringAIMinimaxService
java.lang.Object
com.bytedesk.ai.service.BaseSpringAIService
com.bytedesk.ai.springai.providers.minimax.SpringAIMinimaxService
- All Implemented Interfaces:
SpringAIService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.springframework.ai.minimax.MiniMaxChatModelprivate LlmProviderRestServiceprivate PromptHelperprivate SseMessageHelperprivate TokenUsageHelperFields inherited from class com.bytedesk.ai.service.BaseSpringAIService
applicationEventPublisher, chunkElasticService, chunkVectorService, faqElasticService, faqVectorService, knowledgeBaseSearchHelper, messagePersistCache, messagePersistenceHelper, messageRestService, messageSendService, robotMessageCache, robotRestService, textElasticService, textVectorService, threadRestService, uidUtils, webpageElasticService, webpageVectorService -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate org.springframework.ai.minimax.MiniMaxChatOptions根据机器人配置创建动态的MiniMaxChatOptionsprivate org.springframework.ai.minimax.MiniMaxChatModel根据机器人配置创建动态的MiniMaxChatModelprivate ChatTokenUsageextractMinimaxTokenUsage(org.springframework.ai.chat.model.ChatResponse response) 专门为Minimax API提取token使用情况 由于Minimax API返回的usage字段是EmptyUsage对象,需要特殊处理protected voidprocessPromptSse(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, List<RobotContent.SourceReference> sourceReferences, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) protected StringprocessPromptSync(String message, RobotProtobuf robot) protected voidprocessPromptWebsocket(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply) Methods inherited from class com.bytedesk.ai.service.BaseSpringAIService
processSyncRequest, sendSseMessage, sendSyncMessage, sendWebsocketMessage
-
Field Details
-
llmProviderRestService
-
defaultChatModel
@Autowired(required=false) @Qualifier("minimaxChatModel") private org.springframework.ai.minimax.MiniMaxChatModel defaultChatModel -
tokenUsageHelper
-
sseMessageHelper
-
promptHelper
-
-
Constructor Details
-
SpringAIMinimaxService
public SpringAIMinimaxService()
-
-
Method Details
-
createDynamicOptions
根据机器人配置创建动态的MiniMaxChatOptions- Parameters:
llm- 机器人LLM配置- Returns:
- 根据机器人配置创建的选项
-
createMinimaxChatModel
根据机器人配置创建动态的MiniMaxChatModel- Parameters:
llm- 机器人LLM配置- Returns:
- 配置了特定模型的MiniMaxChatModel
-
processPromptWebsocket
protected void processPromptWebsocket(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply) - Specified by:
processPromptWebsocketin classBaseSpringAIService
-
processPromptSync
- Specified by:
processPromptSyncin classBaseSpringAIService
-
processPromptSse
protected void processPromptSse(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, List<RobotContent.SourceReference> sourceReferences, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) - Specified by:
processPromptSsein classBaseSpringAIService
-
extractMinimaxTokenUsage
private ChatTokenUsage extractMinimaxTokenUsage(org.springframework.ai.chat.model.ChatResponse response) 专门为Minimax API提取token使用情况 由于Minimax API返回的usage字段是EmptyUsage对象,需要特殊处理- Parameters:
response- ChatResponse对象- Returns:
- TokenUsage对象
-