public List getNamedXContentParsers()

in x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/inference/MlInferenceNamedXContentProvider.java [107:604]


    public List<NamedXContentRegistry.Entry> getNamedXContentParsers() {
        List<NamedXContentRegistry.Entry> namedXContent = new ArrayList<>();

        // PreProcessing Lenient
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                OneHotEncoding.NAME,
                (p, c) -> OneHotEncoding.fromXContentLenient(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                TargetMeanEncoding.NAME,
                (p, c) -> TargetMeanEncoding.fromXContentLenient(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                FrequencyEncoding.NAME,
                (p, c) -> FrequencyEncoding.fromXContentLenient(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                CustomWordEmbedding.NAME,
                (p, c) -> CustomWordEmbedding.fromXContentLenient(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                NGram.NAME,
                (p, c) -> NGram.fromXContentLenient(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedPreProcessor.class,
                Multi.NAME,
                (p, c) -> Multi.fromXContentLenient(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );

        // PreProcessing Strict
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                OneHotEncoding.NAME,
                (p, c) -> OneHotEncoding.fromXContentStrict(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                TargetMeanEncoding.NAME,
                (p, c) -> TargetMeanEncoding.fromXContentStrict(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                FrequencyEncoding.NAME,
                (p, c) -> FrequencyEncoding.fromXContentStrict(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                CustomWordEmbedding.NAME,
                (p, c) -> CustomWordEmbedding.fromXContentStrict(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                NGram.NAME,
                (p, c) -> NGram.fromXContentStrict(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedPreProcessor.class,
                Multi.NAME,
                (p, c) -> Multi.fromXContentStrict(p, (PreProcessor.PreProcessorParseContext) c)
            )
        );

        // Model Lenient
        namedXContent.add(new NamedXContentRegistry.Entry(LenientlyParsedTrainedModel.class, Tree.NAME, Tree::fromXContentLenient));
        namedXContent.add(new NamedXContentRegistry.Entry(LenientlyParsedTrainedModel.class, Ensemble.NAME, Ensemble::fromXContentLenient));
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedTrainedModel.class,
                LangIdentNeuralNetwork.NAME,
                LangIdentNeuralNetwork::fromXContentLenient
            )
        );

        // Output Aggregator Lenient
        namedXContent.add(
            new NamedXContentRegistry.Entry(LenientlyParsedOutputAggregator.class, WeightedMode.NAME, WeightedMode::fromXContentLenient)
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(LenientlyParsedOutputAggregator.class, WeightedSum.NAME, WeightedSum::fromXContentLenient)
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedOutputAggregator.class,
                LogisticRegression.NAME,
                LogisticRegression::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(LenientlyParsedOutputAggregator.class, Exponent.NAME, Exponent::fromXContentLenient)
        );

        // Model Strict
        namedXContent.add(new NamedXContentRegistry.Entry(StrictlyParsedTrainedModel.class, Tree.NAME, Tree::fromXContentStrict));
        namedXContent.add(new NamedXContentRegistry.Entry(StrictlyParsedTrainedModel.class, Ensemble.NAME, Ensemble::fromXContentStrict));
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedTrainedModel.class,
                LangIdentNeuralNetwork.NAME,
                LangIdentNeuralNetwork::fromXContentStrict
            )
        );

        // Output Aggregator Strict
        namedXContent.add(
            new NamedXContentRegistry.Entry(StrictlyParsedOutputAggregator.class, WeightedMode.NAME, WeightedMode::fromXContentStrict)
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(StrictlyParsedOutputAggregator.class, WeightedSum.NAME, WeightedSum::fromXContentStrict)
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedOutputAggregator.class,
                LogisticRegression.NAME,
                LogisticRegression::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(StrictlyParsedOutputAggregator.class, Exponent.NAME, Exponent::fromXContentStrict)
        );

        // Location lenient
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedTrainedModelLocation.class,
                IndexLocation.INDEX,
                IndexLocation::fromXContentLenient
            )
        );

        // Location strict
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedTrainedModelLocation.class,
                IndexLocation.INDEX,
                IndexLocation::fromXContentStrict
            )
        );

        // Inference Configs
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                ClassificationConfig.NAME,
                ClassificationConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                ClassificationConfig.NAME,
                ClassificationConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                RegressionConfig.NAME,
                RegressionConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                RegressionConfig.NAME,
                RegressionConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(NerConfig.NAME),
                NerConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(NerConfig.NAME),
                NerConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(FillMaskConfig.NAME),
                FillMaskConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(FillMaskConfig.NAME),
                FillMaskConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(TextExpansionConfig.NAME),
                TextExpansionConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(TextExpansionConfig.NAME),
                TextExpansionConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(TextClassificationConfig.NAME),
                TextClassificationConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(TextClassificationConfig.NAME),
                TextClassificationConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(PassThroughConfig.NAME),
                PassThroughConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(PassThroughConfig.NAME),
                PassThroughConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(TextEmbeddingConfig.NAME),
                TextEmbeddingConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(TextEmbeddingConfig.NAME),
                TextEmbeddingConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(ZeroShotClassificationConfig.NAME),
                ZeroShotClassificationConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(ZeroShotClassificationConfig.NAME),
                ZeroShotClassificationConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(QuestionAnsweringConfig.NAME),
                QuestionAnsweringConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(QuestionAnsweringConfig.NAME),
                QuestionAnsweringConfig::fromXContentLenient
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                StrictlyParsedInferenceConfig.class,
                new ParseField(TextSimilarityConfig.NAME),
                TextSimilarityConfig::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                LenientlyParsedInferenceConfig.class,
                new ParseField(TextSimilarityConfig.NAME),
                TextSimilarityConfig::fromXContentLenient
            )
        );

        // Inference Configs Update
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                ClassificationConfigUpdate.NAME,
                ClassificationConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(FillMaskConfigUpdate.NAME),
                FillMaskConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(NerConfigUpdate.NAME),
                NerConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(PassThroughConfigUpdate.NAME),
                PassThroughConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                RegressionConfigUpdate.NAME,
                RegressionConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(TextExpansionConfigUpdate.NAME),
                TextExpansionConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(TextClassificationConfigUpdate.NAME),
                TextClassificationConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(TextEmbeddingConfigUpdate.NAME),
                TextEmbeddingConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(ZeroShotClassificationConfigUpdate.NAME),
                ZeroShotClassificationConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(QuestionAnsweringConfigUpdate.NAME),
                QuestionAnsweringConfigUpdate::fromXContentStrict
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                InferenceConfigUpdate.class,
                new ParseField(TextSimilarityConfigUpdate.NAME),
                TextSimilarityConfigUpdate::fromXContentStrict
            )
        );

        // Inference models
        namedXContent.add(new NamedXContentRegistry.Entry(InferenceModel.class, Ensemble.NAME, EnsembleInferenceModel::fromXContent));
        namedXContent.add(new NamedXContentRegistry.Entry(InferenceModel.class, Tree.NAME, TreeInferenceModel::fromXContent));
        namedXContent.add(
            new NamedXContentRegistry.Entry(InferenceModel.class, LangIdentNeuralNetwork.NAME, LangIdentNeuralNetwork::fromXContentLenient)
        );

        // Tokenization
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                BertJapaneseTokenization.NAME,
                (p, c) -> BertJapaneseTokenization.fromXContent(p, (boolean) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                BertTokenization.NAME,
                (p, c) -> BertTokenization.fromXContent(p, (boolean) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                MPNetTokenization.NAME,
                (p, c) -> MPNetTokenization.fromXContent(p, (boolean) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                new ParseField(RobertaTokenization.NAME),
                (p, c) -> RobertaTokenization.fromXContent(p, (boolean) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                new ParseField(XLMRobertaTokenization.NAME),
                (p, c) -> XLMRobertaTokenization.fromXContent(p, (boolean) c)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                Tokenization.class,
                new ParseField(DebertaV2Tokenization.NAME),
                (p, c) -> DebertaV2Tokenization.fromXContent(p, (boolean) c)
            )
        );

        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                BertJapaneseTokenizationUpdate.NAME,
                (p, c) -> BertJapaneseTokenizationUpdate.fromXContent(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                BertTokenizationUpdate.NAME,
                (p, c) -> BertTokenizationUpdate.fromXContent(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                MPNetTokenizationUpdate.NAME,
                (p, c) -> MPNetTokenizationUpdate.fromXContent(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                RobertaTokenizationUpdate.NAME,
                (p, c) -> RobertaTokenizationUpdate.fromXContent(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                XLMRobertaTokenizationUpdate.NAME,
                (p, c) -> XLMRobertaTokenizationUpdate.fromXContent(p)
            )
        );
        namedXContent.add(
            new NamedXContentRegistry.Entry(
                TokenizationUpdate.class,
                DebertaV2TokenizationUpdate.NAME,
                (p, c) -> DebertaV2TokenizationUpdate.fromXContent(p)
            )
        );

        return namedXContent;
    }