IMLModelTrainerJob class
Implements the IJobExecutor
and IMLModelTrainerJob
interfaces.
It is used for model synchronization tasks.
Orchestrates model processing on the side of Creatio by launching data transfer sessions, starting trainings, and also checking the status of the models processed by the service. Instances are launched by default by the task scheduler through the standard Execute
method of the IJobExecutor
interface.
Methods
IMLModelTrainerJob.RunTrainer()
A virtual method that encapsulates the synchronization logic. The base implementation of this method performs the following actions:
-
Selecting models for training – the records are selected from
MLModel
based on the following filter:- The
MetaData
andTrainingSetQuery
fields are populated. - The
Status
field is not in theNotStarted
,Done
orError
state (or not populated at all). TrainFrequency
is more than 0.- The
TriedToTrainOn
days have passed since the last training date (TrainFrequency
).
For each record of this selection, the data is sent to the service with the help of the predictive model trainer.
- The
-
Selecting previously trained models and updating their status (if necessary).
The data transfer session for the selection starts for each suitable model. The data is sent in packages of 1000 records during the session. For each model, the selection size is limited to 75,000 records.