فهرست منبع

optimize strategy

supeng 2 هفته پیش
والد
کامیت
4e034b78b0

+ 9 - 0
supply-demand-engine-core/src/main/java/com/tzld/piaoquan/sde/model/dto/StrategyConfigDTO.java

@@ -9,6 +9,15 @@ import lombok.Data;
  */
 @Data
 public class StrategyConfigDTO {
+    /**
+     * 关联 sd_prompt_template.id
+     */
+    private Long promptTemplateId;
+    /**
+     * 模型
+     *
+     * @see com.tzld.piaoquan.sde.integration.OpenRouterClient.Models
+     */
     private String model;
     private Double temperature;
     private Integer maxTokens;

+ 1 - 1
supply-demand-engine-core/src/main/java/com/tzld/piaoquan/sde/model/dto/StrategyResultDTO.java

@@ -11,7 +11,7 @@ import lombok.Data;
 @Data
 @Builder
 public class StrategyResultDTO {
-    private boolean isSuccess;
+    private boolean success;
     private String result;
     private String msg;
 }

+ 0 - 4
supply-demand-engine-core/src/main/java/com/tzld/piaoquan/sde/model/entity/SdStrategy.java

@@ -23,10 +23,6 @@ public class SdStrategy {
      * 策略名称(如:健康类解构需求提取策略-GPT4版)
      */
     private String strategyName;
-    /**
-     * 关联 sd_prompt_template.id
-     */
-    private Long promptTemplateId;
     /**
      * 策略配置:json格式,包括模型配置等
      */

+ 9 - 8
supply-demand-engine-core/src/main/java/com/tzld/piaoquan/sde/service/strategy/DeconstructStrategy.java

@@ -51,12 +51,13 @@ public class DeconstructStrategy implements DemandExtractionStrategy {
     @Override
     public StrategyResultDTO execute(SdTask task, SdStrategy strategy) {
         log.info("Executing deconstruct task: taskId={}, taskNo={}", task.getId(), task.getTaskNo());
+        StrategyConfigDTO strategyConfigDTO = JSON.parseObject(strategy.getConfig(), StrategyConfigDTO.class);
         // 1. 获取Prompt模板
-        SdPromptTemplate promptTemplate = sdPromptTemplateMapper.selectById(strategy.getPromptTemplateId());
+        SdPromptTemplate promptTemplate = sdPromptTemplateMapper.selectById(strategyConfigDTO.getPromptTemplateId());
         if (Objects.isNull(promptTemplate)) {
-            log.error("Prompt template not found: promptTemplateId={}", strategy.getPromptTemplateId());
+            log.error("Prompt template not found: promptTemplateId={}", strategyConfigDTO.getPromptTemplateId());
             return StrategyResultDTO.builder()
-                    .isSuccess(false)
+                    .success(false)
                     .msg("Prompt template not found")
                     .build();
         }
@@ -72,7 +73,7 @@ public class DeconstructStrategy implements DemandExtractionStrategy {
         if (Objects.isNull(subTasks) || subTasks.isEmpty()) {
             log.warn("No successful subtasks found: taskId={}", task.getId());
             return StrategyResultDTO.builder()
-                    .isSuccess(false)
+                    .success(false)
                     .msg("No successful subtasks found")
                     .build();
         }
@@ -90,7 +91,7 @@ public class DeconstructStrategy implements DemandExtractionStrategy {
         if (Objects.isNull(resultItems) || resultItems.isEmpty()) {
             log.warn("No subtask result items found: taskId={}", task.getId());
             return StrategyResultDTO.builder()
-                    .isSuccess(false)
+                    .success(false)
                     .msg("No subtask result items found")
                     .build();
         }
@@ -107,11 +108,10 @@ public class DeconstructStrategy implements DemandExtractionStrategy {
 
         // 6. 调用AI服务 (TODO: 实现具体调用逻辑)
         log.info("Preparing to call AI service: taskId={}, promptLength={}", task.getId(), finalPrompt.length());
-        StrategyConfigDTO strategyConfigDTO = JSON.parseObject(strategy.getConfig(), StrategyConfigDTO.class);
         try {
             String result = openRouterClient.chat(strategyConfigDTO.getModel(), finalPrompt);
             return StrategyResultDTO.builder()
-                    .isSuccess(true)
+                    .success(true)
                     .result(result)
                     .build();
         } catch (IOException e) {
@@ -119,8 +119,9 @@ public class DeconstructStrategy implements DemandExtractionStrategy {
         }
         log.info("Deconstruct task execution completed: taskId={}", task.getId());
         return StrategyResultDTO.builder()
-                .isSuccess(false)
+                .success(false)
                 .msg("execute Deconstruct strategy failure")
                 .build();
+
     }
 }