// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.machinelearning.generated;

import com.azure.core.util.BinaryData;
import com.azure.resourcemanager.machinelearning.models.EarlyTerminationPolicy;
import com.azure.resourcemanager.machinelearning.models.ImageInstanceSegmentation;
import com.azure.resourcemanager.machinelearning.models.ImageLimitSettings;
import com.azure.resourcemanager.machinelearning.models.ImageModelDistributionSettingsObjectDetection;
import com.azure.resourcemanager.machinelearning.models.ImageModelSettingsObjectDetection;
import com.azure.resourcemanager.machinelearning.models.ImageSweepSettings;
import com.azure.resourcemanager.machinelearning.models.InputDeliveryMode;
import com.azure.resourcemanager.machinelearning.models.InstanceSegmentationPrimaryMetrics;
import com.azure.resourcemanager.machinelearning.models.LearningRateScheduler;
import com.azure.resourcemanager.machinelearning.models.LogVerbosity;
import com.azure.resourcemanager.machinelearning.models.MLFlowModelJobInput;
import com.azure.resourcemanager.machinelearning.models.MLTableJobInput;
import com.azure.resourcemanager.machinelearning.models.ModelSize;
import com.azure.resourcemanager.machinelearning.models.SamplingAlgorithmType;
import com.azure.resourcemanager.machinelearning.models.StochasticOptimizer;
import com.azure.resourcemanager.machinelearning.models.ValidationMetricType;
import java.time.Duration;
import java.util.Arrays;
import org.junit.jupiter.api.Assertions;

