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.69.8.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

fal-1.69.8-py3-none-any.whl (230.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fal-1.69.8.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fal-1.69.8.tar.gz
Algorithm Hash digest
SHA256 c2f30ec7bd87f10ae9cfce9577b8ae031fdedda2bb1d81473d3b475215689d7e
MD5 2f9bad400d2299cd59f6d60ee83ab648
BLAKE2b-256 3ef521fb30ebce59b783c025c252256ed7258e3d970c6a348cdd6b935b5b3ae0

See more details on using hashes here.

Provenance

The following attestation bundles were made for fal-1.69.8.tar.gz:

Publisher: release.yaml on fal-ai/fal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: fal-1.69.8-py3-none-any.whl
  • Upload date:
  • Size: 230.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for fal-1.69.8-py3-none-any.whl
Algorithm Hash digest
SHA256 6fed8c7178dd93668ef04f85d79527e6792e2f9d56d1573c0ca4994ae7d3cd63
MD5 0874bb00379c756749364d2a22a4e52a
BLAKE2b-256 3d0578d56ee5f99673bdb2d8a23f34ef8fa5d95fd25b9200f6dac5934749e24e

See more details on using hashes here.

Provenance

The following attestation bundles were made for fal-1.69.8-py3-none-any.whl:

Publisher: release.yaml on fal-ai/fal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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