Class TaskExecutionAgent<Request,Response>
java.lang.Object
com.javaaidev.agenticpatterns.core.Agent
com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent<Request,Response>
- Type Parameters:
Request- Type of agent inputResponse- Type of agent output
- All Implemented Interfaces:
Function<Request,Response>
- Direct Known Subclasses:
NoLLMTaskExecutionAgent
public abstract class TaskExecutionAgent<Request,Response>
extends Agent
implements Function<Request,Response>
Task Execution Agent, refer to the pattern
-
Field Summary
FieldsFields inherited from class com.javaaidev.agenticpatterns.core.Agent
chatClient, observationRegistry -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedTaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient) protectedTaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) protectedTaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType) protectedTaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
Method Summary
Modifier and TypeMethodDescriptiongetPromptContext(@Nullable Request request) Prepare for the values of variables in the prompt templateprotected abstract StringGet the prompt templateprotected ResponseinstrumentedCall(@Nullable Request request, Function<Request, Response> action) protected voidupdateChatClientRequest(org.springframework.ai.chat.client.ChatClient.ChatClientRequestSpec spec) Customize request sent to LLM
-
Field Details
-
responseType
-
-
Constructor Details
-
TaskExecutionAgent
protected TaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient) -
TaskExecutionAgent
protected TaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType) -
TaskExecutionAgent
protected TaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
TaskExecutionAgent
protected TaskExecutionAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry)
-
-
Method Details
-
getPromptTemplate
Get the prompt template- Returns:
- prompt template
-
getPromptContext
Prepare for the values of variables in the prompt template- Parameters:
request- Task input- Returns:
- Values of values
-
updateChatClientRequest
protected void updateChatClientRequest(org.springframework.ai.chat.client.ChatClient.ChatClientRequestSpec spec) Customize request sent to LLM- Parameters:
spec- ChatClient.ChatClientRequestSpec from Spring AI
-
apply
-
call
-
instrumentedCall
-