public final class ImageInstanceSegmentationTests {
    @org.junit.jupiter.api.Test
    public void testDeserialize() throws Exception {
        ImageInstanceSegmentation model =
            BinaryData
                .fromString(
                    "{\"taskType\":\"ImageInstanceSegmentation\",\"primaryMetric\":\"MeanAveragePrecision\",\"modelSettings\":{\"boxDetectionsPerImage\":411999278,\"boxScoreThreshold\":18.429447,\"imageSize\":26955343,\"maxSize\":1642764526,\"minSize\":1482263286,\"modelSize\":\"Large\",\"multiScale\":false,\"nmsIouThreshold\":1.44642,\"tileGridSize\":\"ibmq\",\"tileOverlapRatio\":25.447088,\"tilePredictionsNmsThreshold\":69.32719,\"validationIouThreshold\":22.681719,\"validationMetricType\":\"CocoVoc\",\"advancedSettings\":\"u\",\"amsGradient\":false,\"augmentations\":\"etasvvoqsbp\",\"beta1\":60.15215,\"beta2\":97.623566,\"checkpointFrequency\":94750043,\"checkpointModel\":{\"jobInputType\":\"mlflow_model\",\"mode\":\"EvalDownload\",\"uri\":\"yao\",\"description\":\"zowpuohdkcprgukx\"},\"checkpointRunId\":\"tiochlutixmqr\",\"distributed\":true,\"earlyStopping\":false,\"earlyStoppingDelay\":917093220,\"earlyStoppingPatience\":1837159570,\"enableOnnxNormalization\":false,\"evaluationFrequency\":1130120951,\"gradientAccumulationStep\":695678022,\"layersToFreeze\":1955906279,\"learningRate\":2.7083278,\"learningRateScheduler\":\"WarmupCosine\",\"modelName\":\"bcpaqktkrumzued\",\"momentum\":70.79762,\"nesterov\":false,\"numberOfEpochs\":306505202,\"numberOfWorkers\":886379161,\"optimizer\":\"Adam\",\"randomSeed\":113581490,\"stepLRGamma\":42.95044,\"stepLRStepSize\":1447634405,\"trainingBatchSize\":1828475728,\"validationBatchSize\":91831981,\"warmupCosineLRCycles\":61.42521,\"warmupCosineLRWarmupEpochs\":2131168360,\"weightDecay\":87.82275},\"searchSpace\":[{\"boxDetectionsPerImage\":\"qggjhf\",\"boxScoreThreshold\":\"xrqrkijpeuqlsd\",\"imageSize\":\"qztvx\",\"maxSize\":\"wwmjs\",\"minSize\":\"na\",\"modelSize\":\"amecle\",\"multiScale\":\"oulndhzyoeojhto\",\"nmsIouThreshold\":\"h\",\"tileGridSize\":\"idmytzln\",\"tileOverlapRatio\":\"xpno\",\"tilePredictionsNmsThreshold\":\"oanfbcswqagyw\",\"validationIouThreshold\":\"xigvjrktpgaeuk\",\"validationMetricType\":\"wohpmwhqnucs\",\"amsGradient\":\"hsidsjtdlpbnin\",\"augmentations\":\"azlsvbzfcpuo\",\"beta1\":\"dwjcciklhs\",\"beta2\":\"krdre\",\"distributed\":\"olr\",\"earlyStopping\":\"ehqbeivdlhydwbdb\",\"earlyStoppingDelay\":\"rlpunytjlkesmmpa\",\"earlyStoppingPatience\":\"ubt\",\"enableOnnxNormalization\":\"deani\",\"evaluationFrequency\":\"llbvgwzsfftedous\",\"gradientAccumulationStep\":\"tjtgravaqogfkb\",\"layersToFreeze\":\"auzlqbtxxw\",\"learningRate\":\"h\",\"learningRateScheduler\":\"zudrtpzk\",\"modelName\":\"eboywhczzqrhm\",\"momentum\":\"qbedygisrzwn\",\"nesterov\":\"d\",\"numberOfEpochs\":\"jch\",\"numberOfWorkers\":\"mpwctoflds\",\"optimizer\":\"cdhz\",\"randomSeed\":\"kbrfgdrwji\",\"stepLRGamma\":\"whfjsrwqrxe\",\"stepLRStepSize\":\"gcwvrrmdqntycna\",\"trainingBatchSize\":\"hvmaxgnuyeamcmhu\",\"validationBatchSize\":\"jecehokwc\",\"warmupCosineLRCycles\":\"twloesqr\",\"warmupCosineLRWarmupEpochs\":\"vrbnyrukoil\",\"weightDecay\":\"iduw\"}],\"limitSettings\":{\"maxConcurrentTrials\":111210342,\"maxTrials\":844410077,\"timeout\":\"PT37H28M23S\"},\"sweepSettings\":{\"earlyTermination\":{\"policyType\":\"EarlyTerminationPolicy\",\"delayEvaluation\":814563749,\"evaluationInterval\":400227130},\"samplingAlgorithm\":\"Random\"},\"validationData\":{\"jobInputType\":\"mltable\",\"mode\":\"Direct\",\"uri\":\"thqkkwhbgxvellv\",\"description\":\"nxdmnitmujdtv\"},\"validationDataSize\":82.02510999731906,\"logVerbosity\":\"NotSet\",\"targetColumnName\":\"fhmjp\",\"trainingData\":{\"jobInputType\":\"mltable\",\"mode\":\"ReadWriteMount\",\"uri\":\"yx\",\"description\":\"uvrzmzqmzjqrb\"}}")
                .toObject(ImageInstanceSegmentation.class);
        Assertions.assertEquals(LogVerbosity.NOT_SET, model.logVerbosity());
        Assertions.assertEquals("fhmjp", model.targetColumnName());
        Assertions.assertEquals("uvrzmzqmzjqrb", model.trainingData().description());
        Assertions.assertEquals(InputDeliveryMode.READ_WRITE_MOUNT, model.trainingData().mode());
        Assertions.assertEquals("yx", model.trainingData().uri());
        Assertions.assertEquals(InstanceSegmentationPrimaryMetrics.MEAN_AVERAGE_PRECISION, model.primaryMetric());
        Assertions.assertEquals("u", model.modelSettings().advancedSettings());
        Assertions.assertEquals(false, model.modelSettings().amsGradient());
        Assertions.assertEquals("etasvvoqsbp", model.modelSettings().augmentations());
        Assertions.assertEquals(60.15215F, model.modelSettings().beta1());
        Assertions.assertEquals(97.623566F, model.modelSettings().beta2());
        Assertions.assertEquals(94750043, model.modelSettings().checkpointFrequency());
        Assertions.assertEquals("zowpuohdkcprgukx", model.modelSettings().checkpointModel().description());
        Assertions.assertEquals(InputDeliveryMode.EVAL_DOWNLOAD, model.modelSettings().checkpointModel().mode());
        Assertions.assertEquals("yao", model.modelSettings().checkpointModel().uri());
        Assertions.assertEquals("tiochlutixmqr", model.modelSettings().checkpointRunId());
        Assertions.assertEquals(true, model.modelSettings().distributed());
        Assertions.assertEquals(false, model.modelSettings().earlyStopping());
        Assertions.assertEquals(917093220, model.modelSettings().earlyStoppingDelay());
        Assertions.assertEquals(1837159570, model.modelSettings().earlyStoppingPatience());
        Assertions.assertEquals(false, model.modelSettings().enableOnnxNormalization());
        Assertions.assertEquals(1130120951, model.modelSettings().evaluationFrequency());
        Assertions.assertEquals(695678022, model.modelSettings().gradientAccumulationStep());
        Assertions.assertEquals(1955906279, model.modelSettings().layersToFreeze());
        Assertions.assertEquals(2.7083278F, model.modelSettings().learningRate());
        Assertions.assertEquals(LearningRateScheduler.WARMUP_COSINE, model.modelSettings().learningRateScheduler());
        Assertions.assertEquals("bcpaqktkrumzued", model.modelSettings().modelName());
        Assertions.assertEquals(70.79762F, model.modelSettings().momentum());
        Assertions.assertEquals(false, model.modelSettings().nesterov());
        Assertions.assertEquals(306505202, model.modelSettings().numberOfEpochs());
        Assertions.assertEquals(886379161, model.modelSettings().numberOfWorkers());
        Assertions.assertEquals(StochasticOptimizer.ADAM, model.modelSettings().optimizer());
        Assertions.assertEquals(113581490, model.modelSettings().randomSeed());
        Assertions.assertEquals(42.95044F, model.modelSettings().stepLRGamma());
        Assertions.assertEquals(1447634405, model.modelSettings().stepLRStepSize());
        Assertions.assertEquals(1828475728, model.modelSettings().trainingBatchSize());
        Assertions.assertEquals(91831981, model.modelSettings().validationBatchSize());
        Assertions.assertEquals(61.42521F, model.modelSettings().warmupCosineLRCycles());
        Assertions.assertEquals(2131168360, model.modelSettings().warmupCosineLRWarmupEpochs());
        Assertions.assertEquals(87.82275F, model.modelSettings().weightDecay());
        Assertions.assertEquals(411999278, model.modelSettings().boxDetectionsPerImage());
        Assertions.assertEquals(18.429447F, model.modelSettings().boxScoreThreshold());
        Assertions.assertEquals(26955343, model.modelSettings().imageSize());
        Assertions.assertEquals(1642764526, model.modelSettings().maxSize());
        Assertions.assertEquals(1482263286, model.modelSettings().minSize());
        Assertions.assertEquals(ModelSize.LARGE, model.modelSettings().modelSize());
        Assertions.assertEquals(false, model.modelSettings().multiScale());
        Assertions.assertEquals(1.44642F, model.modelSettings().nmsIouThreshold());
        Assertions.assertEquals("ibmq", model.modelSettings().tileGridSize());
        Assertions.assertEquals(25.447088F, model.modelSettings().tileOverlapRatio());
        Assertions.assertEquals(69.32719F, model.modelSettings().tilePredictionsNmsThreshold());
        Assertions.assertEquals(22.681719F, model.modelSettings().validationIouThreshold());
        Assertions.assertEquals(ValidationMetricType.COCO_VOC, model.modelSettings().validationMetricType());
        Assertions.assertEquals("hsidsjtdlpbnin", model.searchSpace().get(0).amsGradient());
        Assertions.assertEquals("azlsvbzfcpuo", model.searchSpace().get(0).augmentations());
        Assertions.assertEquals("dwjcciklhs", model.searchSpace().get(0).beta1());
        Assertions.assertEquals("krdre", model.searchSpace().get(0).beta2());
        Assertions.assertEquals("olr", model.searchSpace().get(0).distributed());
        Assertions.assertEquals("ehqbeivdlhydwbdb", model.searchSpace().get(0).earlyStopping());
        Assertions.assertEquals("rlpunytjlkesmmpa", model.searchSpace().get(0).earlyStoppingDelay());
        Assertions.assertEquals("ubt", model.searchSpace().get(0).earlyStoppingPatience());
        Assertions.assertEquals("deani", model.searchSpace().get(0).enableOnnxNormalization());
        Assertions.assertEquals("llbvgwzsfftedous", model.searchSpace().get(0).evaluationFrequency());
        Assertions.assertEquals("tjtgravaqogfkb", model.searchSpace().get(0).gradientAccumulationStep());
        Assertions.assertEquals("auzlqbtxxw", model.searchSpace().get(0).layersToFreeze());
        Assertions.assertEquals("h", model.searchSpace().get(0).learningRate());
        Assertions.assertEquals("zudrtpzk", model.searchSpace().get(0).learningRateScheduler());
        Assertions.assertEquals("eboywhczzqrhm", model.searchSpace().get(0).modelName());
        Assertions.assertEquals("qbedygisrzwn", model.searchSpace().get(0).momentum());
        Assertions.assertEquals("d", model.searchSpace().get(0).nesterov());
        Assertions.assertEquals("jch", model.searchSpace().get(0).numberOfEpochs());
        Assertions.assertEquals("mpwctoflds", model.searchSpace().get(0).numberOfWorkers());
        Assertions.assertEquals("cdhz", model.searchSpace().get(0).optimizer());
        Assertions.assertEquals("kbrfgdrwji", model.searchSpace().get(0).randomSeed());
        Assertions.assertEquals("whfjsrwqrxe", model.searchSpace().get(0).stepLRGamma());
        Assertions.assertEquals("gcwvrrmdqntycna", model.searchSpace().get(0).stepLRStepSize());
        Assertions.assertEquals("hvmaxgnuyeamcmhu", model.searchSpace().get(0).trainingBatchSize());
        Assertions.assertEquals("jecehokwc", model.searchSpace().get(0).validationBatchSize());
        Assertions.assertEquals("twloesqr", model.searchSpace().get(0).warmupCosineLRCycles());
        Assertions.assertEquals("vrbnyrukoil", model.searchSpace().get(0).warmupCosineLRWarmupEpochs());
        Assertions.assertEquals("iduw", model.searchSpace().get(0).weightDecay());
        Assertions.assertEquals("qggjhf", model.searchSpace().get(0).boxDetectionsPerImage());
        Assertions.assertEquals("xrqrkijpeuqlsd", model.searchSpace().get(0).boxScoreThreshold());
        Assertions.assertEquals("qztvx", model.searchSpace().get(0).imageSize());
        Assertions.assertEquals("wwmjs", model.searchSpace().get(0).maxSize());
        Assertions.assertEquals("na", model.searchSpace().get(0).minSize());
        Assertions.assertEquals("amecle", model.searchSpace().get(0).modelSize());
        Assertions.assertEquals("oulndhzyoeojhto", model.searchSpace().get(0).multiScale());
        Assertions.assertEquals("h", model.searchSpace().get(0).nmsIouThreshold());
        Assertions.assertEquals("idmytzln", model.searchSpace().get(0).tileGridSize());
        Assertions.assertEquals("xpno", model.searchSpace().get(0).tileOverlapRatio());
        Assertions.assertEquals("oanfbcswqagyw", model.searchSpace().get(0).tilePredictionsNmsThreshold());
        Assertions.assertEquals("xigvjrktpgaeuk", model.searchSpace().get(0).validationIouThreshold());
        Assertions.assertEquals("wohpmwhqnucs", model.searchSpace().get(0).validationMetricType());
        Assertions.assertEquals(111210342, model.limitSettings().maxConcurrentTrials());
        Assertions.assertEquals(844410077, model.limitSettings().maxTrials());
        Assertions.assertEquals(Duration.parse("PT37H28M23S"), model.limitSettings().timeout());
        Assertions.assertEquals(814563749, model.sweepSettings().earlyTermination().delayEvaluation());
        Assertions.assertEquals(400227130, model.sweepSettings().earlyTermination().evaluationInterval());
        Assertions.assertEquals(SamplingAlgorithmType.RANDOM, model.sweepSettings().samplingAlgorithm());
        Assertions.assertEquals("nxdmnitmujdtv", model.validationData().description());
        Assertions.assertEquals(InputDeliveryMode.DIRECT, model.validationData().mode());
        Assertions.assertEquals("thqkkwhbgxvellv", model.validationData().uri());
        Assertions.assertEquals(82.02510999731906D, model.validationDataSize());
    }

