/** * Training Pipeline - Automated neural model training and optimization * * Manages the continuous training pipeline for neural models, handling * data preparation, model training, validation, and deployment. */ import { EventEmitter } from 'eventemitter3'; import { ModelType, Agent, Task, OperationResult } from '../types'; import { NeuralModels, TrainingConfig } from './NeuralModels'; export interface TrainingJob { id: string; modelId: string; status: 'pending' | 'running' | 'completed' | 'failed'; config: TrainingConfig; data: any[]; startTime?: Date; endTime?: Date; progress: number; metrics?: any; error?: string; } export interface TrainingSchedule { modelId: string; interval: number; minDataSize: number; autoTriggers: string[]; enabled: boolean; } export declare class TrainingPipeline extends EventEmitter { private neuralModels; private trainingQueue; private activeJobs; private schedules; private trainingData; private maxConcurrentJobs; private processingInterval; constructor(neuralModels: NeuralModels); initialize(): Promise; private setupDefaultSchedules; private setupEventHandlers; private startProcessing; /** * Add training data for a specific model type */ addTrainingData(modelType: ModelType, data: any[]): void; /** * Schedule a training job */ scheduleTraining(modelId: string, config?: Partial, priority?: number): Promise; /** * Process the training queue */ private processTrainingQueue; /** * Check if automatic training should be triggered */ private checkAutoTraining; /** * Collect execution data for training */ collectExecutionData(task: Task, agents: Agent[], result: any): Promise; private estimateComplexity; private extractTaskPattern; private extractAgentPattern; private extractContextPattern; private calculateEfficiency; private getLastTrainingTime; /** * Get training job status */ getJobStatus(jobId: string): TrainingJob | null; /** * Cancel a training job */ cancelJob(jobId: string): boolean; /** * Update training schedule */ updateSchedule(modelId: string, schedule: Partial): void; /** * Get pipeline metrics */ getMetrics(): any; private handleTrainingStarted; private handleTrainingCompleted; private handleTrainingProgress; shutdown(): Promise; } //# sourceMappingURL=TrainingPipeline.d.ts.map