A CLI tool to fine-tuning and deploying open-source models
Project description
Magemaker v0.1.7, by SlashML
Deploy open source AI models to AWS, GCP, and Azure in minutes.
📚 Documentation »
Join our Discord
Table of Contents
About Magemaker
Magemaker is a Python tool that simplifies the process of deploying an open source AI model to your own cloud. Instead of spending hours digging through documentation, Magemaker lets you deploy Hugging Face models directly to AWS SageMaker, Google Cloud Vertex AI, or Azure Machine Learning.
Getting Started
To get a local copy up and running follow these simple steps.
Prerequisites
- Python 3.11+ (except 3.12)
- Cloud provider account(s):
- AWS for SageMaker
- GCP for Vertex AI
- Azure for Azure ML
- Cloud CLI tools:
- AWS CLI (optional)s
- Google Cloud SDK for GCP
- Azure CLI for Azure
- Hugging Face account (for access to models)
Installing the package
pip install magemaker
Run it by simply doing the following:
magemaker
The first time you run this command, it will ask you for a cloud provider flag. You can specify it using magemaker --cloud gcp. The possible options for cloud provider flags are gcp|aws|azure|all, where all will configure all providers. If this is your first time running it, it will take some time to configure it. You'll be guided through setting up your chosen cloud provider(s).
Using Magemaker
Deploying models from dropdown
When you run magemaker command it will give you an interactive menu to deploy models. You can choose from a dropdown of models to deploy.
Deploy using a yaml file
We recommend deploying through a yaml file for reproducibility and IAC. Deploy via YAML files by passing the --deploy option:
magemaker --deploy .magemaker_config/model-config.yaml
Example YAML files for deploying facebook/opt-125m:
AWS (SageMaker):
deployment: !Deployment
destination: aws
endpoint_name: facebook--opt-125m
instance_count: 1
instance_type: ml.m5.xlarge
models:
- !Model
id: facebook/opt-125m
source: huggingface
task: text-generation
GCP (Vertex AI):
deployment: !Deployment
destination: gcp
endpoint_name: test-endpoint-12
accelerator_count: 1
instance_type: g2-standard-12
accelerator_type: NVIDIA_L4
models:
- !Model
id: facebook/opt-125m
source: huggingface
Azure ML:
deployment: !Deployment
destination: azure
endpoint_name: facebook--opt-125m
instance_count: 1
instance_type: Standard_DS3_v2
models:
- !Model
id: facebook/opt-125m
source: huggingface
task: text-generation
Deactivating models
⚠️ Any model endpoints you spin up will run continuously unless you deactivate them! Make sure to delete endpoints you're no longer using to avoid unnecessary charges.
What we're working on next
- More robust error handling for various edge cases
- Verbose logging
- Enabling / disabling autoscaling
- Enhanced multi-cloud support features
Known issues
- Querying within Magemaker currently only works with text-based models
- Deleting a model is not instant, it may show up briefly after deletion
- Deploying the same model within the same minute will break
License
Distributed under the Apache 2.0 License. See LICENSE for more information.
Contact
You can reach us through:
- Email: support@slashml.com
- Discord: Join our community
- Documentation: magemaker.slashml.com
We'd love to hear from you! We're excited to learn how we can make this more valuable for the community and welcome any and all feedback and suggestions.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file magemaker-0.1.8.tar.gz.
File metadata
- Download URL: magemaker-0.1.8.tar.gz
- Upload date:
- Size: 35.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fcb286f91d44307ba01f58cf7d9cf8d612d7a8e6f8b80606821ede8f7ba43387
|
|
| MD5 |
cceeafbf1acfdbe7db0bd61329a5bb33
|
|
| BLAKE2b-256 |
fe64f9f7793fff99d128d00652b57003972c72788f9a92ca568a74864af76941
|
File details
Details for the file magemaker-0.1.8-py3-none-any.whl.
File metadata
- Download URL: magemaker-0.1.8-py3-none-any.whl
- Upload date:
- Size: 47.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2a95cbb27f3e7015c6953a8fbc77382ded73bf93316e3962d68c897c2d6261e
|
|
| MD5 |
e2b13245be9d52d537a031703c7d00b8
|
|
| BLAKE2b-256 |
d99672c3a18732d2dd41619d4d38c8f47c1208435d534c77bbf62f5ec98f1a59
|