/flytekit

Extensible Python SDK for developing Flyte tasks and workflows. Simple to get started and learn and highly extensible.

Primary LanguagePythonApache License 2.0Apache-2.0

Flyte Logo

Flytekit Python

Flytekit Python is the Python SDK built on top of Flyte

PyPI version fury.io PyPI download day PyPI download month PyPI format PyPI implementation Codecov PyPI pyversions Docs Code style: black Slack

Flytekit Python is the Python Library for easily authoring, testing, deploying, and interacting with Flyte tasks, workflows, and launch plans.

If you haven't explored Flyte yet, please refer to:

๐Ÿš€ Quick Start

Flytekit is the core extensible library to author Flyte workflows and tasks and interact with Flyte backend services.

Installation

pip install flytekit

A Simple Example

from flytekit import task, workflow

@task(cache=True, cache_version="1", retries=3)
def sum(x: int, y: int) -> int:
    return x + y

@task(cache=True, cache_version="1", retries=3)
def square(z: int) -> int:
    return z*z

@workflow
def my_workflow(x: int, y: int) -> int:
    return sum(x=square(z=x), y=square(z=y))

๐Ÿ“ฆ Resources

๐Ÿ“– How to Contribute to Flytekit

You can find the detailed contribution guide here. Plugins' contribution guide is included as well.

Code Structure

Please see the contributor's guide for a quick summary of how this code is structured.

๐Ÿž File an Issue

Refer to the issues section in the contribution guide if you'd like to file an issue.

๐Ÿ”Œ Flytekit Plugins

Refer to plugins/README.md for a list of available plugins. There may be plugins outside of this list, but the core maintainers maintain this list.