Class SpringAIMinimaxService

java.lang.Object
com.bytedesk.ai.service.BaseSpringAIService
com.bytedesk.ai.springai.providers.minimax.SpringAIMinimaxService
All Implemented Interfaces:
SpringAIService

@Service public class SpringAIMinimaxService extends BaseSpringAIService
  • Field Details

    • llmProviderRestService

      @Autowired private LlmProviderRestService llmProviderRestService
    • defaultChatModel

      @Autowired(required=false) @Qualifier("minimaxChatModel") private org.springframework.ai.minimax.MiniMaxChatModel defaultChatModel
    • tokenUsageHelper

      @Autowired private TokenUsageHelper tokenUsageHelper
    • sseMessageHelper

      @Autowired private SseMessageHelper sseMessageHelper
    • promptHelper

      @Autowired private PromptHelper promptHelper
  • Constructor Details

    • SpringAIMinimaxService

      public SpringAIMinimaxService()
  • Method Details

    • createDynamicOptions

      private org.springframework.ai.minimax.MiniMaxChatOptions createDynamicOptions(RobotLlm llm)
      根据机器人配置创建动态的MiniMaxChatOptions
      Parameters:
      llm - 机器人LLM配置
      Returns:
      根据机器人配置创建的选项
    • createMinimaxChatModel

      private org.springframework.ai.minimax.MiniMaxChatModel createMinimaxChatModel(RobotLlm llm)
      根据机器人配置创建动态的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:
      processPromptWebsocket in class BaseSpringAIService
    • processPromptSync

      protected String processPromptSync(String message, RobotProtobuf robot)
      Specified by:
      processPromptSync in class BaseSpringAIService
    • 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:
      processPromptSse in class BaseSpringAIService
    • extractMinimaxTokenUsage

      private ChatTokenUsage extractMinimaxTokenUsage(org.springframework.ai.chat.model.ChatResponse response)
      专门为Minimax API提取token使用情况 由于Minimax API返回的usage字段是EmptyUsage对象,需要特殊处理
      Parameters:
      response - ChatResponse对象
      Returns:
      TokenUsage对象