Class RoutingWorkflowAgent<Request,Response>
java.lang.Object
com.javaaidev.agenticpatterns.core.Agent
com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent<Request,Response>
com.javaaidev.agenticpatterns.routingworkflow.RoutingWorkflowAgent<Request,Response>
- Type Parameters:
Request
- Task input typeResponse
- Task output type
- All Implemented Interfaces:
Function<Request,
Response>
public abstract class RoutingWorkflowAgent<Request,Response>
extends TaskExecutionAgent<Request,Response>
Routing Workflow agent, refer to doc
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
Agent for the routing -
Field Summary
Fields inherited from class com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent
responseType
Fields inherited from class com.javaaidev.agenticpatterns.core.Agent
chatClient, observationRegistry
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
RoutingWorkflowAgent
(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) protected
RoutingWorkflowAgent
(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addRoutingChoice
(RoutingChoice<Request, Response> routingChoice) Add a new routing choiceprotected String
formatRoutingInput
(@Nullable Request request) Generate the input used by the default prompt templateprotected String
getRoutingPromptContext
(@Nullable RoutingRequest<Request, Response> routingRequest) Get values of variables used in the default prompt templateprotected String
Get the prompt template for routingMethods inherited from class com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent
apply, getPromptContext, instrumentedCall, updateChatClientRequest
Methods inherited from class com.javaaidev.agenticpatterns.core.Agent
getName
-
Constructor Details
-
RoutingWorkflowAgent
protected RoutingWorkflowAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
RoutingWorkflowAgent
protected RoutingWorkflowAgent(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry)
-
-
Method Details
-
addRoutingChoice
Add a new routing choice- Parameters:
routingChoice
- Routing choice
-
getPromptTemplate
- Specified by:
getPromptTemplate
in classTaskExecutionAgent<Request,
Response>
-
getRoutingPromptTemplate
Get the prompt template for routing- Returns:
- Prompt template
-
formatRoutingInput
Generate the input used by the default prompt template- Parameters:
request
- Request- Returns:
- Input for routing prompt template
-
getRoutingPromptContext
protected @Nullable Map<String,Object> getRoutingPromptContext(@Nullable RoutingRequest<Request, Response> routingRequest) Get values of variables used in the default prompt template- Parameters:
routingRequest
- Routing request- Returns:
- Values of variables
-
call
- Overrides:
call
in classTaskExecutionAgent<Request,
Response>
-
doCall
-