---
title: Blueprint
description: How to use blueprints, which show the high-level end-to-end procedure for fitting the model, including preprocessing steps, algorithms, and post-processing.

---

# Blueprint {: #blueprints }

During the course of building predictive models, DataRobot runs several different versions of each algorithm and tests thousands of possible combinations of data preprocessing and parameter settings. (Many of the models use DataRobot proprietary approaches to data preprocessing.) The result of this testing is provided in the **Blueprints** tab.

Blueprints are ML pipelines containing preprocessing steps, modeling algorithms, and post-processing steps. They can be generated either automatically as part of Autopilot or manually/programmatically. Blueprints are found in three places in the application:

1. From the Leaderboard, as a visualization available for each trained models (this tab).
2. From the [Repository](repository), which contains all blueprints generated by (although not necessarily built by) Autopilot for a project.
3. In the AI Catalog, under the **Blueprints** tab.

??? faq "What is the difference between a model and a blueprint?"
     A *modeling* algorithm fits a model to data, which is just one component of a blueprint. A *blueprint* represents the high-level, end-to-end procedure for fitting the model, including any preprocessing steps, modeling, and post-processing steps.

## View blueprints {: #view-blueprints }

To view a graphical representation of a blueprint, click a model on the Leaderboard.

![](images/blueprint-uncensored.png)

## Blueprint components {: #blueprint-components }

Each blueprint has a few key sections.

|  Section  | Description |
|-----------|-------------|
| `Data`   | The incoming data, separated into each type (categorical, numeric, text, image, geospatial, etc.). |
|  Transformations  |  The tasks that perform transformations on the data (for example, `Missing values imputed`). Different columns in the dataset require different types of preparation and transformation. For example, some algorithms recommend subtracting the mean and dividing by the standard deviation of the input data—but this would not make sense for text input data. The first step in the execution of a blueprint is to identify data types that belong together so they can be processed separately.  |
|  Model(s)   |  The model(s) making predictions or possibly supplying [stacked predictions](data-partitioning#what-are-stacked-predictions) to a subsequent model. |
|  Post-processing  |  Any post-processing steps, such as `Calibration`. |
|  `Prediction`       |  The data being sent as the final predictions. |


Each blueprint has nodes and edges (i.e., connections). A node will take in data, perform an operation, and output the data in its new form. An edge is a representation of the flow of data.

When two edges are <em>received</em> by a single node:

![](images/blueprint-3.png)

It is a representation of two sets of columns being received by the node&mdash; the two sets of columns are stacked horizontally. That is, the column count of the incoming data is the sum of the two sets of columns and the row count remains the same.

If two edges are <em>output</em> by a single node, it is a representation of two copies of the output data being sent to other nodes. Other nodes in the blueprint are other types of data transformations or models.

![](images/blueprint-4.png)

Click a blueprint node to display additional information, including access to model documentation.

## Blueprint controls {: #blueprint-controls }

From the blueprint canvas, you can:

* Click, hold, and drag to move the blueprint around the canvas.
* Add the blueprint to the AI Catalog for later editing, re-use, and sharing.
* [Copy and edit blueprints](cml-blueprint-edit).


![](images/blueprint-4.png)