Skip to main content

Flyte SDK for Python

Project description

Flytekit

PyPI version fury.io 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,

Installation

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

Spark

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

pip install "flytekit[spark]" for Spark 2.4.x
pip install "flytekit[spark3]" for Spark 3.x

Schema

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

pip install "flytekit[schema]"

Sidecar

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

pip install "flytekit[sidecar]"

Pytorch

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

pip install "flytekit[pytorch]"

TensorFlow

If @tensorflow_task is to be used, one should install the tensorflow plugin.

pip install flytekit[tensorflow]

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 or all-spark2.4 or all-spark3 directives which will install all the plugins and a specific Spark version. Please note that all currently defaults to Spark 2.4.x. In a future release (starting 0.15.x), all will be switched to use Spark 3.x.

pip install "flytekit[all]"

Development

Recipes

$ make
Available recipes:
  setup        Install requirements
  fmt          Format code with black and isort
  lint         Run linters
  test         Run tests
  requirements Compile requirements

Setup (Do Once)

virtualenv ~/.virtualenvs/flytekit
source ~/.virtualenvs/flytekit/bin/activate
make setup

Formatting

We use black and isort to autoformat code. Run the following command to execute the formatters:

source ~/.virtualenvs/flytekit/bin/activate
make fmt

Testing

Unit Testing

source ~/.virtualenvs/flytekit/bin/activate
make test

Updating requirements

Update requirements in setup.py, or update requirements for development in dev-requirements.in. Then, validate, pin and freeze all requirements by running:

source ~/.virtualenvs/flytekit/bin/activate
make requirements

This will re-create the requirements.txt and dev-requirements.txt files which will be used for testing. You will have also have to re-run make setup to update your local environment with the updated requirements.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flytekit-0.14.3.tar.gz (222.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flytekit-0.14.3-py3-none-any.whl (295.3 kB view details)

Uploaded Python 3

File details

Details for the file flytekit-0.14.3.tar.gz.

File metadata

  • Download URL: flytekit-0.14.3.tar.gz
  • Upload date:
  • Size: 222.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for flytekit-0.14.3.tar.gz
Algorithm Hash digest
SHA256 6fa013e949e5c7163fb9c98335f77bc7b7410828f55e08a71a34049693938413
MD5 b1fad38c22fae736fd993ee20e6a44bd
BLAKE2b-256 b9dc40ea024bd506932e7fc637e9ae363e3ebf64d7443f5e33b4b417a5ed5e31

See more details on using hashes here.

File details

Details for the file flytekit-0.14.3-py3-none-any.whl.

File metadata

  • Download URL: flytekit-0.14.3-py3-none-any.whl
  • Upload date:
  • Size: 295.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for flytekit-0.14.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f159ceb952547c81b0953ffaab2b4ee16053eba84bc69d91040d6f06fd422c0f
MD5 f4d38b212755463871b082dfc636bf63
BLAKE2b-256 4aaf401ccdaf99d43da224881ede7582b2c3e3992601ba7e88d8b1ff05559ee5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page