noether.core.trackers

Submodules

Classes

BaseTracker

Base class for all experiment trackers.

NoopTracker

Dummy tracker that does nothing.

TensorboardTracker

TensorBoard tracker for logging metrics and configuration.

TrackioTracker

HuggingFace Trackio tracker.

WandBTracker

Weights and Biases tracker.

Package Contents

class noether.core.trackers.BaseTracker(metric_property_provider, path_provider)

Base class for all experiment trackers.

Initialize the BaseTracker.

Parameters:
logger
metric_property_provider
path_provider
summary: dict[str, Any]
init(accelerator, run_name, stage_name, stage_hp, run_id, output_uri)

Initialize the tracker for a specific run.

Parameters:
  • accelerator (str) – The accelerator used for training (e.g., “cpu”, “cuda”).

  • run_name (str) – The name of the run.

  • stage_name (str | None) – The stage of the run.

  • stage_hp (dict) – The hyperparameters for the run stage.

  • run_id (str) – The ID of the run.

  • output_uri (str) – The URI where the output will be stored.

Return type:

None

log(data)

Log data to the tracker.

Parameters:

data (dict[str, Any]) – The data to log. This should be a dictionary where the values are the data to log.

Return type:

None

close()

Close the file used by the tracker and save the summary.

Return type:

None

set_summary(key, value)

Set a summary value. :param key: The key for the summary value. :param value: The value to set.

Parameters:
  • key (str)

  • value (Any)

Return type:

None

update_summary(data)

Update the summary with new data.

Parameters:

data (dict) – The data to update the summary with. This should be a dictionary where the values are the data to log.

summarize_logvalues()

Summarize the log values from the entries. This method is called after the training is finished and summarizes the log values. It computes the min/max values for each log value and stores them in the summary.

Return type:

None

class noether.core.trackers.NoopTracker(metric_property_provider, path_provider)

Bases: noether.core.trackers.base.BaseTracker

Dummy tracker that does nothing.

Initialize the BaseTracker.

Parameters:
class noether.core.trackers.TensorboardTracker(tracker_config, **kwargs)

Bases: noether.core.trackers.base.BaseTracker

TensorBoard tracker for logging metrics and configuration.

Initialize the TensorboardTracker.

Parameters:
config
writer: torch.utils.tensorboard.SummaryWriter | None = None
class noether.core.trackers.TrackioTracker(tracker_config, **kwargs)

Bases: noether.core.trackers.base.BaseTracker

HuggingFace Trackio tracker.

https://github.com/gradio-app/trackio

Initialize the TrackioTracker. :param tracker_config: Configuration for the TrackioTracker. See TrackioTrackerSchema for available options including project and space_id. :param **kwargs: Additional keyword arguments passed to the parent class.

Parameters:

tracker_config (noether.core.schemas.trackers.TrackioTrackerSchema)

config
class noether.core.trackers.WandBTracker(tracker_config, **kwargs)

Bases: noether.core.trackers.base.BaseTracker

Weights and Biases tracker.

Example config:

Parameters:
MODES = ['disabled', 'online', 'offline']
mode
entity
project