Module core.backends.base_backend

Definition of a the base Backend

Classes

BaseBackend(**kwargs) : Base class for all ZenML backends.

Every ZenML pipeline runs in backends. Override this base class to define
your own custom Pipeline backend.

There are three types of backends available in ZenML: Orchestration
backends, processing backends and training backends. Each of them serve
different purposes in different stages of the pipeline.
An orchestration backend is useful for scheduling and executing the
different pipeline components.

A dedicated processing backend can be used to efficiently process large
amounts of incoming data in parallel, potentially distributed across
multiple machines. This can happen on local processing backends as well
as cloud-based variants like Google Cloud Dataflow. More powerful machines
with higher core counts and clock speeds can be leveraged to increase
processing throughput significantly.

A training backend can be used to efficiently train a machine learning
model on large amounts of data. Since most common machine learning models
leverage mainly linear algebra operations under the hood, they can
potentially benefit a lot from dedicated training hardware like Graphics
Processing Units (GPUs) or application-specific integrated circuits
(ASICs). Again, local training backends or cloud-based training backends
like Google Cloud AI Platform (GCAIP) with or without GPU/ASIC support
can be used.

### Class variables

`BACKEND_KEY`
:

`BACKEND_TYPE`
:

### Static methods

`from_config(backend_key: str, config: Dict)`
:   Convert from ZenML config dict to ZenML Backend object.
    
    Args:
        backend_key: the key of the backend
        config: a ZenML config in dict-form (probably loaded from YAML)

### Methods

`to_config(self)`
:   Converts Backend to ZenML config block.