From 5eb2d7c908b2f0647d2c9cfac4a95f50930c8aad Mon Sep 17 00:00:00 2001 From: Edward_89 Date: Mon, 13 Jan 2025 13:33:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0Prompt=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../prompttemplates/PromptTemplatesController.java | 6 ++++++ .../admin/prompttemplates/vo/OptimizePromptReqVO.java | 10 ++++++++++ .../framework/backend/config/LLMBackendProperties.java | 2 ++ .../prompttemplates/PromptTemplatesService.java | 2 ++ .../prompttemplates/PromptTemplatesServiceImpl.java | 9 +++++++++ yudao-server/src/main/resources/application-local.yaml | 2 ++ 6 files changed, 31 insertions(+) create mode 100644 yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/vo/OptimizePromptReqVO.java diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/PromptTemplatesController.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/PromptTemplatesController.java index 92904f7d4..630a59652 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/PromptTemplatesController.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/PromptTemplatesController.java @@ -92,4 +92,10 @@ public class PromptTemplatesController { promptTemplatesService.unbackupPromptTemplates(updateReqVO); return success(true); } + + @PostMapping("/optimize-prompt") + @Operation(summary = "Prompt优化") + public CommonResult optimizePrompt(@Valid @RequestBody OptimizePromptReqVO reqVO) { + return success(promptTemplatesService.optimizePrompt(reqVO)); + } } diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/vo/OptimizePromptReqVO.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/vo/OptimizePromptReqVO.java new file mode 100644 index 000000000..98c87317e --- /dev/null +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/controller/admin/prompttemplates/vo/OptimizePromptReqVO.java @@ -0,0 +1,10 @@ +package cn.iocoder.yudao.module.llm.controller.admin.prompttemplates.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - Prompt优化 Request VO") +@Data +public class OptimizePromptReqVO { + private String prompt; +} \ No newline at end of file diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java index f8369ed8f..8a8e55cd9 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/framework/backend/config/LLMBackendProperties.java @@ -90,4 +90,6 @@ public class LLMBackendProperties { private String modelFileList; private String modelFileDownload; + + private String optimizePrompt; } diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesService.java index 08ddb6c42..f7b430533 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesService.java @@ -26,4 +26,6 @@ public interface PromptTemplatesService { void updatePromptTemplatesById(@Valid PromptTemplatesDO promptTemplatesDO); + String optimizePrompt(OptimizePromptReqVO reqVO); + } diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesServiceImpl.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesServiceImpl.java index eccc4beaf..d89ae78ef 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesServiceImpl.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/prompttemplates/PromptTemplatesServiceImpl.java @@ -1,6 +1,7 @@ package cn.iocoder.yudao.module.llm.service.prompttemplates; import cn.iocoder.yudao.framework.common.exception.ErrorCode; +import cn.iocoder.yudao.framework.common.util.http.HttpUtils; import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; import cn.iocoder.yudao.module.llm.controller.admin.prompttemplatesbackup.vo.PromptTemplatesBackupSaveReqVO; import cn.iocoder.yudao.module.llm.dal.dataobject.application.ApplicationDO; @@ -10,6 +11,7 @@ import cn.iocoder.yudao.module.llm.dal.dataobject.prompttemplatesbackup.PromptTe import cn.iocoder.yudao.module.llm.dal.dataobject.prompttemplatestags.PromptTemplatesTagsDO; import cn.iocoder.yudao.module.llm.dal.mysql.prompttemplatesapplications.PromptTemplatesApplicationsMapper; import cn.iocoder.yudao.module.llm.dal.mysql.prompttemplatestags.PromptTemplatesTagsMapper; +import cn.iocoder.yudao.module.llm.framework.backend.config.LLMBackendProperties; import cn.iocoder.yudao.module.llm.service.application.ApplicationService; import cn.iocoder.yudao.module.llm.service.label.LabelService; import cn.iocoder.yudao.module.llm.service.prompttemplatesbackup.PromptTemplatesBackupService; @@ -52,6 +54,8 @@ public class PromptTemplatesServiceImpl implements PromptTemplatesService { private LabelService labelService; @Resource private PromptTemplatesBackupService promptTemplatesBackupService; + @Resource + private LLMBackendProperties llmBackendProperties; @Lazy @Resource @@ -361,4 +365,9 @@ public class PromptTemplatesServiceImpl implements PromptTemplatesService { public void updatePromptTemplatesById(PromptTemplatesDO promptTemplatesDO) { promptTemplatesMapper.updateById(promptTemplatesDO); } + + @Override + public String optimizePrompt(OptimizePromptReqVO reqVO) { + return HttpUtils.post(llmBackendProperties.getOptimizePrompt(), null, JSON.toJSONString(reqVO)); + } } diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 1c2d5353e..6169e82b4 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -309,6 +309,8 @@ llm: model_file_list: http://36.133.1.230:5123/models/?path= model_file_download: http://36.133.1.230:5123/models/download/?file_path= + # 提示词优化 + optimize_prompt: http://36.133.1.230:5123/optimize-prompt --- #################### iot相关配置 TODO 芋艿:再瞅瞅 #################### iot: