diff --git a/pom.xml b/pom.xml index e32402e..68c2f03 100755 --- a/pom.xml +++ b/pom.xml @@ -4,13 +4,13 @@ lm-lib de.extio lm-lib - 1.6.7 + 1.6.8 21 21 21 - 3.5.3 + 3.5.5 1.0.0-beta.5 1.1.0 3.12.0 diff --git a/src/main/java/de/extio/lmlib/agent/AgentType.java b/src/main/java/de/extio/lmlib/agent/AgentType.java index 6e81663..ef05cbe 100755 --- a/src/main/java/de/extio/lmlib/agent/AgentType.java +++ b/src/main/java/de/extio/lmlib/agent/AgentType.java @@ -1,5 +1,5 @@ package de.extio.lmlib.agent; public enum AgentType { - COMPLETION, START_CONVERSATION, CONVERSATION, CONVERSATION_WITH_SYSTEM_PROMPT, PROCESSING_ONLY; + COMPLETION, START_CONVERSATION, START_CONVERSATION_WITH_SYSTEM_PROMPT, CONVERSATION, CONVERSATION_WITH_SYSTEM_PROMPT, PROCESSING_ONLY; } diff --git a/src/main/java/de/extio/lmlib/agent/BaseAgent.java b/src/main/java/de/extio/lmlib/agent/BaseAgent.java index 8330487..64563f4 100644 --- a/src/main/java/de/extio/lmlib/agent/BaseAgent.java +++ b/src/main/java/de/extio/lmlib/agent/BaseAgent.java @@ -272,6 +272,10 @@ public interface BaseAgent { } split.context().setConversation(conversation); } + else if (this.agentType(split.context()) == AgentType.START_CONVERSATION_WITH_SYSTEM_PROMPT) { + conversation = Conversation.create(this.systemPrompt(), split.text()); + split.context().setConversation(conversation); + } else { if (conversation.getConversation().get(0).type() == TurnType.SYSTEM && this.agentType(split.context()) != AgentType.CONVERSATION_WITH_SYSTEM_PROMPT) { final String mergedSysAndUser; @@ -332,7 +336,7 @@ public interface BaseAgent { context.setConversation(null); } - case final BaseAgent a when a.agentType(context) == AgentType.START_CONVERSATION -> { + case final BaseAgent a when a.agentType(context) == AgentType.START_CONVERSATION || a.agentType(context) == AgentType.START_CONVERSATION_WITH_SYSTEM_PROMPT -> { context.getGraph().add("🗨"); context.setConversation(null); }