Penelope v0.3.0 Penelope.ML.Registry

The ML pipeline registry decouples the names of pipeline components from their module names, so that modules can be refactored without breaking stored models. The built-in Penelope components are registered automatically, but custom components can be added via the register function.

Inverse lookups are also supported for exporting compiled models. The registry falls back on module atoms for unregistered components.

Link to this section Summary

Functions

performs a module->name reverse lookup

locates a pipeline component module from its name, falling back on the module itself

adds a new alias for a pipeline component to the registry

starts the registry process

Link to this section Functions

Link to this function invert(module)
invert(module :: atom()) :: String.t()

performs a module->name reverse lookup

Link to this function lookup(name)
lookup(name :: String.t() | atom()) :: atom()

locates a pipeline component module from its name, falling back on the module itself

Link to this function register(name, module)
register(name :: String.t() | atom(), module :: atom()) :: :ok

adds a new alias for a pipeline component to the registry

Link to this function start_link()
start_link() :: {:ok, pid()} | {:error, any()}

starts the registry process