Class PromptBasedAssembling<Request,Response>

java.lang.Object
com.javaaidev.agenticpatterns.core.Agent
com.javaaidev.agenticpatterns.taskexecution.TaskExecutionAgent<Request,Response>
com.javaaidev.agenticpatterns.parallelizationworkflow.ParallelizationWorkflowAgent<Request,Response>
com.javaaidev.agenticpatterns.parallelizationworkflow.PromptBasedAssembling<Request,Response>
Type Parameters:
Request - Task input type
Response - Task output type
All Implemented Interfaces:
Function<Request,Response>

public abstract class PromptBasedAssembling<Request,Response> extends ParallelizationWorkflowAgent<Request,Response>
A ParallelizationWorkflowAgent which uses an LLM to generate the final result using results from subtasks
  • Constructor Details

    • PromptBasedAssembling

      public PromptBasedAssembling(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry)
    • PromptBasedAssembling

      public PromptBasedAssembling(org.springframework.ai.chat.client.ChatClient chatClient, @Nullable Type responseType, @Nullable io.micrometer.observation.ObservationRegistry observationRegistry)
  • Method Details

    • getSubtasksPromptContext

      protected abstract @Nullable Map<String,Object> getSubtasksPromptContext(TaskExecutionResults results)
      Get values for prompt template variables from results of subtasks
      Parameters:
      results - Subtask execution results
    • getRequestPromptContext

      protected @Nullable Map<String,Object> getRequestPromptContext(@Nullable Request request)
      Get values for prompt template variables from request
      Parameters:
      request - Request
      Returns:
      Values of template variables
    • getPromptContext

      protected @Nullable Map<String,Object> getPromptContext(@Nullable Request request)
      Overrides:
      getPromptContext in class TaskExecutionAgent<Request,Response>