/** * @file Batch Strategy * Batch processing for evaluation pipelines */ import type { ScorerInput, PipelineExecutionOptions, BatchEvaluationConfig, BatchEvaluationResult, BatchItemResult } from "../../../types/index.js"; import type { EvaluationPipeline } from "../evaluationPipeline.js"; /** * Batch evaluation strategy */ export declare class BatchStrategy { private _pipeline; private _config; constructor(pipeline: EvaluationPipeline, config?: BatchEvaluationConfig); /** * Evaluate a batch of inputs */ evaluate(inputs: ScorerInput[], options?: PipelineExecutionOptions): Promise; /** * Evaluate a single item */ private _evaluateItem; /** * Estimate remaining time based on average duration */ private _estimateRemainingTime; /** * Delay helper */ private _delay; /** * Update configuration */ configure(config: Partial): void; } /** * Create a batch strategy for a pipeline */ export declare function createBatchStrategy(pipeline: EvaluationPipeline, config?: BatchEvaluationConfig): BatchStrategy; /** * Evaluate a batch of inputs using a pipeline */ export declare function evaluateBatch(pipeline: EvaluationPipeline, inputs: ScorerInput[], config?: BatchEvaluationConfig): Promise; /** * Stream batch evaluation results */ export declare function streamBatchEvaluation(pipeline: EvaluationPipeline, inputs: ScorerInput[], config?: Omit): AsyncGenerator;