GEPAOptimizer

constructor(reflectionModel: LLModel, storagePath: ResilientPath, maxIterations: Int, minibatchSize: Int, componentSelection: ComponentSelection, enableCrossover: Boolean, maxMergeInvocations: Int = 5, randomSeed: Long = 42, labelExtractor: (TrainSetItem<Input, InputLabel>) -> String)

Parameters

reflectionModel

LLM model for reflection / instruction proposal. Calls are routed through the training DSL's tracked executePrompt, so timing and consumption are recorded under the appropriate iteration stage.

storagePath

Path for saving the optimization artifact.

maxIterations

Maximum number of evolution iterations.

minibatchSize

Number of training items sampled per iteration for reflection.

componentSelection

How to select which modules to update each iteration.

enableCrossover

Whether to attempt merging complementary candidates during the loop.

maxMergeInvocations

Maximum number of crossover attempts per optimization run.

randomSeed

Seed for reproducibility.

labelExtractor

Converts a dataset item's label to a string for the reflection LM.