From 0325d413502474062e1d400df319bfd390e94956 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 17 Sep 2025 16:12:40 +0800 Subject: [PATCH] feat(ai): 新增 AI 陪练相关功能 --- src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java | 20 ++++++++++++++++++++ 1 files changed, 20 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java index bd1e116..7a158ef 100644 --- a/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/ai/strategy/Impl/AliApplicationLlmStrategyServiceImpl.java @@ -1,5 +1,6 @@ package cc.mrbird.febs.ai.strategy.Impl; +import cc.mrbird.febs.ai.enumerates.AiTypeEnum; import cc.mrbird.febs.ai.strategy.LlmStrategyService; import cc.mrbird.febs.ai.strategy.enumerates.LlmApplicationAppIdEnum; import cc.mrbird.febs.ai.strategy.enumerates.LlmStrategyContextEnum; @@ -53,6 +54,23 @@ } } return bizParamsMap; + } + + private List<Message> getMessages(List<LlmStrategyDto> dto) { + List<Message> messages = new ArrayList<>(); + for (LlmStrategyDto dtoItem : dto){ + if (StrUtil.equals(AiTypeEnum.MESSAGES.getName(), dtoItem.getRole())){ + List<LlmStrategyDto> messages1 = dtoItem.getMessages(); + for (LlmStrategyDto dtoItem1 : messages1){ + messages.add(Message.builder() + .role(dtoItem1.getRole()) + .content(dtoItem1.getContent()) + .build()); + } + break; + } + } + return messages; } private String getQuery(List<LlmStrategyDto> dto) { @@ -160,6 +178,7 @@ throw new FebsException("百炼工作流初始化异常"); } HashMap prompt = getPrompt(dto); + List<Message> messages = getMessages(dto); String query = getQuery(dto); String appId = getAppId(dto); if (prompt == null || prompt.size() == 0){ @@ -178,6 +197,7 @@ .appId(appId) //替换为实际的应用 ID .flowStreamMode(FlowStreamMode.MESSAGE_FORMAT) .prompt(query) + .messages( messages) .bizParams(JsonUtils.toJsonObject( prompt)) .build(); -- Gitblit v1.9.1