modalities.logging_broker package

Subpackages

Submodules

modalities.logging_broker.message_broker module

class modalities.logging_broker.message_broker.MessageBroker[source]

Bases: MessageBrokerIF

The MessageBroker sends notifications to its subscribers.

add_subscriber(subscription, subscriber)[source]

Adds a single subscriber.

Parameters:
distribute_message(message)[source]

Distributes message to all subscribers.

Parameters:

message (Message)

class modalities.logging_broker.message_broker.MessageBrokerIF[source]

Bases: ABC

Interface for message broker objects.

abstract add_subscriber(subscription, subscriber)[source]
Parameters:
abstract distribute_message(message)[source]
Parameters:

message (Message)

modalities.logging_broker.messages module

class modalities.logging_broker.messages.ExperimentStatus(value)[source]

Bases: Enum

An enumeration.

EVALUATION = 'EVALUATION'
TRAIN = 'TRAIN'
class modalities.logging_broker.messages.Message(message_type, payload, global_rank=0, local_rank=0)[source]

Bases: Generic[T]

An object representing a message.

Parameters:
global_rank: int = 0
local_rank: int = 0
message_type: MessageTypes
payload: TypeVar(T)
class modalities.logging_broker.messages.MessageTypes(value)[source]

Bases: Enum

An enumeration.

BATCH_PROGRESS_UPDATE = 'PROGRESS_UPDATE'
ERROR_MESSAGE = 'ERROR_MESSAGE'
EVALUATION_RESULT = 'EVALUATION_RESULT'
HIGH_LEVEL_PROGRESS_UPDATE = 'HIGH_LEVEL_PROGRESS_UPDATE'
class modalities.logging_broker.messages.ProgressUpdate(num_steps_done, experiment_status, dataloader_tag)[source]

Bases: object

Object holding the state of the current batch / step computation progress.

Parameters:
dataloader_tag: str
experiment_status: ExperimentStatus
num_steps_done: int

modalities.logging_broker.publisher module

class modalities.logging_broker.publisher.MessagePublisher(message_broker, global_rank, local_rank)[source]

Bases: MessagePublisherIF[T]

The MessagePublisher sends messages through a message broker.

Parameters:
publish_message(payload, message_type)[source]

Publish a message through the message broker.

Parameters:
class modalities.logging_broker.publisher.MessagePublisherIF[source]

Bases: ABC, Generic[T]

abstract publish_message(payload, message_type)[source]
Parameters:

modalities.logging_broker.subscriber module

class modalities.logging_broker.subscriber.MessageSubscriberIF[source]

Bases: ABC, Generic[T]

Interface for message subscribers.

abstract consume_dict(mesasge_dict)[source]
Parameters:

mesasge_dict (dict[str, Any])

abstract consume_message(message)[source]
Parameters:

message (Message[T])

Module contents