ebonite.build.provider package

class ebonite.build.provider.ProviderBase[source]

Bases: object

Base class for providers

get_sources() → Dict[str, str][source]

Abstract method for text files

get_artifacts() → ebonite.core.objects.artifacts.ArtifactCollection[source]

Abstract method for binaries

get_env() → Dict[str, str][source]

Abstract method for environment variables

get_options() → Dict[str, str][source]

Abstract method for additional build options

class ebonite.build.provider.PythonProvider(server: ebonite.runtime.server.base.Server, loader: ebonite.runtime.interface.base.InterfaceLoader, debug: bool = False)[source]

Bases: ebonite.build.provider.base.ProviderBase

Provider for python-based builds. Includes python version and requirements

Parameters:
  • server – Server instance to build with
  • loader – InterfaceLoader instance to build with
  • debug – Whether to run image in debug mode
get_python_version()[source]

Returns current python version

get_requirements() → ebonite.core.objects.requirements.Requirements[source]

Abstract method for python requirements

get_env() → Dict[str, str][source]

Get env variables for image

get_options() → Dict[str, str][source]

Abstract method for additional build options

class ebonite.build.provider.MLModelProvider(model: ebonite.core.objects.core.Model, server: ebonite.runtime.server.base.Server, debug: bool = False)[source]

Bases: ebonite.build.provider.base.PythonProvider

Provider to build service from Model object

Parameters:
  • model – Model instance to build from
  • server – Server instance to build with
  • debug – Whether to run image in debug mode
get_requirements() → ebonite.core.objects.requirements.Requirements[source]

Returns union of model, server and loader requirements

get_sources()[source]

Returns model metadata file and sources of custom modules from requirements

get_artifacts() → ebonite.core.objects.artifacts.ArtifactCollection[source]

Return model binaries

get_python_version()[source]
Returns:version of python that produced model
class ebonite.build.provider.MLModelMultiProvider(models: List[ebonite.core.objects.core.Model], server: ebonite.runtime.server.base.Server, debug: bool = False)[source]

Bases: ebonite.build.provider.ml_model.MLModelProvider

Provider to put multiple models in one service

Parameters:
  • models – List of Model instances
  • server – Server instance to build with
  • debug – Debug for instance
get_requirements()[source]

Returns union of server, loader and all models requirements

get_sources()[source]

Returns models meta file and custom requirements

get_artifacts() → ebonite.core.objects.artifacts.ArtifactCollection[source]

Returns binaries of models artifacts

get_python_version()[source]
Returns:version of python that produced model
class ebonite.build.provider.PipelineProvider(pipeline: ebonite.core.objects.core.Pipeline, server: ebonite.runtime.server.base.Server, debug: bool = False)[source]

Bases: ebonite.build.provider.base.PythonProvider

Provider to build service from Pipeline object

Parameters:
  • pipeline – Pipeline instance to build from
  • server – Server instance to build with
  • debug – Whether to run image in debug mode
get_requirements() → ebonite.core.objects.requirements.Requirements[source]

Returns union of model, server and loader requirements

get_sources()[source]

Returns model metadata file and sources of custom modules from requirements

get_artifacts() → ebonite.core.objects.artifacts.ArtifactCollection[source]

Return model binaries

get_python_version()[source]
Returns:version of python that produced model