Class VariantSpec

java.lang.Object
com.tnsai.agents.variant.VariantSpec

public class VariantSpec extends Object
Configuration for an agent variant.

Defines the model, token limits, tools, and other settings for a specific variant tier. Use the predefined configurations or create custom ones.

Usage


 // Use predefined config
 VariantSpec config = VariantSpec.forVariant(AgentVariant.HIGH);

 // Or build custom
 VariantSpec config = VariantSpec.builder()
     .variant(AgentVariant.HIGH)
     .model("claude-opus-4")
     .maxTokens(100000)
     .tools(ToolSet.ALL)
     .timeout(Duration.ofMinutes(10))
     .build();
 
  • Method Details

    • builder

      public static VariantSpec.Builder builder()
    • forVariant

      public static VariantSpec forVariant(AgentVariant variant)
      Returns a predefined configuration for the given variant.
    • highSpec

      public static VariantSpec highSpec()
      HIGH variant: Maximum quality configuration.
    • mediumSpec

      public static VariantSpec mediumSpec()
      MEDIUM variant: Balanced configuration.
    • miniSpec

      public static VariantSpec miniSpec()
      MINI variant: Fast and efficient configuration.
    • getVariant

      public AgentVariant getVariant()
    • getPreferredModel

      public String getPreferredModel()
    • getFallbackModels

      public List<String> getFallbackModels()
    • getMaxInputTokens

      public int getMaxInputTokens()
    • getMaxOutputTokens

      public int getMaxOutputTokens()
    • getToolSet

      public VariantSpec.ToolSet getToolSet()
    • getTimeout

      public Duration getTimeout()
    • getMaxRetries

      public int getMaxRetries()
    • getTemperature

      public double getTemperature()
    • isEnableStreaming

      public boolean isEnableStreaming()
    • getAdditionalSettings

      public Map<String,Object> getAdditionalSettings()
    • getTotalTokenLimit

      public int getTotalTokenLimit()
      Returns total token limit (input + output).
    • getEffectiveModel

      public String getEffectiveModel(Set<String> availableModels)
      Returns the first available model (preferred or fallback).
    • withVariant

      public VariantSpec withVariant(AgentVariant newVariant)
      Creates a copy with a different variant.
    • withModel

      public VariantSpec withModel(String model)
      Creates a copy with a different model.
    • toString

      public String toString()
      Overrides:
      toString in class Object