concurrency_limit_reached or cpu quota exceeded

We offer three pricing tiers and each has its own CPU and GPU quotas.

PlanCPU QuotaGPU Quota
Free Trial105
Developer105
Team1,00020
Growth10,000+100+

If you get this message, make sure you’ve added a payment method to your account and selected the pay-as-you-go developer plan on this page.

Unable to connect to gateway

Make sure you’re on the latest version of the beam-client CLI.

pip install --upgrade beam-client

Run this command to validate your version of the CLI:

beam --version

No space left on device

This error typically occurs when your app runs out of disk space. For example, if you’re downloading a 30Gi file and your app only has 8Gi of memory, you might see this error.

For more information on configuring RAM for your apps, read more on this page.

cannot import name 'App' from 'beam'

If you’re seeing this error, it’s because you’re trying to use Beam V2 with a V1 app. There is no App class in Beam V2.

For more information on using Beam V2, read more on this page.

Unable to locate config file

This typically happens when there are multiple Python environments on your computer.

If you are using Conda, we recommend exiting Conda and using a standard Python Virtual Environment instead: python3 -m virtualenv .venv && source .venv/bin/activate

The most common way of solving this is by running which python and installing beam-client to that specific path.

For example:

$ which python

python: aliased to /usr/bin/python3 # gotcha!

$ /usr/bin/python3 -m virtualenv .venv && source .venv/bin/activate

$ (.venv) /usr/bin/python3 -m pip install --upgrade beam-client

Tensorflow Can’t Find GPUs

If you’re using Tensorflow, you might run into an issue when tf doesn’t recognize the available GPUs on the device.

Make sure to install tensorflow[and-cuda], otherwise the regular version of tf won’t have access to the GPU device.

from beam import Image, endpoint, env

if env.is_remote():
    import tensorflow as tf


@endpoint(
    name="tensorflow-gpu",
    cpu=1,
    memory="4Gi",
    gpu="A10G",
    # Make sure to use `tensorflow[and-cuda]` in order to access GPU resources
    image=Image().add_python_packages(["tensorflow[and-cuda]"]),
)
def predict():
    # Show available GPUs
    gpus = tf.config.list_physical_devices("GPU")

    try:
        for gpu in gpus:
            tf.config.experimental.set_memory_growth(gpu, True)
    except RuntimeError as e:
        print(e)

    print("🚧 Is built with CUDA:", tf.test.is_built_with_cuda())
    print("🚧 Is GPU available:", tf.test.is_gpu_available())
    print("🚧 GPUs available:", tf.config.list_physical_devices("GPU"))