From ca3ffca4ea920022cf05f867c4a4a649881e308e Mon Sep 17 00:00:00 2001 From: slhafzjw Date: Sun, 3 Aug 2025 23:48:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A8=E8=BF=9B=E6=A1=86=E6=9E=B6=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E6=A8=A1=E5=9D=97=E6=B3=A8=E5=86=8C=E6=9C=BA=E5=88=B6?= =?UTF-8?q?=EF=BC=8C=E5=AE=8C=E5=96=84=E4=BA=86=E6=A8=A1=E5=9D=97=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E4=B8=8E=E5=8A=A0=E8=BD=BD=EF=BC=8C=E6=8E=A5=E4=B8=8B?= =?UTF-8?q?=E6=9D=A5=E5=BA=94=E5=BD=93=E8=BF=9B=E8=A1=8C=E5=AF=B9=E4=BA=8E?= =?UTF-8?q?PostHook=E7=9A=84=E5=8A=A8=E6=80=81=E4=BB=A3=E7=90=86=E4=BB=A5?= =?UTF-8?q?=E5=8F=8A=E6=A8=A1=E5=9D=97=E7=9A=84=E5=AE=9E=E4=BE=8B=E5=8C=96?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除了 ActivateModel 中的 promptModule 方法,不再需要 - 添加了必要的注释 - 为 AgentRegisterFactory 添加了用于指定扫描包的方法 - 新增了几个异常类 - 新增 MetaModule 类,包含Agent执行模块的必要信息,在工厂流程中作为执行模块的上下文 - 完善了 ModuleCheckFactory 中的检查逻辑 --- .../api/factory/AgentRegisterFactory.java | 40 ++++++-- .../factory/entity/AgentRegisterContext.java | 16 +++- .../ExternalModulePathNotExistException.java | 7 ++ .../factory/module/ModuleCheckFactory.java | 94 ++++++++++++++++++- .../factory/module/ModuleHookExecutor.java | 4 - .../module/ModulePreHookExecuteFactory.java | 21 +++++ .../factory/module/ModuleProxyFactory.java | 21 +++++ .../factory/module/ModuleRegisterFactory.java | 21 ++++- .../api/factory/module/annotation/After.java | 7 ++ .../module/annotation/AgentModule.java | 6 +- .../api/factory/module/annotation/Before.java | 6 ++ .../exception/ModuleCheckException.java | 11 +++ .../ModuleFactoryFailedException.java | 11 +++ .../api/factory/module/pojo/MetaModule.java | 11 +++ .../api/flow/abstracts/ActivateModel.java | 7 +- .../module/modules/core/CoreModel.java | 5 - .../evaluator/SliceSelectEvaluator.java | 6 -- .../extractor/MemorySelectExtractor.java | 5 - .../updater/summarizer/MultiSummarizer.java | 5 - .../updater/summarizer/SingleSummarizer.java | 5 - .../updater/summarizer/TotalSummarizer.java | 5 - .../relation_extractor/RelationExtractor.java | 5 - .../StaticMemoryExtractor.java | 5 - 23 files changed, 256 insertions(+), 68 deletions(-) create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/exception/ExternalModulePathNotExistException.java delete mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleHookExecutor.java create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModulePreHookExecuteFactory.java create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleProxyFactory.java create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleCheckException.java create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleFactoryFailedException.java create mode 100644 Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/pojo/MetaModule.java diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/AgentRegisterFactory.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/AgentRegisterFactory.java index 9e849d9c..96a89a54 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/AgentRegisterFactory.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/AgentRegisterFactory.java @@ -3,38 +3,58 @@ package work.slhaf.partner.api.factory; import cn.hutool.core.bean.BeanUtil; import work.slhaf.partner.api.entity.AgentContext; import work.slhaf.partner.api.factory.capability.CapabilityCheckFactory; +import work.slhaf.partner.api.factory.capability.CapabilityInjectFactory; import work.slhaf.partner.api.factory.capability.CapabilityRegisterFactory; import work.slhaf.partner.api.factory.config.ConfigLoaderFactory; import work.slhaf.partner.api.factory.entity.AgentRegisterContext; +import work.slhaf.partner.api.factory.exception.ExternalModulePathNotExistException; import work.slhaf.partner.api.factory.module.ModuleCheckFactory; +import work.slhaf.partner.api.factory.module.ModuleProxyFactory; +import work.slhaf.partner.api.factory.module.ModulePreHookExecuteFactory; import work.slhaf.partner.api.factory.module.ModuleRegisterFactory; +import java.io.File; +import java.util.ArrayList; +import java.util.List; + public class AgentRegisterFactory { + private static List paths = new ArrayList<>(); + private AgentRegisterFactory() { } public static AgentContext launch(String path) { - AgentRegisterContext registerContext = new AgentRegisterContext(path); + paths.add(path); + AgentRegisterContext registerContext = new AgentRegisterContext(paths); //流程 //0. 加载配置 new ConfigLoaderFactory().execute(registerContext); - //1. 执行register和check逻辑 + //1. 注册并检查Capability new CapabilityRegisterFactory().execute(registerContext); new CapabilityCheckFactory().execute(registerContext); - new ModuleRegisterFactory().execute(registerContext); + //2. 注册并检查Module new ModuleCheckFactory().execute(registerContext); - - //2. 为module通过动态代理添加后hook逻辑并进行实例化 - - //3. 先一步注入Capability,避免因前hook逻辑存在针对能力的引用而报错 - - //4. 执行前hook逻辑 - + new ModuleRegisterFactory().execute(registerContext); + //3. 为module通过动态代理添加PostHook逻辑并进行实例化 + new ModuleProxyFactory().execute(registerContext); + //. 先一步注入Capability,避免因前hook逻辑存在针对能力的引用而报错 + new CapabilityInjectFactory().execute(registerContext); + //. 执行模块PreHook逻辑 + new ModulePreHookExecuteFactory().execute(registerContext); AgentContext agentContext = new AgentContext(); BeanUtil.copyProperties(registerContext,agentContext); return agentContext; } + //TODO 也需要可指定路径,当前只是新增了可扫描包 + public static void addScanPath(String path) { + File file = new File(path); + if (!file.exists() || !file.isDirectory()) { + throw new ExternalModulePathNotExistException("不存在的外部模块目录: "+path); + } + paths.add(path); + } + } diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/entity/AgentRegisterContext.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/entity/AgentRegisterContext.java index de77fa71..0fd2e79c 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/entity/AgentRegisterContext.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/entity/AgentRegisterContext.java @@ -2,9 +2,13 @@ package work.slhaf.partner.api.factory.entity; import lombok.Data; import org.reflections.Reflections; +import org.reflections.scanners.Scanners; +import org.reflections.util.ConfigurationBuilder; import work.slhaf.partner.api.common.chat.pojo.Message; import work.slhaf.partner.api.factory.config.pojo.ModelConfig; +import work.slhaf.partner.api.factory.module.pojo.MetaModule; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Set; @@ -21,8 +25,16 @@ public class AgentRegisterContext { private Set> capabilities; private HashMap> modelPromptMap = new HashMap<>(); private HashMap modelConfigMap = new HashMap<>(); + private List moduleList = new ArrayList<>(); - public AgentRegisterContext(String path) { - reflections = new Reflections(path); + public AgentRegisterContext(List paths) { + reflections = new Reflections(new ConfigurationBuilder().setScanners( + Scanners.FieldsAnnotated, + Scanners.SubTypes, + Scanners.MethodsAnnotated, + Scanners.TypesAnnotated + ) + .forPackages(paths.toArray(paths.toArray(new String[0]))) + ); } } diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/exception/ExternalModulePathNotExistException.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/exception/ExternalModulePathNotExistException.java new file mode 100644 index 00000000..95fb61dc --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/exception/ExternalModulePathNotExistException.java @@ -0,0 +1,7 @@ +package work.slhaf.partner.api.factory.exception; + +public class ExternalModulePathNotExistException extends RuntimeException { + public ExternalModulePathNotExistException(String message) { + super("AgentRegisterFactory 执行失败: " + message); + } +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleCheckFactory.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleCheckFactory.java index 40eec465..679326c9 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleCheckFactory.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleCheckFactory.java @@ -1,18 +1,108 @@ package work.slhaf.partner.api.factory.module; +import org.reflections.Reflections; +import work.slhaf.partner.api.factory.config.ModelConfigManager; import work.slhaf.partner.api.factory.entity.AgentBaseFactory; import work.slhaf.partner.api.factory.entity.AgentRegisterContext; +import work.slhaf.partner.api.factory.module.annotation.After; +import work.slhaf.partner.api.factory.module.annotation.AgentModule; +import work.slhaf.partner.api.factory.module.annotation.Before; +import work.slhaf.partner.api.factory.module.exception.ModuleCheckException; +import work.slhaf.partner.api.flow.abstracts.ActivateModel; +import work.slhaf.partner.api.flow.abstracts.AgentInteractionModule; +import work.slhaf.partner.api.flow.abstracts.AgentInteractionSubModule; + +import java.lang.reflect.Method; +import java.util.HashSet; +import java.util.Set; +import java.util.stream.Collectors; public class ModuleCheckFactory extends AgentBaseFactory { + + private Reflections reflections; + @Override protected void setVariables(AgentRegisterContext context) { - + reflections = context.getReflections(); } @Override protected void run() { //检查注解AgentModule所在类是否继承了AgentInteractionModule + agentModuleAnnotationCheck(); //检查hook注解所在方法是否位于AgentInteractionModule子类/AgentInteractionSubModule子类/ActivateModel子类 - //检查当前加载的模块数量、名称与prompt是否一致 + hookLocationCheck(); + //检查实现了ActivateModel的模块数量、名称与prompt是否一致 + activateModelImplCheck(); + } + + private void activateModelImplCheck() { + try { + Set> types = reflections.getSubTypesOf(ActivateModel.class); + Set modelKeySet = new HashSet<>(); + for (Class type : types) { + ActivateModel instance = type.getConstructor().newInstance(); + modelKeySet.add(instance.modelKey()); + } + Set promptKeySet = ModelConfigManager.INSTANCE.getModelPromptMap().keySet(); + if (!promptKeySet.containsAll(modelKeySet)) { + modelKeySet.removeAll(promptKeySet); + throw new ModuleCheckException("存在未配置Prompt的ActivateModel实现! 缺少Prompt的ModelKey列表: "+ modelKeySet); + } + }catch (Exception e) { + throw new ModuleCheckException("ActivateModel 检测出错",e); + } + } + + private void hookLocationCheck() { + //检查@After注解 + postHookLocationCheck(); + //检查@Before注解 + preHookLocationCheck(); + } + + private void preHookLocationCheck() { + Set methods = reflections.getMethodsAnnotatedWith(Before.class); + Set> types = methods.stream() + .map(Method::getDeclaringClass) + .collect(Collectors.toSet()); + checkLocation(types); + } + + + private void postHookLocationCheck() { + Set methods = reflections.getMethodsAnnotatedWith(After.class); + Set> types = methods.stream() + .map(Method::getDeclaringClass) + .collect(Collectors.toSet()); + checkLocation(types); + } + + private void checkLocation(Set> types) { + for (Class type : types) { + if (AgentInteractionModule.class.isAssignableFrom(type)) { + continue; + } + if (AgentInteractionSubModule.class.isAssignableFrom(type)) { + continue; + } + if (ActivateModel.class.isAssignableFrom(type)) { + continue; + } + throw new ModuleCheckException("在不支持的类中使用了hook注解: "+type.getSimpleName()); + } + } + + private void agentModuleAnnotationCheck() { + Set> types = reflections.getTypesAnnotatedWith(AgentModule.class); + for (Class type : types) { + if (type.isAnnotation()) { + continue; + } + if (type.isAssignableFrom(AgentInteractionModule.class)) { + continue; + } + throw new ModuleCheckException("存在未继承AgentInteractionModule.class的AgentModule实现: " + type.getSimpleName()); + } } } diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleHookExecutor.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleHookExecutor.java deleted file mode 100644 index f3dc3b36..00000000 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleHookExecutor.java +++ /dev/null @@ -1,4 +0,0 @@ -package work.slhaf.partner.api.factory.module; - -public class ModuleHookExecutor { -} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModulePreHookExecuteFactory.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModulePreHookExecuteFactory.java new file mode 100644 index 00000000..49f1e369 --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModulePreHookExecuteFactory.java @@ -0,0 +1,21 @@ +package work.slhaf.partner.api.factory.module; + +import work.slhaf.partner.api.factory.entity.AgentBaseFactory; +import work.slhaf.partner.api.factory.entity.AgentRegisterContext; + +import java.lang.reflect.InvocationTargetException; + +/** + * 负责执行前hook逻辑 + */ +public class ModulePreHookExecuteFactory extends AgentBaseFactory { + @Override + protected void setVariables(AgentRegisterContext context) { + + } + + @Override + protected void run() throws NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException { + + } +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleProxyFactory.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleProxyFactory.java new file mode 100644 index 00000000..30ed77aa --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleProxyFactory.java @@ -0,0 +1,21 @@ +package work.slhaf.partner.api.factory.module; + +import work.slhaf.partner.api.factory.entity.AgentBaseFactory; +import work.slhaf.partner.api.factory.entity.AgentRegisterContext; + +import java.lang.reflect.InvocationTargetException; + +/** + * 通过扫描注解@Before,获取到各个模块的后hook逻辑并通过动态代理添加到执行逻辑之后 + */ +public class ModuleProxyFactory extends AgentBaseFactory { + @Override + protected void setVariables(AgentRegisterContext context) { + + } + + @Override + protected void run() throws NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException { + //TODO 通过动态代理生成实例、添加PostHook逻辑 + } +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleRegisterFactory.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleRegisterFactory.java index c284df29..bfc2b395 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleRegisterFactory.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/ModuleRegisterFactory.java @@ -3,6 +3,13 @@ package work.slhaf.partner.api.factory.module; import org.reflections.Reflections; import work.slhaf.partner.api.factory.entity.AgentBaseFactory; import work.slhaf.partner.api.factory.entity.AgentRegisterContext; +import work.slhaf.partner.api.factory.module.annotation.AgentModule; +import work.slhaf.partner.api.factory.module.pojo.MetaModule; + +import java.util.Arrays; +import java.util.Comparator; +import java.util.List; +import java.util.Set; /** * 负责扫描@Module注解获取模块实例 @@ -10,14 +17,26 @@ import work.slhaf.partner.api.factory.entity.AgentRegisterContext; public class ModuleRegisterFactory extends AgentBaseFactory { private Reflections reflections; + private List moduleList; @Override protected void setVariables(AgentRegisterContext context) { reflections = context.getReflections(); + moduleList = context.getModuleList(); } @Override protected void run() { - //反射扫描获取InteractionModule所在类与hook注解所在方法 + //反射扫描获取@AgentModule所在类, 该部分为Agent流程执行模块 + Set> modules = reflections.getTypesAnnotatedWith(AgentModule.class); + for (Class module : modules) { + AgentModule agentModule = module.getAnnotation(AgentModule.class); + MetaModule metaModule = new MetaModule(); + metaModule.setName(agentModule.name()); + metaModule.setOrder(agentModule.order()); + metaModule.setClazz(module); + moduleList.add(metaModule); + } + moduleList.sort(Comparator.comparing(MetaModule::getOrder)); } } diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/After.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/After.java index 03baf1a0..0a0195b3 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/After.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/After.java @@ -6,6 +6,13 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +/** + * 仅适用于以下类中的方法: + * 1. @AgentModule注解所在类 + * 2. ActivateModel子类 + * 3. AgentInteractionModule或者AgentInteractionSubModule子类 + */ + @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface After { diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/AgentModule.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/AgentModule.java index c8c5249d..294ae8fe 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/AgentModule.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/AgentModule.java @@ -1,14 +1,12 @@ package work.slhaf.partner.api.factory.module.annotation; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; +import java.lang.annotation.*; /** * 用于注解执行模块 */ +@Inherited @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface AgentModule { diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/Before.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/Before.java index b296bad5..c10079a9 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/Before.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/annotation/Before.java @@ -5,6 +5,12 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +/** + * 仅适用于以下类中的方法: + * 1. @AgentModule注解所在类 + * 2. ActivateModel子类 + * 3. AgentInteractionModule或者AgentInteractionSubModule子类 + */ @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface Before { diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleCheckException.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleCheckException.java new file mode 100644 index 00000000..5235f146 --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleCheckException.java @@ -0,0 +1,11 @@ +package work.slhaf.partner.api.factory.module.exception; + +public class ModuleCheckException extends ModuleFactoryFailedException{ + public ModuleCheckException(String message) { + super(message); + } + + public ModuleCheckException(String message, Throwable cause) { + super(message, cause); + } +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleFactoryFailedException.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleFactoryFailedException.java new file mode 100644 index 00000000..976fcb82 --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/exception/ModuleFactoryFailedException.java @@ -0,0 +1,11 @@ +package work.slhaf.partner.api.factory.module.exception; + +public class ModuleFactoryFailedException extends RuntimeException { + public ModuleFactoryFailedException(String message) { + super("ModuleFactory 执行失败: "+message); + } + + public ModuleFactoryFailedException(String message, Throwable cause) { + super("ModuleFactory 执行失败: "+message, cause); + } +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/pojo/MetaModule.java b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/pojo/MetaModule.java new file mode 100644 index 00000000..e4d74ccf --- /dev/null +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/factory/module/pojo/MetaModule.java @@ -0,0 +1,11 @@ +package work.slhaf.partner.api.factory.module.pojo; + +import lombok.Data; + +@Data +public class MetaModule { + private String name; + private int order; + private Class clazz; + private Object instance; +} diff --git a/Partner-Api/src/main/java/work/slhaf/partner/api/flow/abstracts/ActivateModel.java b/Partner-Api/src/main/java/work/slhaf/partner/api/flow/abstracts/ActivateModel.java index ab43c625..abf04980 100644 --- a/Partner-Api/src/main/java/work/slhaf/partner/api/flow/abstracts/ActivateModel.java +++ b/Partner-Api/src/main/java/work/slhaf/partner/api/flow/abstracts/ActivateModel.java @@ -18,16 +18,16 @@ public interface ActivateModel { default void modelSettings() { Model model = new Model(); ModelConfig modelConfig = ModelConfigManager.INSTANCE.loadModelConfig(modelKey()); - model.setBaseMessages(withBasicPrompt() ? loadSpecificPromptAndBasicPrompt(modelKey(), promptModule()) : loadSpecificPrompt(modelKey(), promptModule())); + model.setBaseMessages(withBasicPrompt() ? loadSpecificPromptAndBasicPrompt(modelKey()) : loadSpecificPrompt(modelKey())); model.setChatClient(new ChatClient(modelConfig.getBaseUrl(), modelConfig.getApikey(), modelConfig.getModel())); } - private List loadSpecificPrompt(String modelKey, String specificModule) { + private List loadSpecificPrompt(String modelKey) { return null; } - private List loadSpecificPromptAndBasicPrompt(String modelKey, String specificModule) { + private List loadSpecificPromptAndBasicPrompt(String modelKey) { return null; } @@ -82,5 +82,4 @@ public interface ActivateModel { boolean withBasicPrompt(); - String promptModule(); } diff --git a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/core/CoreModel.java b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/core/CoreModel.java index fa16bd31..c17c6cf0 100644 --- a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/core/CoreModel.java +++ b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/core/CoreModel.java @@ -73,11 +73,6 @@ public class CoreModel extends CoreModule implements ActivateModel { return true; } - @Override - public String promptModule() { - return ModelConstant.Prompt.CORE; - } - @Override public void execute(InteractionContext interactionContext) { String userId = interactionContext.getUserId(); diff --git a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/selector/evaluator/SliceSelectEvaluator.java b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/selector/evaluator/SliceSelectEvaluator.java index 5cf79187..1468af5d 100644 --- a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/selector/evaluator/SliceSelectEvaluator.java +++ b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/selector/evaluator/SliceSelectEvaluator.java @@ -13,7 +13,6 @@ import work.slhaf.partner.core.cognation.common.pojo.MemoryResult; import work.slhaf.partner.core.cognation.common.pojo.MemorySliceResult; import work.slhaf.partner.core.cognation.submodule.memory.pojo.EvaluatedSlice; import work.slhaf.partner.core.cognation.submodule.memory.pojo.MemorySlice; -import work.slhaf.partner.module.common.model.ModelConstant; import work.slhaf.partner.module.modules.memory.selector.evaluator.data.EvaluatorBatchInput; import work.slhaf.partner.module.modules.memory.selector.evaluator.data.EvaluatorInput; import work.slhaf.partner.module.modules.memory.selector.evaluator.data.EvaluatorResult; @@ -145,9 +144,4 @@ public class SliceSelectEvaluator extends AgentInteractionSubModule,Vo return false; } - @Override - public String promptModule() { - return ModelConstant.Prompt.MEMORY; - } } diff --git a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/updater/summarizer/TotalSummarizer.java b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/updater/summarizer/TotalSummarizer.java index ad706ac6..9bb06c96 100644 --- a/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/updater/summarizer/TotalSummarizer.java +++ b/Partner-Main/src/main/java/work/slhaf/partner/module/modules/memory/updater/summarizer/TotalSummarizer.java @@ -8,7 +8,6 @@ import lombok.extern.slf4j.Slf4j; import work.slhaf.partner.api.common.chat.pojo.ChatResponse; import work.slhaf.partner.api.flow.abstracts.ActivateModel; import work.slhaf.partner.api.flow.abstracts.AgentInteractionSubModule; -import work.slhaf.partner.module.common.model.ModelConstant; import java.util.HashMap; @@ -53,8 +52,4 @@ public class TotalSummarizer extends AgentInteractionSubModule