    @org.junit.jupiter.api.Test
    public void testSerialize() throws Exception {
        ImageInstanceSegmentation model =
            new ImageInstanceSegmentation()
                .withLogVerbosity(LogVerbosity.NOT_SET)
                .withTargetColumnName("fhmjp")
                .withTrainingData(
                    new MLTableJobInput()
                        .withDescription("uvrzmzqmzjqrb")
                        .withMode(InputDeliveryMode.READ_WRITE_MOUNT)
                        .withUri("yx"))
                .withPrimaryMetric(InstanceSegmentationPrimaryMetrics.MEAN_AVERAGE_PRECISION)
                .withModelSettings(
                    new ImageModelSettingsObjectDetection()
                        .withAdvancedSettings("u")
                        .withAmsGradient(false)
                        .withAugmentations("etasvvoqsbp")
                        .withBeta1(60.15215F)
                        .withBeta2(97.623566F)
                        .withCheckpointFrequency(94750043)
                        .withCheckpointModel(
                            new MLFlowModelJobInput()
                                .withDescription("zowpuohdkcprgukx")
                                .withMode(InputDeliveryMode.EVAL_DOWNLOAD)
                                .withUri("yao"))
                        .withCheckpointRunId("tiochlutixmqr")
                        .withDistributed(true)
                        .withEarlyStopping(false)
                        .withEarlyStoppingDelay(917093220)
                        .withEarlyStoppingPatience(1837159570)
                        .withEnableOnnxNormalization(false)
                        .withEvaluationFrequency(1130120951)
                        .withGradientAccumulationStep(695678022)
                        .withLayersToFreeze(1955906279)
                        .withLearningRate(2.7083278F)
                        .withLearningRateScheduler(LearningRateScheduler.WARMUP_COSINE)
                        .withModelName("bcpaqktkrumzued")
                        .withMomentum(70.79762F)
                        .withNesterov(false)
                        .withNumberOfEpochs(306505202)
                        .withNumberOfWorkers(886379161)
                        .withOptimizer(StochasticOptimizer.ADAM)
                        .withRandomSeed(113581490)
                        .withStepLRGamma(42.95044F)
                        .withStepLRStepSize(1447634405)
                        .withTrainingBatchSize(1828475728)
                        .withValidationBatchSize(91831981)
                        .withWarmupCosineLRCycles(61.42521F)
                        .withWarmupCosineLRWarmupEpochs(2131168360)
                        .withWeightDecay(87.82275F)
                        .withBoxDetectionsPerImage(411999278)
                        .withBoxScoreThreshold(18.429447F)
                        .withImageSize(26955343)
                        .withMaxSize(1642764526)
                        .withMinSize(1482263286)
                        .withModelSize(ModelSize.LARGE)
                        .withMultiScale(false)
                        .withNmsIouThreshold(1.44642F)
                        .withTileGridSize("ibmq")
                        .withTileOverlapRatio(25.447088F)
                        .withTilePredictionsNmsThreshold(69.32719F)
                        .withValidationIouThreshold(22.681719F)
                        .withValidationMetricType(ValidationMetricType.COCO_VOC))
                .withSearchSpace(
                    Arrays
                        .asList(
                            new ImageModelDistributionSettingsObjectDetection()
                                .withAmsGradient("hsidsjtdlpbnin")
                                .withAugmentations("azlsvbzfcpuo")
                                .withBeta1("dwjcciklhs")
                                .withBeta2("krdre")
                                .withDistributed("olr")
                                .withEarlyStopping("ehqbeivdlhydwbdb")
                                .withEarlyStoppingDelay("rlpunytjlkesmmpa")
                                .withEarlyStoppingPatience("ubt")
                                .withEnableOnnxNormalization("deani")
                                .withEvaluationFrequency("llbvgwzsfftedous")
                                .withGradientAccumulationStep("tjtgravaqogfkb")
                                .withLayersToFreeze("auzlqbtxxw")
                                .withLearningRate("h")
                                .withLearningRateScheduler("zudrtpzk")
                                .withModelName("eboywhczzqrhm")
                                .withMomentum("qbedygisrzwn")
                                .withNesterov("d")
                                .withNumberOfEpochs("jch")
                                .withNumberOfWorkers("mpwctoflds")
                                .withOptimizer("cdhz")
                                .withRandomSeed("kbrfgdrwji")
                                .withStepLRGamma("whfjsrwqrxe")
                                .withStepLRStepSize("gcwvrrmdqntycna")
                                .withTrainingBatchSize("hvmaxgnuyeamcmhu")
                                .withValidationBatchSize("jecehokwc")
                                .withWarmupCosineLRCycles("twloesqr")
                                .withWarmupCosineLRWarmupEpochs("vrbnyrukoil")
                                .withWeightDecay("iduw")
                                .withBoxDetectionsPerImage("qggjhf")
                                .withBoxScoreThreshold("xrqrkijpeuqlsd")
                                .withImageSize("qztvx")
                                .withMaxSize("wwmjs")
                                .withMinSize("na")
                                .withModelSize("amecle")
                                .withMultiScale("oulndhzyoeojhto")
                                .withNmsIouThreshold("h")
                                .withTileGridSize("idmytzln")
                                .withTileOverlapRatio("xpno")
                                .withTilePredictionsNmsThreshold("oanfbcswqagyw")
                                .withValidationIouThreshold("xigvjrktpgaeuk")
                                .withValidationMetricType("wohpmwhqnucs")))
                .withLimitSettings(
                    new ImageLimitSettings()
                        .withMaxConcurrentTrials(111210342)
                        .withMaxTrials(844410077)
                        .withTimeout(Duration.parse("PT37H28M23S")))
                .withSweepSettings(
                    new ImageSweepSettings()
                        .withEarlyTermination(
                            new EarlyTerminationPolicy()
                                .withDelayEvaluation(814563749)
                                .withEvaluationInterval(400227130))
                        .withSamplingAlgorithm(SamplingAlgorithmType.RANDOM))
                .withValidationData(
                    new MLTableJobInput()
                        .withDescription("nxdmnitmujdtv")
                        .withMode(InputDeliveryMode.DIRECT)
                        .withUri("thqkkwhbgxvellv"))
                .withValidationDataSize(82.02510999731906D);
        model = BinaryData.fromObject(model).toObject(ImageInstanceSegmentation.class);
        Assertions.assertEquals(LogVerbosity.NOT_SET, model.logVerbosity());
        Assertions.assertEquals("fhmjp", model.targetColumnName());
        Assertions.assertEquals("uvrzmzqmzjqrb", model.trainingData().description());
        Assertions.assertEquals(InputDeliveryMode.READ_WRITE_MOUNT, model.trainingData().mode());
        Assertions.assertEquals("yx", model.trainingData().uri());
        Assertions.assertEquals(InstanceSegmentationPrimaryMetrics.MEAN_AVERAGE_PRECISION, model.primaryMetric());
        Assertions.assertEquals("u", model.modelSettings().advancedSettings());
        Assertions.assertEquals(false, model.modelSettings().amsGradient());
        Assertions.assertEquals("etasvvoqsbp", model.modelSettings().augmentations());
        Assertions.assertEquals(60.15215F, model.modelSettings().beta1());
        Assertions.assertEquals(97.623566F, model.modelSettings().beta2());
        Assertions.assertEquals(94750043, model.modelSettings().checkpointFrequency());
        Assertions.assertEquals("zowpuohdkcprgukx", model.modelSettings().checkpointModel().description());
        Assertions.assertEquals(InputDeliveryMode.EVAL_DOWNLOAD, model.modelSettings().checkpointModel().mode());
        Assertions.assertEquals("yao", model.modelSettings().checkpointModel().uri());
        Assertions.assertEquals("tiochlutixmqr", model.modelSettings().checkpointRunId());
        Assertions.assertEquals(true, model.modelSettings().distributed());
        Assertions.assertEquals(false, model.modelSettings().earlyStopping());
        Assertions.assertEquals(917093220, model.modelSettings().earlyStoppingDelay());
        Assertions.assertEquals(1837159570, model.modelSettings().earlyStoppingPatience());
        Assertions.assertEquals(false, model.modelSettings().enableOnnxNormalization());
        Assertions.assertEquals(1130120951, model.modelSettings().evaluationFrequency());
        Assertions.assertEquals(695678022, model.modelSettings().gradientAccumulationStep());
        Assertions.assertEquals(1955906279, model.modelSettings().layersToFreeze());
        Assertions.assertEquals(2.7083278F, model.modelSettings().learningRate());
        Assertions.assertEquals(LearningRateScheduler.WARMUP_COSINE, model.modelSettings().learningRateScheduler());
        Assertions.assertEquals("bcpaqktkrumzued", model.modelSettings().modelName());
        Assertions.assertEquals(70.79762F, model.modelSettings().momentum());
        Assertions.assertEquals(false, model.modelSettings().nesterov());
        Assertions.assertEquals(306505202, model.modelSettings().numberOfEpochs());
        Assertions.assertEquals(886379161, model.modelSettings().numberOfWorkers());
        Assertions.assertEquals(StochasticOptimizer.ADAM, model.modelSettings().optimizer());
        Assertions.assertEquals(113581490, model.modelSettings().randomSeed());
        Assertions.assertEquals(42.95044F, model.modelSettings().stepLRGamma());
        Assertions.assertEquals(1447634405, model.modelSettings().stepLRStepSize());
        Assertions.assertEquals(1828475728, model.modelSettings().trainingBatchSize());
        Assertions.assertEquals(91831981, model.modelSettings().validationBatchSize());
        Assertions.assertEquals(61.42521F, model.modelSettings().warmupCosineLRCycles());
        Assertions.assertEquals(2131168360, model.modelSettings().warmupCosineLRWarmupEpochs());
        Assertions.assertEquals(87.82275F, model.modelSettings().weightDecay());
        Assertions.assertEquals(411999278, model.modelSettings().boxDetectionsPerImage());
        Assertions.assertEquals(18.429447F, model.modelSettings().boxScoreThreshold());
        Assertions.assertEquals(26955343, model.modelSettings().imageSize());
        Assertions.assertEquals(1642764526, model.modelSettings().maxSize());
        Assertions.assertEquals(1482263286, model.modelSettings().minSize());
        Assertions.assertEquals(ModelSize.LARGE, model.modelSettings().modelSize());
        Assertions.assertEquals(false, model.modelSettings().multiScale());
        Assertions.assertEquals(1.44642F, model.modelSettings().nmsIouThreshold());
        Assertions.assertEquals("ibmq", model.modelSettings().tileGridSize());
        Assertions.assertEquals(25.447088F, model.modelSettings().tileOverlapRatio());
        Assertions.assertEquals(69.32719F, model.modelSettings().tilePredictionsNmsThreshold());
        Assertions.assertEquals(22.681719F, model.modelSettings().validationIouThreshold());
        Assertions.assertEquals(ValidationMetricType.COCO_VOC, model.modelSettings().validationMetricType());
        Assertions.assertEquals("hsidsjtdlpbnin", model.searchSpace().get(0).amsGradient());
        Assertions.assertEquals("azlsvbzfcpuo", model.searchSpace().get(0).augmentations());
        Assertions.assertEquals("dwjcciklhs", model.searchSpace().get(0).beta1());
        Assertions.assertEquals("krdre", model.searchSpace().get(0).beta2());
        Assertions.assertEquals("olr", model.searchSpace().get(0).distributed());
        Assertions.assertEquals("ehqbeivdlhydwbdb", model.searchSpace().get(0).earlyStopping());
        Assertions.assertEquals("rlpunytjlkesmmpa", model.searchSpace().get(0).earlyStoppingDelay());
        Assertions.assertEquals("ubt", model.searchSpace().get(0).earlyStoppingPatience());
        Assertions.assertEquals("deani", model.searchSpace().get(0).enableOnnxNormalization());
        Assertions.assertEquals("llbvgwzsfftedous", model.searchSpace().get(0).evaluationFrequency());
        Assertions.assertEquals("tjtgravaqogfkb", model.searchSpace().get(0).gradientAccumulationStep());
        Assertions.assertEquals("auzlqbtxxw", model.searchSpace().get(0).layersToFreeze());
        Assertions.assertEquals("h", model.searchSpace().get(0).learningRate());
        Assertions.assertEquals("zudrtpzk", model.searchSpace().get(0).learningRateScheduler());
        Assertions.assertEquals("eboywhczzqrhm", model.searchSpace().get(0).modelName());
        Assertions.assertEquals("qbedygisrzwn", model.searchSpace().get(0).momentum());
        Assertions.assertEquals("d", model.searchSpace().get(0).nesterov());
        Assertions.assertEquals("jch", model.searchSpace().get(0).numberOfEpochs());
        Assertions.assertEquals("mpwctoflds", model.searchSpace().get(0).numberOfWorkers());
        Assertions.assertEquals("cdhz", model.searchSpace().get(0).optimizer());
        Assertions.assertEquals("kbrfgdrwji", model.searchSpace().get(0).randomSeed());
        Assertions.assertEquals("whfjsrwqrxe", model.searchSpace().get(0).stepLRGamma());
        Assertions.assertEquals("gcwvrrmdqntycna", model.searchSpace().get(0).stepLRStepSize());
        Assertions.assertEquals("hvmaxgnuyeamcmhu", model.searchSpace().get(0).trainingBatchSize());
        Assertions.assertEquals("jecehokwc", model.searchSpace().get(0).validationBatchSize());
        Assertions.assertEquals("twloesqr", model.searchSpace().get(0).warmupCosineLRCycles());
        Assertions.assertEquals("vrbnyrukoil", model.searchSpace().get(0).warmupCosineLRWarmupEpochs());
        Assertions.assertEquals("iduw", model.searchSpace().get(0).weightDecay());
        Assertions.assertEquals("qggjhf", model.searchSpace().get(0).boxDetectionsPerImage());
        Assertions.assertEquals("xrqrkijpeuqlsd", model.searchSpace().get(0).boxScoreThreshold());
        Assertions.assertEquals("qztvx", model.searchSpace().get(0).imageSize());
        Assertions.assertEquals("wwmjs", model.searchSpace().get(0).maxSize());
        Assertions.assertEquals("na", model.searchSpace().get(0).minSize());
        Assertions.assertEquals("amecle", model.searchSpace().get(0).modelSize());
        Assertions.assertEquals("oulndhzyoeojhto", model.searchSpace().get(0).multiScale());
        Assertions.assertEquals("h", model.searchSpace().get(0).nmsIouThreshold());
        Assertions.assertEquals("idmytzln", model.searchSpace().get(0).tileGridSize());
        Assertions.assertEquals("xpno", model.searchSpace().get(0).tileOverlapRatio());
        Assertions.assertEquals("oanfbcswqagyw", model.searchSpace().get(0).tilePredictionsNmsThreshold());
        Assertions.assertEquals("xigvjrktpgaeuk", model.searchSpace().get(0).validationIouThreshold());
        Assertions.assertEquals("wohpmwhqnucs", model.searchSpace().get(0).validationMetricType());
        Assertions.assertEquals(111210342, model.limitSettings().maxConcurrentTrials());
        Assertions.assertEquals(844410077, model.limitSettings().maxTrials());
        Assertions.assertEquals(Duration.parse("PT37H28M23S"), model.limitSettings().timeout());
        Assertions.assertEquals(814563749, model.sweepSettings().earlyTermination().delayEvaluation());
        Assertions.assertEquals(400227130, model.sweepSettings().earlyTermination().evaluationInterval());
        Assertions.assertEquals(SamplingAlgorithmType.RANDOM, model.sweepSettings().samplingAlgorithm());
        Assertions.assertEquals("nxdmnitmujdtv", model.validationData().description());
        Assertions.assertEquals(InputDeliveryMode.DIRECT, model.validationData().mode());
        Assertions.assertEquals("thqkkwhbgxvellv", model.validationData().uri());
        Assertions.assertEquals(82.02510999731906D, model.validationDataSize());
    }
}
