Skip to main content

A Command Line Interface for https://dstack.ai

Project description

The easiest way to build AI apps


pypi stat slack

dstack allows you to train models and run AI apps in your cloud account.

  • Define your machine learning tasks as workflows, and run them via the CLI.
  • Specify hardware requirements for your workflows as code.
  • Deploy AI applications to dstack with a single command.
  • Store, version, and reuse data the most simple way.
  • Launch pre-configured development environments with a single command.

This repository contains the open source code of the built-in providers, the CLI, and documentation.

📘 Documentation

See full documentation at docs.dstack.ai

🚀 Getting started

To use dstack, you have to create an account, and obtain your personal token.

Install the CLI

Here's how to do it:

pip install dstack
dstack config --token <token> 

Define workflows

Your common project tasks can be defined as workflows:

Click to see an example
workflows:
  - name: prepare
    help: "Loads and prepares the training data" 
    provider: python
    file: "prepare.py"
    artifacts: ["data"]

  - name: train
    help: "Trains a model and saves the checkpoints"
    depends-on:
      - prepare:latest
    provider: python
    file: "train.py"
    artifacts: ["checkpoint"]
    resources:
      gpu: 1    

Run any workflow in the cloud via a single command:

$ dstack run train

Workflows are optional. You can run providers directly from the CLI:

dstack run python train.py \
  --dep prepare:latest --artifact checkpoint --gpu 1

Run applications

Here's how to run applications:

dstack run streamlit app.py --dep model:latest

Launch dev environments

If you need an interactive dev environment, you can have it too through the corresponding provider:

dstack run code app.py --dep prepare:latest --gpu 1

This will run a VS Code with mounted artifacts and requested hardware resources.

🧩 Providers

Find the full list of built-in providers along examples and their source code here.

🙋‍♀️ Contributing

There are several ways to contribute to dstack:

  1. Create pull requests with bugfixes, new providers and examples, and improvements to the docs.
  2. Send us links to your own projects that use dstack to be featured here.
  3. Report bugs to our issue tracker.
  4. Ask questions and share news within our Slack community.

Remember, it's important to respect other members of the community. In case you're not sure about the rules, check out code of conduct.

🛟 Troubleshooting and help

Use our Slack community to get help and support.

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

dstack-0.0.5-py3-none-any.whl (67.9 kB view details)

Uploaded Python 3

File details

Details for the file dstack-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: dstack-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 67.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for dstack-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 980ee5893e6a4be16e1bfbe21713147a47b1c02bd1ce3aee2030797be1b3d781
MD5 0bb823b4ec1c94a531eb6b3bc2f8c520
BLAKE2b-256 849f6d361e84d79ba4bbb36eec16682b8879547d81b50e3405affd8a51d321aa

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