PyPI version PyPI download day PyPI download month PyPI format PyPI implementation Codecov

Python Library for easily authoring, testing, deploying, and interacting with Flyte tasks, workflows, and launch plans. To understand more about flyte refer to,


Flytekit is designed for minimal footprint, and thus some features must be installed as extras.

Base Installation

This is the lightest-weight SDK install. This installation includes everything you need to interact with Flyte.

Modules include:

  1. The full Flyte IDL and an additional model layer for easier extension of the data model.
  2. gRPC client for communicating with the platform.
  3. Implementations for authoring and extending all Flyte entities (including tasks, workflows, and launch plans).

Tools include:

  1. flyte-cli (Command-Line Interface for Interacting with the Flyte Platform)
  2. pyflyte (Command-Line tool for easing the registration of Flyte entities)
pip install flytekit

Plugin Installation


If @spark_task is to be used, one should install the spark plugin.

pip install flytekit[spark]


If Types.Schema() is to be used for computations involving large dataframes, one should install the schema extension.

pip install flytekit[schema]


If @sidecar_task is to be used, one should install the sidecar plugin.

pip install flytekit[sidecar]


If @pytorch_task is to be used, one should install the pytorch plugin.

pip install flytekit[pytorch]

Full Installation

To install all or multiple available plugins, one can specify them individually:

pip install flytekit[sidecar,spark,schema]

Or install them with the all directive.

pip install flytekit[all]


Flytekit is Python 2.7+ compatible, so when feasible, it is recommended to test with both Python 2 and 3.

Unit Testing

Setup (Do Once)

virtualenv ~/.virtualenvs/flytekit
source ~/.virtualenvs/flytekit/bin/activate
python -m pip install -r requirements.txt
python -m pip install -U .[all]


source ~/.virtualenvs/flytekit/bin/activate
python -m pytest tests/flytekit/unit
shellcheck **/*.sh