class_docstr: A recipe for developing high-quality regression models. The recipe is designed for
  developing models using scikit-learn and frameworks that integrate with scikit-learn,
  such as the ``XGBRegressor`` API from XGBoost. The corresponding recipe
  template repository is available at https://github.com/mlflow/recipes-regression-template.
  The training recipe contains the following sequential steps:
  
  **ingest** -> **split** -> **transform** -> **train** -> **evaluate** -> **register**
  
  while the batch scoring recipe contains this set of sequential steps:
  
  **ingest_scoring** -> **predict**
  
  .. code-block:: python
      :caption: Example
  
      import os
      from mlflow.recipes import Recipe
  
      os.chdir("~/recipes-regression-template")
      regression_recipe = Recipe(profile="local")
      # Display a visual overview of the recipe graph
      regression_recipe.inspect()
      # Run the full recipe
      regression_recipe.run()
      # Display a summary of results from the 'train' step, including the trained model
      # and associated performance metrics computed from the training & validation datasets
      regression_recipe.inspect(step="train")
      # Display a summary of results from the 'evaluate' step, including model explanations
      # computed from the validation dataset and metrics computed from the test dataset
      regression_recipe.inspect(step="evaluate")
class_docstr_tok: ["A","recipe","for","developing","high-quality","regression","models",".","The","recipe","is","designed","for","developing","models","using","scikit-learn","and","frameworks","that","integrate","with","scikit-learn",",","such","as","the","``","XGBRegressor","``","API","from","XGBoost",".","The","corresponding","recipe","template","repository","is","available","at","https",":","\/\/github.com\/mlflow\/recipes-regression-template",".","The","training","recipe","contains","the","following","sequential","steps",":","*","*","ingest","*","*","-",">","*","*","split","*","*","-",">","*","*","transform","*","*","-",">","*","*","train","*","*","-",">","*","*","evaluate","*","*","-",">","*","*","register","*","*","while","the","batch","scoring","recipe","contains","this","set","of","sequential","steps",":","*","*","ingest_scoring","*","*","-",">","*","*","predict","*","*","..","code-block",":",":","python",":","caption",":","Example","import","os","from","mlflow.recipes","import","Recipe","os.chdir","(","``","~\/recipes-regression-template","''",")","regression_recipe","=","Recipe","(","profile=","''","local","''",")","#","Display","a","visual","overview","of","the","recipe","graph","regression_recipe.inspect","(",")","#","Run","the","full","recipe","regression_recipe.run","(",")","#","Display","a","summary","of","results","from","the","'train","'","step",",","including","the","trained","model","#","and","associated","performance","metrics","computed","from","the","training","&","validation","datasets","regression_recipe.inspect","(","step=","''","train","''",")","#","Display","a","summary","of","results","from","the","'evaluate","'","step",",","including","model","explanations","#","computed","from","the","validation","dataset","and","metrics","computed","from","the","test","dataset","regression_recipe.inspect","(","step=","''","evaluate","''",")"]
docstr: Runs the full recipe or a particular recipe step, producing outputs and displaying a
  summary of results upon completion. Step outputs are cached from previous executions, and
  steps are only re-executed if configuration or code changes have been made to the step or
  to any of its dependent steps (e.g. changes to the recipe's ``recipe.yaml`` file or
  ``steps/ingest.py`` file) since the previous execution.
  
  :param step: String name of the step to run within the regression recipe. The step and
               its dependencies are executed sequentially. If a step is not specified, the
               entire recipe is executed. Supported steps, in their order of execution, are:
  
               - ``"ingest"``: resolves the dataset specified by the ``data/training`` section
                 in the recipe's configuration file (``recipe.yaml``) and converts it to
                 parquet format.
  
               - ``"ingest_scoring"``: resolves the dataset specified by the
                 ``ingest_scoring`` section in the recipe's configuration file
                 (``recipe.yaml``)and converts it to parquet format.
  
               - ``"split"``: splits the ingested dataset produced by the **ingest** step into
                 a training dataset for model training, a validation dataset for model
                 performance evaluation & tuning, and a test dataset for model performance
                 evaluation.
  
               - ``"transform"``: uses the training dataset created by the **split** step to
                 fit a transformer that performs the transformations defined in the
                 recipe's ``steps/transform.py`` file. Then, applies the transformer to the
                 training dataset and the validation dataset, creating transformed datasets
                 that are used by subsequent steps for estimator training and model
                 performance evaluation.
  
               - ``"train"``: uses the transformed training dataset output from the
                 **transform** step to fit an estimator with the type and parameters defined
                 in in the recipe's ``steps/train.py`` file. Then, joins the estimator with
                 the fitted transformer output from the **transform** step to create a model
                 recipe. Finally, evaluates the model recipe against the transformed
                 training and validation datasets to compute performance metrics.
  
               - ``"evaluate"``: evaluates the model recipe created by the **train** step
                 on the validation and test dataset outputs from the **split** step, computing
                 performance metrics and model explanations. Then, compares performance
                 metrics against thresholds configured in the recipe's ``recipe.yaml``
                 configuration file to compute a ``model_validation_status``, which indicates
                 whether or not the model is good enough to be registered to the MLflow Model
                 Registry by the subsequent **register** step.
  
               - ``"register"``: checks the ``model_validation_status`` output of the
                 preceding **evaluate** step and, if model validation was successful (as
                 indicated by the ``'VALIDATED'`` status), registers the model recipe
                 created by the **train** step to the MLflow Model Registry.
  
               - ``"predict"``: uses the ingested dataset for scoring created by the
                 **ingest_scoring** step and applies the specified model to the dataset.
  
  .. code-block:: python
      :caption: Example
  
      import os
      from mlflow.recipes import Recipe
  
      os.chdir("~/recipes-regression-template")
      regression_recipe = Recipe(profile="local")
      # Run the 'train' step and preceding steps
      regression_recipe.run(step="train")
      # Run the 'register' step and preceding steps; the 'train' step and all steps
      # prior to 'train' are not re-executed because their outputs are already cached
      regression_recipe.run(step="register")
      # Run all recipe steps; equivalent to running 'register'; no steps are re-executed
      # because the outputs of all steps are already cached
      regression_recipe.run()
