Skip to main content

fal is an easy-to-use Serverless Python Framework

Project description

PyPI Tests

fal

fal is a serverless Python runtime that lets you run and scale code in the cloud with no infra management.

With fal, you can build pipelines, serve ML models and scale them up to many users. You scale down to 0 when you don't use any resources.

Quickstart

First, you need to install the fal package. You can do so using pip:

pip install fal

Then you need to authenticate:

fal auth login

You can also use fal keys that you can get from our dashboard.

Now can use the fal package in your Python scripts as follows:

import fal

@fal.function(
    "virtualenv",
    requirements=["pyjokes"],
)
def tell_joke() -> str:
    import pyjokes

    joke = pyjokes.get_joke()
    return joke

print("Joke from the clouds: ", tell_joke())

A new virtual environment will be created by fal in the cloud and the set of requirements that we passed will be installed as soon as this function is called. From that point on, our code will be executed as if it were running locally, and the joke prepared by the pyjokes library will be returned.

Next steps

If you would like to find out more about the capabilities of fal, check out to the docs. You can learn more about persistent storage, function caches and deploying your functions as API endpoints.

Contributing

Installing in editable mode with dev dependencies

pip install -e 'projects/fal[dev]'
pip install -e 'projects/fal_client[dev]'
pip install -e 'projects/isolate_proto[dev]'

Running tests

pytest

Pre-commit

cd projects/fal
pre-commit install

Commit format

Please follow conventional commits specification for descriptions/messages.

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

fal-1.1.1.tar.gz (86.6 kB view details)

Uploaded Source

Built Distribution

fal-1.1.1-py3-none-any.whl (120.9 kB view details)

Uploaded Python 3

File details

Details for the file fal-1.1.1.tar.gz.

File metadata

  • Download URL: fal-1.1.1.tar.gz
  • Upload date:
  • Size: 86.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for fal-1.1.1.tar.gz
Algorithm Hash digest
SHA256 746b3d75c244e4ac59d364c534f0e7776946be54fdf4b2c0d897fdb80dfae9db
MD5 f5d31aa3d7ca864a3bdfe7c13db32da9
BLAKE2b-256 c64a722c85bc686cbe00f7ef9a94e99a9b6f8f707e6f9af039795a9ac21f2d52

See more details on using hashes here.

File details

Details for the file fal-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: fal-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 120.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for fal-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 803676c9e48265a5bc99bb6d8206aefcfe7a0d9d9c3913d3eaeb667e201868ef
MD5 1c7016450a7c5edd9d39940cfed77750
BLAKE2b-256 6ee3d1171ef80fa3e3b96adad972491d7a49f96d30ca8c7b9ac491271587acac

See more details on using hashes here.

Supported by

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