Skip to main content

dstack is an open-source orchestration engine for running AI workloads on any cloud or on-premises.

Project description

dstack is an open-source container orchestration engine designed for running AI workloads across any cloud or data center. It simplifies dev environments, running tasks on clusters, and deployment.

The supported cloud providers include AWS, GCP, Azure, OCI, Lambda, TensorDock, Vast.ai, RunPod, and CUDO. You can also use dstack to run workloads on on-prem clusters.

dstack natively supports NVIDIA GPU, and Google Cloud TPU accelerator chips.

Latest news ✨

Installation

Before using dstack through CLI or API, set up a dstack server.

Install the server

The easiest way to install the server, is via pip:

pip install "dstack[all]" -U

Configure backends

If you have default AWS, GCP, Azure, or OCI credentials on your machine, the dstack server will pick them up automatically.

Otherwise, you need to manually specify the cloud credentials in ~/.dstack/server/config.yml.

See the server/config.yml reference for details on how to configure backends for all supported cloud providers.

Start the server

To start the server, use the dstack server command:

$ dstack server

Applying ~/.dstack/server/config.yml...

The admin token is "bbae0f28-d3dd-4820-bf61-8f4bb40815da"
The server is running at http://127.0.0.1:3000/

Note It's also possible to run the server via Docker.

CLI & API

Once the server is up, you can use either dstack's CLI or API to run workloads. Below is a live demo of how it works with the CLI.

Dev environments

You specify the required environment and resources, then run it. dstack provisions the dev environment in the cloud and enables access via your desktop IDE.

Tasks

Tasks allow for convenient scheduling of any kind of batch jobs, such as training, fine-tuning, or data processing, as well as running web applications.

Specify the environment and resources, then run it. dstack executes the task in the cloud, enabling port forwarding to your local machine for convenient access.

Services

Services make it very easy to deploy any kind of model or web application as public endpoints.

Use any serving frameworks and specify required resources. dstack deploys it in the configured backend, handles authorization, and provides an OpenAI-compatible interface if needed.

Pools

Pools simplify managing the lifecycle of cloud instances and enable their efficient reuse across runs.

You can have instances provisioned in the cloud automatically, or add them manually, configuring the required resources, idle duration, etc.

Examples

Here are some featured examples:

Browse examples for more examples.

More information

For additional information and examples, see the following links:

Contributing

We welcome contributions to dstack! To learn more about getting involved in the project, please refer to CONTRIBUTING.md.

License

Mozilla Public License 2.0

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

dstack-0.18.7rc1.tar.gz (307.8 kB view details)

Uploaded Source

Built Distribution

dstack-0.18.7rc1-py3-none-any.whl (466.0 kB view details)

Uploaded Python 3

File details

Details for the file dstack-0.18.7rc1.tar.gz.

File metadata

  • Download URL: dstack-0.18.7rc1.tar.gz
  • Upload date:
  • Size: 307.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for dstack-0.18.7rc1.tar.gz
Algorithm Hash digest
SHA256 9fd136ffda01f0941072841be9e77820dcf3d20b9714b27fa513c3e067dda6e6
MD5 6ee6a2c773c104f3b2655038f3b92645
BLAKE2b-256 2cf3fca7f9432fd9f98961d9db02eceb2f61db8bf2bff7c7d8381c5495296238

See more details on using hashes here.

File details

Details for the file dstack-0.18.7rc1-py3-none-any.whl.

File metadata

  • Download URL: dstack-0.18.7rc1-py3-none-any.whl
  • Upload date:
  • Size: 466.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for dstack-0.18.7rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 359f791d651f0798c492402b1f19023ea81cc7a074919e5767b7e4c05de6759c
MD5 2d1d877fcc73a3bb8c539609a39e73d4
BLAKE2b-256 6931042941ed4e0f0152cc177e7311ed4d9e552a53d1dbf526c27c6d5cc76675

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