docstr_tok: ["Runs","the","full","recipe","or","a","particular","recipe","step",",","producing","outputs","and","displaying","a","summary","of","results","upon","completion",".","Step","outputs","are","cached","from","previous","executions",",","and","steps","are","only","re-executed","if","configuration","or","code","changes","have","been","made","to","the","step","or","to","any","of","its","dependent","steps","(","e.g",".","changes","to","the","recipe","'s","``","recipe.yaml","``","file","or","``","steps\/ingest.py","``","file",")","since","the","previous","execution",".",":","param","step",":","String","name","of","the","step","to","run","within","the","regression","recipe",".","The","step","and","its","dependencies","are","executed","sequentially",".","If","a","step","is","not","specified",",","the","entire","recipe","is","executed",".","Supported","steps",",","in","their","order","of","execution",",","are",":","-","``","``","ingest","''","``",":","resolves","the","dataset","specified","by","the","``","data\/training","``","section","in","the","recipe","'s","configuration","file","(","``","recipe.yaml","``",")","and","converts","it","to","parquet","format",".","-","``","``","ingest_scoring","''","``",":","resolves","the","dataset","specified","by","the","``","ingest_scoring","``","section","in","the","recipe","'s","configuration","file","(","``","recipe.yaml","``",")","and","converts","it","to","parquet","format",".","-","``","``","split","''","``",":","splits","the","ingested","dataset","produced","by","the","*","*","ingest","*","*","step","into","a","training","dataset","for","model","training",",","a","validation","dataset","for","model","performance","evaluation","&","tuning",",","and","a","test","dataset","for","model","performance","evaluation",".","-","``","``","transform","''","``",":","uses","the","training","dataset","created","by","the","*","*","split","*","*","step","to","fit","a","transformer","that","performs","the","transformations","defined","in","the","recipe","'s","``","steps\/transform.py","``","file",".","Then",",","applies","the","transformer","to","the","training","dataset","and","the","validation","dataset",",","creating","transformed","datasets","that","are","used","by","subsequent","steps","for","estimator","training","and","model","performance","evaluation",".","-","``","``","train","''","``",":","uses","the","transformed","training","dataset","output","from","the","*","*","transform","*","*","step","to","fit","an","estimator","with","the","type","and","parameters","defined","in","in","the","recipe","'s","``","steps\/train.py","``","file",".","Then",",","joins","the","estimator","with","the","fitted","transformer","output","from","the","*","*","transform","*","*","step","to","create","a","model","recipe",".","Finally",",","evaluates","the","model","recipe","against","the","transformed","training","and","validation","datasets","to","compute","performance","metrics",".","-","``","``","evaluate","''","``",":","evaluates","the","model","recipe","created","by","the","*","*","train","*","*","step","on","the","validation","and","test","dataset","outputs","from","the","*","*","split","*","*","step",",","computing","performance","metrics","and","model","explanations",".","Then",",","compares","performance","metrics","against","thresholds","configured","in","the","recipe","'s","``","recipe.yaml","``","configuration","file","to","compute","a","``","model_validation_status","``",",","which","indicates","whether","or","not","the","model","is","good","enough","to","be","registered","to","the","MLflow","Model","Registry","by","the","subsequent","*","*","register","*","*","step",".","-","``","``","register","''","``",":","checks","the","``","model_validation_status","``","output","of","the","preceding","*","*","evaluate","*","*","step","and",",","if","model","validation","was","successful","(","as","indicated","by","the","``","'VALIDATED","'","``","status",")",",","registers","the","model","recipe","created","by","the","*","*","train","*","*","step","to","the","MLflow","Model","Registry",".","-","``","``","predict","''","``",":","uses","the","ingested","dataset","for","scoring","created","by","the","*","*","ingest_scoring","*","*","step","and","applies","the","specified","model","to","the","dataset",".","..","code-block",":",":","python",":","caption",":","Example","import","os","from","mlflow.recipes","import","Recipe","os.chdir","(","``","~\/recipes-regression-template","''",")","regression_recipe","=","Recipe","(","profile=","''","local","''",")","#","Run","the","'train","'","step","and","preceding","steps","regression_recipe.run","(","step=","''","train","''",")","#","Run","the","'register","'","step","and","preceding","steps",";","the","'train","'","step","and","all","steps","#","prior","to","'train","'","are","not","re-executed","because","their","outputs","are","already","cached","regression_recipe.run","(","step=","''","register","''",")","#","Run","all","recipe","steps",";","equivalent","to","running","'register","'",";","no","steps","are","re-executed","#","because","the","outputs","of","all","steps","are","already","cached","regression_recipe.run","(",")"]
code: def run(self, step: Optional[str] = None) -> None:
      """
      Runs the full recipe or a particular recipe step, producing outputs and displaying a
      summary of results upon completion. Step outputs are cached from previous executions, and
      steps are only re-executed if configuration or code changes have been made to the step or
      to any of its dependent steps (e.g. changes to the recipe's ``recipe.yaml`` file or
      ``steps/ingest.py`` file) since the previous execution.
  
      :param step: String name of the step to run within the regression recipe. The step and
                   its dependencies are executed sequentially. If a step is not specified, the
                   entire recipe is executed. Supported steps, in their order of execution, are:
  
                   - ``"ingest"``: resolves the dataset specified by the ``data/training`` section
                     in the recipe's configuration file (``recipe.yaml``) and converts it to
                     parquet format.
  
                   - ``"ingest_scoring"``: resolves the dataset specified by the
                     ``ingest_scoring`` section in the recipe's configuration file
                     (``recipe.yaml``)and converts it to parquet format.
  
                   - ``"split"``: splits the ingested dataset produced by the **ingest** step into
                     a training dataset for model training, a validation dataset for model
                     performance evaluation & tuning, and a test dataset for model performance
                     evaluation.
  
                   - ``"transform"``: uses the training dataset created by the **split** step to
                     fit a transformer that performs the transformations defined in the
                     recipe's ``steps/transform.py`` file. Then, applies the transformer to the
                     training dataset and the validation dataset, creating transformed datasets
                     that are used by subsequent steps for estimator training and model
                     performance evaluation.
  
                   - ``"train"``: uses the transformed training dataset output from the
                     **transform** step to fit an estimator with the type and parameters defined
                     in in the recipe's ``steps/train.py`` file. Then, joins the estimator with
                     the fitted transformer output from the **transform** step to create a model
                     recipe. Finally, evaluates the model recipe against the transformed
                     training and validation datasets to compute performance metrics.
  
                   - ``"evaluate"``: evaluates the model recipe created by the **train** step
                     on the validation and test dataset outputs from the **split** step, computing
                     performance metrics and model explanations. Then, compares performance
                     metrics against thresholds configured in the recipe's ``recipe.yaml``
                     configuration file to compute a ``model_validation_status``, which indicates
                     whether or not the model is good enough to be registered to the MLflow Model
                     Registry by the subsequent **register** step.
  
                   - ``"register"``: checks the ``model_validation_status`` output of the
                     preceding **evaluate** step and, if model validation was successful (as
                     indicated by the ``'VALIDATED'`` status), registers the model recipe
                     created by the **train** step to the MLflow Model Registry.
  
                   - ``"predict"``: uses the ingested dataset for scoring created by the
                     **ingest_scoring** step and applies the specified model to the dataset.
  
      .. code-block:: python
          :caption: Example
  
          import os
          from mlflow.recipes import Recipe
  
          os.chdir("~/recipes-regression-template")
          regression_recipe = Recipe(profile="local")
          # Run the 'train' step and preceding steps
          regression_recipe.run(step="train")
          # Run the 'register' step and preceding steps; the 'train' step and all steps
          # prior to 'train' are not re-executed because their outputs are already cached
          regression_recipe.run(step="register")
          # Run all recipe steps; equivalent to running 'register'; no steps are re-executed
          # because the outputs of all steps are already cached
          regression_recipe.run()
      """
      return super().run(step=step)
  
file_path: mlflow/mlflow/recipes/regression/v1/recipe.py
imports: import logging
  from typing import Any, Optional
  from mlflow.recipes.recipe import BaseRecipe
  from mlflow.recipes.step import BaseStep
  from mlflow.recipes.steps.evaluate import EvaluateStep
  from mlflow.recipes.steps.ingest import IngestScoringStep, IngestStep
  from mlflow.recipes.steps.predict import PredictStep
  from mlflow.recipes.steps.register import RegisterStep
  from mlflow.recipes.steps.split import SplitStep
  from mlflow.recipes.steps.train import TrainStep
  from mlflow.recipes.steps.transform import TransformStep
label_desc: Use image node_id 3 for calling the RegressionRecipe obj's underlying member method code with example usage: obj.run(step) and returns: super