Skip to main content

Flyte agent for Perian Job Platform (perian.io)

Project description

Flytekit Perian Job Platform Plugin

Flyte Agent plugin for executing Flyte tasks on Perian Job Platform (perian.io).

Perian Job Platform is still in closed beta. Contact support@perian.io if you are interested in trying it out.

To install the plugin, run the following command:

pip install flytekitplugins-perian-job

Getting Started

This plugin allows executing PythonFunctionTask on Perian.

An ImageSpec need to be built with the perian agent plugin installed.

Parameters

The following parameters can be used to set the requirements for the Perian task. If any of the requirements are skipped, it is replaced with the cheapest option. At least one requirement value should be set.

  • cores: Number of CPU cores
  • memory: Amount of memory in GB
  • accelerators: Number of accelerators
  • accelerator_type: Type of accelerator (e.g. 'A100'). For a full list of supported accelerators, use the perian CLI list-accelerators command.
  • country_code: Country code to run the job in (e.g. 'DE')

Credentials

The following secrets are required to be defined for the agent server:

  • Perian credentials:
    • perian_organization
    • perian_token
  • For accessing the Flyte storage bucket, you need to add either AWS or GCP credentials. These credentials are never logged by Perian and are only stored until then are used, then immediately deleted.
    • AWS credentials:
      • aws_access_key_id
      • aws_secret_access_key
    • GCP credentials:
      • google_application_credentials. This should be the full json credentials.
  • (Optional) Custom docker registry for pulling the Flyte image:
    • docker_registry_url
    • docker_registry_username
    • docker_registry_password

Example

example.py workflow example:

from flytekit import ImageSpec, task, workflow
from flytekitplugins.perian_job import PerianConfig

image_spec = ImageSpec(
    name="flyte-test",
    registry="my-registry",
    python_version="3.11",
    apt_packages=["wget", "curl", "git"],
    packages=[
        "flytekitplugins-perian-job",
    ],
)

@task(container_image=image_spec,
      task_config=PerianConfig(
        accelerators=1,
        accelerator_type="A100",
      ))
def perian_hello(name: str) -> str:
    return f"hello {name}!"

@workflow
def my_wf(name: str = "world") -> str:
    return perian_hello(name=name)

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

flytekitplugins_perian_job-1.13.15.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

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

flytekitplugins_perian_job-1.13.15-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file flytekitplugins_perian_job-1.13.15.tar.gz.

File metadata

File hashes

Hashes for flytekitplugins_perian_job-1.13.15.tar.gz
Algorithm Hash digest
SHA256 86cd2f893b49efe381398dc59e05230f11026e0370a22111e4c0b09a94cf5642
MD5 bfec213acc3c9a51f25486fae003a1de
BLAKE2b-256 4987c74ed78e3230a6c99a7ec39892db80916a3734c50a47d25621503c2d0677

See more details on using hashes here.

File details

Details for the file flytekitplugins_perian_job-1.13.15-py3-none-any.whl.

File metadata

File hashes

Hashes for flytekitplugins_perian_job-1.13.15-py3-none-any.whl
Algorithm Hash digest
SHA256 b0ad0e780f45714184807288854e6c9c5ad16dda98f4029830cbe4fdf83e680a
MD5 b447b29feca5719fddaa5285acfc8f49
BLAKE2b-256 f3a815a7e90ac5289beeba3ae2b2af7b13f196a6a55219012c998f4f7962104e

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