Class SpringAIOpenaiService
java.lang.Object
com.bytedesk.ai.springai.service.BaseSpringAIService
com.bytedesk.ai.springai.providers.openai.SpringAIOpenaiService
- All Implemented Interfaces:
SpringAIService
@Service
@ConditionalOnProperty(name="spring.ai.openai.chat.enabled",
havingValue="true",
matchIfMissing=false)
public class SpringAIOpenaiService
extends BaseSpringAIService
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.springframework.ai.openai.OpenAiChatModel
Fields inherited from class com.bytedesk.ai.springai.service.BaseSpringAIService
faqService, messagePersistCache, messageSendService, robotMessageCache, robotRestService, springAIVectorService, threadRestService, uidUtils
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate org.springframework.ai.openai.OpenAiChatOptions
根据机器人配置创建动态的OpenAiChatOptionsprotected String
generateFaqPairs
(String prompt) org.springframework.ai.openai.OpenAiChatModel
boolean
protected void
processPrompt
(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply) protected void
processPromptSSE
(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) protected String
processPromptSync
(String message) Methods inherited from class com.bytedesk.ai.springai.service.BaseSpringAIService
buildKbPrompt, createDynamicOptions, generateFaqPairsAsync, generateFaqPairsSync, handleSseError, isEmitterCompleted, persistMessage, sendMessage, sendSseMessage, sendStreamEndMessage, sendStreamMessage, sendStreamStartMessage, sendWebsocketMessage
-
Field Details
-
openaiChatModel
@Autowired(required=false) private org.springframework.ai.openai.OpenAiChatModel openaiChatModel
-
-
Constructor Details
-
SpringAIOpenaiService
public SpringAIOpenaiService()
-
-
Method Details
-
createDynamicOptions
根据机器人配置创建动态的OpenAiChatOptions- Parameters:
llm
- 机器人LLM配置- Returns:
- 根据机器人配置创建的选项
-
processPrompt
protected void processPrompt(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply) - Specified by:
processPrompt
in classBaseSpringAIService
-
generateFaqPairs
- Specified by:
generateFaqPairs
in classBaseSpringAIService
-
processPromptSync
- Specified by:
processPromptSync
in classBaseSpringAIService
-
processPromptSSE
protected void processPromptSSE(org.springframework.ai.chat.prompt.Prompt prompt, RobotProtobuf robot, MessageProtobuf messageProtobufQuery, MessageProtobuf messageProtobufReply, org.springframework.web.servlet.mvc.method.annotation.SseEmitter emitter) - Specified by:
processPromptSSE
in classBaseSpringAIService
-
getChatModel
public org.springframework.ai.openai.OpenAiChatModel getChatModel() -
isServiceHealthy
public boolean isServiceHealthy()
-