Skip to main content

A globally distributed container runtime

Project description

nebulous-py

A declarative python library for the Nebulous runtime

Installation

pip install nebulous-sh

Usage

Create a pytorch container on runpod with 1 A100 GPU

from nebulous import Container, V1EnvVar

container = Container(
    name="pytorch-example",
    namespace="test",
    image="pytorch/pytorch:latest",
    platform="runpod",
    env=[V1EnvVar(name="MY_ENV_VAR", value="my-value")],
    command="nvidia-smi",
    accelerators=["1:A100_SXM"],
    proxy_port=8080,
)

while container.status.status.lower() != "running":
    print(f"Container '{container.metadata.name}' is not running, it is '{container.status.status}', waiting...")
    time.sleep(1)

print(f"Container '{container.metadata.name}' is running")

print(f"You can access the container at {container.status.tailnet_url}")

Processors

Run a python function as a stream processor.

from nebulous import Message, processor
from pydantic import BaseModel

class MyInput(BaseModel):
    a: str
    b: int

@processor(image="python:3.10-slim", accelerators=["1:A100_SXM"])
def my_function(msg: Message[MyInput]):
    return msg

msg = MyInput(a="foo", b=1)
result = my_function(msg)
print(result)

Contributing

Please open an issue or a PR to contribute to the project.

Development

make test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nebulous_sh-0.1.140.tar.gz (84.2 kB view details)

Uploaded Source

Built Distribution

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

nebulous_sh-0.1.140-py3-none-any.whl (90.2 kB view details)

Uploaded Python 3

File details

Details for the file nebulous_sh-0.1.140.tar.gz.

File metadata

  • Download URL: nebulous_sh-0.1.140.tar.gz
  • Upload date:
  • Size: 84.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.29

File hashes

Hashes for nebulous_sh-0.1.140.tar.gz
Algorithm Hash digest
SHA256 8fa58cf47a1b97110ac9eafc7da926d02dc04fa327250e5ca6e970ba92f58076
MD5 58f7b193974599b6ff37402d794662e8
BLAKE2b-256 2e13b7824990f29240a428ef7a1a8f5ff7866a7b9130f043cc932f979f48e717

See more details on using hashes here.

File details

Details for the file nebulous_sh-0.1.140-py3-none-any.whl.

File metadata

File hashes

Hashes for nebulous_sh-0.1.140-py3-none-any.whl
Algorithm Hash digest
SHA256 31542299b912e4d907814ff5acff06d2389d99bac8273b242dbed64a999378fb
MD5 88055d68a15bdb9079db7549a9454b6a
BLAKE2b-256 2d8bb15fd797f21c87da45e5b3eb6e97fc8ce7ddb1edafa56f7d7f1e86928492

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