Enum Class AggregationStrategy

java.lang.Object
java.lang.Enum<AggregationStrategy>
com.tnsai.quality.validation.parallel.AggregationStrategy
All Implemented Interfaces:
Serializable, Comparable<AggregationStrategy>, Constable

public enum AggregationStrategy extends Enum<AggregationStrategy>
Strategy for aggregating results from multiple LLM agents.

Different strategies provide different trade-offs between consensus, quality, and coverage of responses.

  • Enum Constant Details

    • VOTING

      public static final AggregationStrategy VOTING
      Majority voting - select the most common response. Best for: Classification, yes/no decisions, categorical outputs.
    • BEST_OF

      public static final AggregationStrategy BEST_OF
      Best-of-N - select the response with highest confidence score. Best for: Quality-critical tasks, when confidence scores are reliable.
    • CONSENSUS

      public static final AggregationStrategy CONSENSUS
      Consensus - extract and combine common points from all responses. Best for: Code review (common issues), fact extraction, validation.
    • ENSEMBLE

      public static final AggregationStrategy ENSEMBLE
      Ensemble - combine all unique insights from every response. Best for: Brainstorming, comprehensive analysis, creative tasks.
  • Method Details

    • values

      public static AggregationStrategy[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static AggregationStrategy valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getDescription

      public String getDescription()
      Gets the description of this strategy.
    • requiresSynthesis

      public boolean requiresSynthesis()
      Whether this strategy requires LLM synthesis to combine results. VOTING and BEST_OF can work without LLM, while CONSENSUS and ENSEMBLE typically need an LLM to synthesize the combined output.
    • forTaskType

      public static AggregationStrategy forTaskType(String taskType)
      Suggests the best strategy for a given task type.
      Parameters:
      taskType - the type of task
      Returns:
      recommended strategy