diff --git a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCapability.java b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCapability.java similarity index 80% rename from Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCapability.java rename to Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCapability.java index 06fe7164..8141c303 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCapability.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCapability.java @@ -1,4 +1,4 @@ -package work.slhaf.partner.core.cognation; +package work.slhaf.partner.core.cognition; import work.slhaf.partner.api.agent.factory.capability.annotation.Capability; import work.slhaf.partner.api.chat.pojo.Message; @@ -6,8 +6,8 @@ import work.slhaf.partner.api.chat.pojo.Message; import java.util.List; import java.util.concurrent.locks.Lock; -@Capability("cognation") -public interface CognationCapability { +@Capability("cognition") +public interface CognitionCapability { String initiateTurn(String input, String target); diff --git a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCore.java b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCore.java similarity index 92% rename from Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCore.java rename to Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCore.java index 5c1a149e..65dd069f 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/CognationCore.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/CognitionCore.java @@ -1,4 +1,4 @@ -package work.slhaf.partner.core.cognation; +package work.slhaf.partner.core.cognition; import lombok.EqualsAndHashCode; import lombok.Getter; @@ -20,10 +20,10 @@ import java.util.concurrent.locks.ReentrantLock; @EqualsAndHashCode(callSuper = true) @Slf4j -@CapabilityCore(value = "cognation") +@CapabilityCore(value = "cognition") @Getter @Setter -public class CognationCore extends PartnerCore { +public class CognitionCore extends PartnerCore { @Serial private static final long serialVersionUID = 1L; @@ -34,7 +34,8 @@ public class CognationCore extends PartnerCore { * 主模型的聊天记录 */ private List chatMessages = new ArrayList<>(); - public CognationCore() throws IOException, ClassNotFoundException { + + public CognitionCore() throws IOException, ClassNotFoundException { } @CapabilityMethod @@ -89,6 +90,6 @@ public class CognationCore extends PartnerCore { @Override protected String getCoreKey() { - return "cognation-core"; + return "cognition-core"; } } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/exception/UserNotExistsException.java b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/exception/UserNotExistsException.java similarity index 73% rename from Partner-Core/src/main/java/work/slhaf/partner/core/cognation/exception/UserNotExistsException.java rename to Partner-Core/src/main/java/work/slhaf/partner/core/cognition/exception/UserNotExistsException.java index aae2addb..4c116f7e 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/core/cognation/exception/UserNotExistsException.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/exception/UserNotExistsException.java @@ -1,4 +1,4 @@ -package work.slhaf.partner.core.cognation.exception; +package work.slhaf.partner.core.cognition.exception; public class UserNotExistsException extends RuntimeException { public UserNotExistsException(String message) { diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/builtin/BuiltinCapabilityActionProvider.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/builtin/BuiltinCapabilityActionProvider.java index 5db5939f..3b65dcbe 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/builtin/BuiltinCapabilityActionProvider.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/builtin/BuiltinCapabilityActionProvider.java @@ -4,7 +4,7 @@ import com.alibaba.fastjson2.JSONObject; import work.slhaf.partner.api.agent.factory.capability.annotation.InjectCapability; import work.slhaf.partner.api.agent.factory.component.annotation.AgentComponent; import work.slhaf.partner.core.action.entity.MetaActionInfo; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.core.perceive.PerceiveCapability; @@ -28,7 +28,7 @@ class BuiltinCapabilityActionProvider implements BuiltinActionProvider { @InjectCapability private MemoryCapability memoryCapability; @InjectCapability - private CognationCapability cognationCapability; + private CognitionCapability cognitionCapability; @InjectCapability private PerceiveCapability perceiveCapability; @@ -115,7 +115,7 @@ class BuiltinCapabilityActionProvider implements BuiltinActionProvider { Function, String> invoker = params -> { String input = BuiltinActionRegistry.BuiltinActionDefinition.requireString(params, "input"); String target = BuiltinActionRegistry.BuiltinActionDefinition.requireString(params, "target"); - return cognationCapability.initiateTurn(input, target); + return cognitionCapability.initiateTurn(input, target); }; return new BuiltinActionRegistry.BuiltinActionDefinition( diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionExecutor.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionExecutor.java index 76f952df..a51b3fc8 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionExecutor.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionExecutor.java @@ -9,7 +9,7 @@ import work.slhaf.partner.core.action.ActionCapability; import work.slhaf.partner.core.action.ActionCore; import work.slhaf.partner.core.action.entity.*; import work.slhaf.partner.core.action.runner.RunnerClient; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.module.modules.action.executor.entity.*; @@ -26,7 +26,7 @@ public class ActionExecutor extends AbstractAgentModule.Standalone { @InjectCapability private MemoryCapability memoryCapability; @InjectCapability - private CognationCapability cognationCapability; + private CognitionCapability cognitionCapability; @InjectModule private ParamsExtractor paramsExtractor; @InjectModule @@ -356,7 +356,7 @@ public class ActionExecutor extends AbstractAgentModule.Standalone { MetaActionInfo metaActionInfo = actionCapability.loadMetaActionInfo(action.getKey()); input.setHistoryActionResults(historyActionsResults); input.setParams(metaActionInfo.getParams()); - input.setRecentMessages(cognationCapability.getChatMessages()); + input.setRecentMessages(cognitionCapability.getChatMessages()); input.setActionDescription(metaActionInfo.getDescription()); input.setUserId(userId); return input; @@ -366,7 +366,7 @@ public class ActionExecutor extends AbstractAgentModule.Standalone { List additionalContext) { ExtractorInput input = new ExtractorInput(); input.setActivatedMemorySlices(memoryCapability.getActivatedSlices()); - input.setRecentMessages(cognationCapability.getChatMessages()); + input.setRecentMessages(cognitionCapability.getChatMessages()); input.setMetaActionInfo(actionCapability.loadMetaActionInfo(action.getKey())); input.setHistoryActionResults(historyActionResults); input.setAdditionalContext(additionalContext); @@ -381,7 +381,7 @@ public class ActionExecutor extends AbstractAgentModule.Standalone { .description(executableAction.getDescription()) .history(executableAction.getHistory().get(executableAction.getExecutingStage())) .status(executableAction.getStatus()) - .recentMessages(cognationCapability.getChatMessages()) + .recentMessages(cognitionCapability.getChatMessages()) .activatedSlices(memoryCapability.getActivatedSlices()) .build(); } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionRepairer.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionRepairer.java index bae64092..b4fe731e 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionRepairer.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/action/executor/ActionRepairer.java @@ -15,7 +15,7 @@ import work.slhaf.partner.core.action.ActionCore.ExecutorType; import work.slhaf.partner.core.action.entity.MetaAction; import work.slhaf.partner.core.action.entity.MetaAction.Result; import work.slhaf.partner.core.action.runner.RunnerClient; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.module.modules.action.executor.entity.GeneratorInput; import work.slhaf.partner.module.modules.action.executor.entity.GeneratorResult; import work.slhaf.partner.module.modules.action.executor.entity.RepairerInput; @@ -46,7 +46,7 @@ public class ActionRepairer extends AbstractAgentModule.Sub chatMessages = cognationCapability.snapshotChatMessages(); + List chatMessages = cognitionCapability.snapshotChatMessages(); List recentMessages = new ArrayList<>(); if (chatMessages.size() > 5) { recentMessages.addAll(chatMessages.subList(chatMessages.size() - 5, chatMessages.size() - 1)); @@ -326,7 +326,7 @@ public class ActionPlanner extends AbstractAgentModule.Running pendingActions = actionCapability.listActivePendingActions(context.getSource()); - confirmerInput.setRecentMessages(cognationCapability.snapshotChatMessages()); + confirmerInput.setRecentMessages(cognitionCapability.snapshotChatMessages()); confirmerInput.setPendingActions(pendingActions); return confirmerInput; } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/core/CommunicationProducer.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/core/CommunicationProducer.java index 02ef2233..6ee5c098 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/core/CommunicationProducer.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/core/CommunicationProducer.java @@ -12,7 +12,7 @@ import work.slhaf.partner.api.agent.factory.component.abstracts.ActivateModel; import work.slhaf.partner.api.agent.factory.component.annotation.Init; import work.slhaf.partner.api.agent.runtime.interaction.flow.ContextBlock; import work.slhaf.partner.api.chat.pojo.Message; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.runtime.interaction.data.context.PartnerRunningFlowContext; import javax.xml.parsers.DocumentBuilderFactory; @@ -42,7 +42,7 @@ public class CommunicationProducer extends AbstractAgentModule.Running chatMessages = cognationCapability.getChatMessages(); + List chatMessages = cognitionCapability.getChatMessages(); chatMessages.removeIf(this::isStructuredUserMessage); Message primaryUserMessage = new Message( Message.Character.USER, @@ -124,12 +124,12 @@ public class CommunicationProducer extends AbstractAgentModule.Running snapshotConversationMessages() { - List snapshot = new ArrayList<>(cognationCapability.snapshotChatMessages()); + List snapshot = new ArrayList<>(cognitionCapability.snapshotChatMessages()); snapshot.removeIf(this::isStructuredUserMessage); return snapshot; } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/runtime/MemoryRuntime.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/runtime/MemoryRuntime.java index 3bf38118..8e33c45e 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/runtime/MemoryRuntime.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/runtime/MemoryRuntime.java @@ -9,7 +9,7 @@ import work.slhaf.partner.api.agent.factory.component.annotation.Init; import work.slhaf.partner.api.agent.runtime.config.AgentConfigLoader; import work.slhaf.partner.api.common.entity.PersistableObject; import work.slhaf.partner.common.config.PartnerAgentConfigLoader; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.core.memory.exception.UnExistedDateIndexException; import work.slhaf.partner.core.memory.exception.UnExistedTopicException; @@ -41,7 +41,7 @@ public class MemoryRuntime extends AbstractAgentModule.Standalone { @InjectCapability private MemoryCapability memoryCapability; @InjectCapability - private CognationCapability cognationCapability; + private CognitionCapability cognitionCapability; private final ReentrantLock runtimeLock = new ReentrantLock(); private Map> topicSlices = new HashMap<>(); @@ -57,7 +57,7 @@ public class MemoryRuntime extends AbstractAgentModule.Standalone { private void checkAndSetMemoryId() { String currentMemoryId = memoryCapability.getMemorySessionId(); - if (currentMemoryId == null || cognationCapability.getChatMessages().isEmpty()) { + if (currentMemoryId == null || cognitionCapability.getChatMessages().isEmpty()) { memoryCapability.refreshMemorySession(); } } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/MemorySelector.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/MemorySelector.java index 269476aa..7a4fa356 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/MemorySelector.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/MemorySelector.java @@ -6,7 +6,7 @@ import lombok.EqualsAndHashCode; import work.slhaf.partner.api.agent.factory.capability.annotation.InjectCapability; import work.slhaf.partner.api.agent.factory.component.abstracts.AbstractAgentModule; import work.slhaf.partner.api.agent.factory.component.annotation.InjectModule; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.core.memory.exception.UnExistedDateIndexException; import work.slhaf.partner.core.memory.exception.UnExistedTopicException; @@ -31,7 +31,7 @@ public class MemorySelector extends AbstractAgentModule.Running(candidates.values())) - .messages(cognationCapability.getChatMessages()) + .messages(cognitionCapability.getChatMessages()) .build(); log.debug("[MemorySelector] 切片评估输入: {}", JSONObject.toJSONString(evaluatorInput)); List memorySlices = sliceSelectEvaluator.execute(evaluatorInput); diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/extractor/MemorySelectExtractor.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/extractor/MemorySelectExtractor.java index d6fea0ba..a7df4ad3 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/extractor/MemorySelectExtractor.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/selector/extractor/MemorySelectExtractor.java @@ -8,7 +8,7 @@ import work.slhaf.partner.api.agent.factory.component.abstracts.AbstractAgentMod import work.slhaf.partner.api.agent.factory.component.abstracts.ActivateModel; import work.slhaf.partner.api.agent.factory.component.annotation.InjectModule; import work.slhaf.partner.api.chat.pojo.Message; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.core.memory.pojo.ActivatedMemorySlice; import work.slhaf.partner.module.modules.memory.runtime.MemoryRuntime; @@ -28,14 +28,14 @@ public class MemorySelectExtractor extends AbstractAgentModule.Sub chatMessages = cognationCapability.snapshotChatMessages(); + List chatMessages = cognitionCapability.snapshotChatMessages(); ExtractorResult extractorResult; try { List activatedMemorySlices = memoryCapability.getActivatedSlices(); diff --git a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/updater/MemoryUpdater.java b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/updater/MemoryUpdater.java index 749c1be1..022b87e3 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/updater/MemoryUpdater.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/module/modules/memory/updater/MemoryUpdater.java @@ -12,7 +12,7 @@ import work.slhaf.partner.api.chat.pojo.Message; import work.slhaf.partner.common.thread.InteractionThreadPoolExecutor; import work.slhaf.partner.core.action.entity.Schedulable; import work.slhaf.partner.core.action.entity.StateAction; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.core.memory.pojo.MemorySlice; import work.slhaf.partner.core.memory.pojo.MemoryUnit; @@ -40,7 +40,7 @@ public class MemoryUpdater extends AbstractAgentModule.Running= MEMORY_UPDATE_TRIGGER_ROLL_LIMIT; + boolean trigger = cognitionCapability.getChatMessages().size() >= MEMORY_UPDATE_TRIGGER_ROLL_LIMIT; if (!trigger) { return; } @@ -94,7 +94,7 @@ public class MemoryUpdater extends AbstractAgentModule.Running UPDATE_TRIGGER_INTERVAL && chatCount > 1) { triggerMemoryUpdate(true); log.info("[MemoryUpdater] 记忆更新: 自动触发"); @@ -107,12 +107,12 @@ public class MemoryUpdater extends AbstractAgentModule.Running chatSnapshot = cognationCapability.snapshotChatMessages(); + List chatSnapshot = cognitionCapability.snapshotChatMessages(); if (chatSnapshot.size() <= 1) { return; } updateMemory(chatSnapshot); - cognationCapability.rollChatMessagesWithSnapshot(chatSnapshot.size(), CONTEXT_RETAIN_DIVISOR); + cognitionCapability.rollChatMessagesWithSnapshot(chatSnapshot.size(), CONTEXT_RETAIN_DIVISOR); if (refreshMemoryId) { memoryCapability.refreshMemorySession(); } diff --git a/Partner-Core/src/test/java/work/slhaf/partner/module/modules/action/dispatcher/executor/ActionExecutorTest.java b/Partner-Core/src/test/java/work/slhaf/partner/module/modules/action/dispatcher/executor/ActionExecutorTest.java index ce8e0eb1..ff47c018 100644 --- a/Partner-Core/src/test/java/work/slhaf/partner/module/modules/action/dispatcher/executor/ActionExecutorTest.java +++ b/Partner-Core/src/test/java/work/slhaf/partner/module/modules/action/dispatcher/executor/ActionExecutorTest.java @@ -12,7 +12,7 @@ import work.slhaf.partner.core.action.ActionCapability; import work.slhaf.partner.core.action.ActionCore; import work.slhaf.partner.core.action.entity.*; import work.slhaf.partner.core.action.runner.RunnerClient; -import work.slhaf.partner.core.cognation.CognationCapability; +import work.slhaf.partner.core.cognition.CognitionCapability; import work.slhaf.partner.core.memory.MemoryCapability; import work.slhaf.partner.module.modules.action.executor.ActionCorrector; import work.slhaf.partner.module.modules.action.executor.ActionExecutor; @@ -59,7 +59,7 @@ class ActionExecutorTest { @Mock MemoryCapability memoryCapability; @Mock - CognationCapability cognationCapability; + CognitionCapability cognitionCapability; @Mock ParamsExtractor paramsExtractor; @Mock @@ -74,7 +74,7 @@ class ActionExecutorTest { @BeforeEach void setUp() { - lenient().when(cognationCapability.getChatMessages()).thenReturn(Collections.emptyList()); + lenient().when(cognitionCapability.getChatMessages()).thenReturn(Collections.emptyList()); lenient().when(memoryCapability.getActivatedSlices()).thenReturn(Collections.emptyList()); lenient().when(actionCapability.putPhaserRecord(any(Phaser.class), any(ExecutableAction.class))) .thenAnswer(inv -> new PhaserRecord(inv.getArgument(0), inv.getArgument(1)));