Class DefaultRoutingSelector<Request,Response>
java.lang.Object
com.javaaidev.agenticpatterns.core.Agent
com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent<RoutingRequest<Request,Response>,RoutingResponse>
com.javaaidev.agenticpatterns.routingworkflow.DefaultRoutingSelector<Request,Response>
- Type Parameters:
Request
-Response
-
- All Implemented Interfaces:
RoutingSelector<Request,
,Response> Function<RoutingRequest<Request,
Response>, RoutingResponse>
public class DefaultRoutingSelector<Request,Response>
extends TaskExecutionAgent<RoutingRequest<Request,Response>,RoutingResponse>
implements RoutingSelector<Request,Response>
A RoutingSelector implemented using TaskExecutionAgent
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from class com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent
chatClientRequestSpecUpdater, name, promptTemplate, promptTemplateContextProvider, responseType
Fields inherited from class com.javaaidev.agenticpatterns.core.Agent
chatClient, observationRegistry
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultRoutingSelector
(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) DefaultRoutingSelector
(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Function<Request, String> routingInputFormatter, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
Method Summary
Modifier and TypeMethodDescriptionstatic <Request,
Response>
DefaultRoutingSelector.Builder<Request, Response> builder()
getPromptContext
(@Nullable RoutingRequest<Request, Response> routingRequest) protected String
select
(RoutingRequest<Request, Response> request) Select the target routeMethods inherited from class com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent
apply, call, defaultBuilder, getName, instrumentedCall, updateChatClientRequest
-
Constructor Details
-
DefaultRoutingSelector
public DefaultRoutingSelector(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry) -
DefaultRoutingSelector
-
-
Method Details
-
select
Description copied from interface:RoutingSelector
Select the target route- Specified by:
select
in interfaceRoutingSelector<Request,
Response> - Parameters:
request
- Routing request- Returns:
- Routing response
-
getPromptTemplate
- Overrides:
getPromptTemplate
in classTaskExecutionAgent<RoutingRequest<Request,
Response>, RoutingResponse>
-
getPromptContext
protected @Nullable Map<String,Object> getPromptContext(@Nullable RoutingRequest<Request, Response> routingRequest) - Overrides:
getPromptContext
in classTaskExecutionAgent<RoutingRequest<Request,
Response>, RoutingResponse>
-
builder
-