Spotty drastically simplifies training of deep learning models on AWS and GCP:
- it makes training on GPU instances as simple as training on your local machine
- it automatically manages all necessary cloud resources including images, volumes, snapshots and SSH keys
- it makes your model trainable in the cloud by everyone with a couple of commands
- it uses tmux to easily detach remote processes from their terminals
- it saves you up to 70% of the costs by using AWS Spot Instances and GCP Preemtible VMs
Documentation
- See the documentation page.
- Read this article on Medium for a real-world example.
Installation
Requirements:
- Python >=3.6
- AWS CLI (see Installing the AWS Command Line Interface) if you're using AWS
- Google Cloud SDK (see Installing Google Cloud SDK) if you're using GCP
Use pip to install or upgrade Spotty:
$ pip install -U spotty
Get Started
-
Prepare a
spotty.yamlfile and put it to the root directory of your project: -
Start an instance:
$ spotty start
It will run a Spot Instance, restore snapshots if any, synchronize the project with the running instance and start the Docker container with the environment.
-
Train a model or run notebooks.
To connect to the running container via SSH, use the following command:
$ spotty sh
It runs a tmux session, so you can always detach this session using
Ctrl + b, thendcombination of keys. To be attached to that session later, just use thespotty shcommand again.Also, you can run your custom scripts inside the Docker container using the
spotty run <SCRIPT_NAME>command. Read more about custom scripts in the documentation: Configuration: "scripts" section.
Contributions
Any feedback or contributions are welcome! Please check out the guidelines.
License
Metadata
Release files for spotty 1.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| spotty-1.3.3.tar.gz | 67.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| spotty-1.3.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 195.2 kB
Release files / spotty-1.3.3.tar.gz
| Download URL | spotty-1.3.3.tar.gz |
|---|---|
| Size | 67.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f24cbd51750ac12f9562482ebc30cfc0e23d522b1e438707eae4086dd478af8e
|
|
BLAKE2b-256 checksum How to use checksums |
8d288fcb680613f400e68059d62b45e8fabb2d77caadf3ef40f3153535daab4d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.15
|
Release files / spotty-1.3.3-py3-none-any.whl
| Download URL | spotty-1.3.3-py3-none-any.whl |
|---|---|
| Size | 127.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3d1736bf29ee8516984a2ebbfb6163369d36845cd107ac29b2ad91207728b046
|
|
BLAKE2b-256 checksum How to use checksums |
ea14880d996b1da83b3f7919528292a0e827bf0604cad72c1fc007fffd13e861
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.15
|