Add File
This commit is contained in:
@@ -0,0 +1,71 @@
|
|||||||
|
package com.agentsflex.core.prompt;
|
||||||
|
|
||||||
|
import com.agentsflex.core.llm.functions.Function;
|
||||||
|
import com.agentsflex.core.message.HumanMessage;
|
||||||
|
import com.agentsflex.core.message.Message;
|
||||||
|
import com.agentsflex.core.message.SystemMessage;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class FunctionPrompt extends Prompt {
|
||||||
|
|
||||||
|
private SystemMessage systemMessage;
|
||||||
|
private HumanMessage humanMessage;
|
||||||
|
private boolean autoCall = true;
|
||||||
|
|
||||||
|
public FunctionPrompt(String message, Class<?> functionsClass) {
|
||||||
|
this.humanMessage = new HumanMessage(message);
|
||||||
|
this.humanMessage.addFunctions(functionsClass);
|
||||||
|
}
|
||||||
|
|
||||||
|
public FunctionPrompt(String message, List<Function> functions) {
|
||||||
|
this.humanMessage = new HumanMessage(message);
|
||||||
|
this.humanMessage.addFunctions(functions);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SystemMessage getSystemMessage() {
|
||||||
|
return systemMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSystemMessage(SystemMessage systemMessage) {
|
||||||
|
this.systemMessage = systemMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public HumanMessage getHumanMessage() {
|
||||||
|
return humanMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setHumanMessage(HumanMessage humanMessage) {
|
||||||
|
this.humanMessage = humanMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isAutoCall() {
|
||||||
|
return autoCall;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAutoCall(boolean autoCall) {
|
||||||
|
this.autoCall = autoCall;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Message> toMessages() {
|
||||||
|
List<Message> messages = new ArrayList<>();
|
||||||
|
if (systemMessage != null) {
|
||||||
|
messages.add(0, systemMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
messages.add(humanMessage);
|
||||||
|
return messages;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "FunctionPrompt{" +
|
||||||
|
"systemMessage=" + systemMessage +
|
||||||
|
", humanMessage=" + humanMessage +
|
||||||
|
", autoCall=" + autoCall +
|
||||||
|
", metadataMap=" + metadataMap +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user