One or more non-transitory computer-readable storage media configured to store instructions that, in response to being executed, cause a system to perform operations, the operations comprising:
- normalizing machine learning (ML) pipelines of existing ML projects stored in a corpus of existing ML projects;
- extracting functional blocks from the normalized ML pipelines;
- assigning a label to each of the functional blocks in the normalized ML pipelines;
- indexing each of the ML pipelines in the corpus based on the labels assigned to the functional blocks;
- and
- utilizing the labels assigned to the functional blocks in the corpus to generate a new pipeline to perform a new ML task on a new dataset of a new ML project.