Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ We've put a lot of thought into what our users — data scientists, ML engineers
* Somewhere to deploy and serve models in a way that scales with your application needs.
* The ability to monitor models for things like drift and bias.

Matcha is still in alpha release, and we don't support everything on that list yet. We support experiment tracking, training, and deployment, with plans to add data versioning and monitoring later. We very much welcome input on our roadmap from our early users.
Matcha is still in alpha release, and we don't support everything on that list yet. We support experiment tracking, training, data version control and deployment, with plans to add monitoring later. We very much welcome input on our roadmap from our early users.

## 👏 Contributing

Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ We've put a lot of thought into what our users — data scientists, ML engineers
* Somewhere to deploy and serve models in a way that scales with your application needs.
* The ability to monitor models for things like drift and bias.

Matcha is still in alpha release, and we don't support everything on that list yet. We support experiment tracking, training, and deployment, with plans to add data versioning and monitoring later. We very much welcome input on our roadmap from our early users.
Matcha is still in alpha release, and we don't support everything on that list yet. We support experiment tracking, training, data versioning and deployment, with plans to add monitoring later. We very much welcome input on our roadmap from our early users.

# Who maintains Matcha?

Expand Down
63 changes: 63 additions & 0 deletions docs/resource-stacks.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,4 +49,67 @@ $ matcha stack set llm

If no stack is set Matcha will use the 'default' stack.

### See what is in your current stack

To list the modules that are in your current stack run:

```bash
$ matcha stack list


The current Matcha stack contains::

1. Azure Kubernetes Service (AKS): A kubernetes cluster
2. Azure Container Registry: A container registry for storing docker images
3. ZenServer: A zenml server required for remote orchestration and a storage container
4. MLflow: An experiment tracker backed by a storage container
5. Data Version Control: A storage container to hold data versions
6. Seldon Core: A framework for model deployment on top of a kubernetes cluster
7. Chroma: A vector database
```

## Custom stacks

Need an additional module or to remove one? The custom stack is for you.

You can start by adding a module to your stack as follows:

```bash
$ matcha stack add experiment_tracker mlflow
```

```bash
$ matcha stack add <module_type> <flavor>
```

If you want to adapt one of the stacks above you can do this by first setting your stack:

```bash
$ matcha stack set llm
```

then adding/removing a module from the stack

```bash
$ matcha stack remove orchestrator
```

and then Matcha provision the specified resources:

```bash
$ matcha provision
```

### Available Modules

| Module Type | Flavors | Example Usage (add) | Example Usage (remove) |
|----------------------|---------|----------------------------------------------|---------------------------------------|
| orchestrator | zenml | `matcha stack add orchestrator zenml` | `matcha stack remove orchestrator` |
| experiment_tracker | mlflow | `matcha stack add experiment_tracker mflow` | `matcha stack remove orchestrator` |
| data_version_control | dvc | `matcha stack add data_version_control mflow`| `matcha stack remove data_version_control`|
| deployer | seldon | `matcha stack add deployer seldon` | `matcha stack remove deployer` |
| vector_database | chroma | `matcha stack add vector_database chroma` | `matcha stack remove vector_database` |

> Note: Every stack will automatically contain Azure Kubernetes Service, Azure Container Registry and a state storage bucket. These components cannot be removed as they are required for Matcha to run correctly.

See the [API documentation](references.md) for more information.
6 changes: 6 additions & 0 deletions src/matcha_ml/core/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,9 @@ def _create_stack_component(stack_type: StackType) -> MatchaConfigComponent:
def stack_add(module_type: str, module_flavor: str) -> None:
"""A function for adding a module by name to the stack.

Examples:
>>> stack_add(module_type='experiment_tracker', module_flavor='mlflow')

Args:
module_type (str): The type of the module to add e.g. 'experiment_tracker'.
module_flavor (str): The flavor of module to add e.g. 'mlflow'.
Expand Down Expand Up @@ -432,6 +435,9 @@ def stack_add(module_type: str, module_flavor: str) -> None:
def stack_remove(module_type: str) -> None:
"""A function for removing a module by name in the stack.

Examples:
>>> stack_remove(module_type='experiment_tracker')

Args:
module_type (str): The name of the module to remove.

Expand Down