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]"

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.12.4.tar.gz (207.4 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.12.4-py3-none-any.whl (277.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flytekit-0.12.4.tar.gz
  • Upload date:
  • Size: 207.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for flytekit-0.12.4.tar.gz
Algorithm Hash digest
SHA256 6532ff2da01a939c0bdaab7d3c7019f47043c97d0ef5904f052be3492e8aeaf4
MD5 b83e8e64d8461eb9b2d5d52a2a0390c1
BLAKE2b-256 afb6ce6b4d654c5c818323dfdab16bb89354c498b104bc8edc984b88789065b1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: flytekit-0.12.4-py3-none-any.whl
  • Upload date:
  • Size: 277.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for flytekit-0.12.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fcb8d43f003dc728e2f20aeed593ff45a62eb6a37a50bdde2596dfd98999769e
MD5 c9c5a54a013f82e40dc08e98c3662483
BLAKE2b-256 bdaad596639de6246413f01c03be436d1a3d2ea52c9428179c31160057a062e5

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