composer.core.types

This is our reference for common types used throughout our library.

Tensor Types

class composer.core.types.Tensor

Alias for torch.Tensor

class composer.core.types.Tensors

Commonly used to represent e.g. a set of inputs, where it is unclear whether each input has its own tensor, or if all the inputs are concatenated in a single tensor.

Type: torch.Tensor, tuple of torch.Tensors, or list of torch.Tensors

Batch Types

A batch of data can be represented in several formats, depending on the application.

class composer.core.types.Batch

Union type covering the most common representations of batches.

Type: BatchPair, BatchDict, or torch.Tensor

class composer.core.types.BatchPair

Commonly used in computer vision tasks. The object is assumed to contain exactly two elements, where the first represents inputs and the second represents targets.

Type: List of Tensors

class composer.core.types.BatchDict

Commonly used in natural language processing tasks.

Type: str to Tensor dict

We provide helper functions to cast batches in situations where the batch type is known.

composer.core.types.as_batch_dict(batch)[source]
Parameters

batch (composer.core.types.Batch) –

Return type

composer.core.types.BatchDict

composer.core.types.as_batch_pair(batch)[source]
Parameters

batch (composer.core.types.Batch) –

Return type

composer.core.types.BatchPair

Dataset and Data Loader Types

class composer.core.types.Dataset[source]

Alias for torch.utils.data.Dataset[Batch]

class composer.core.types.DataLoader(*args, **kwargs)[source]

Trainer Types

class composer.core.types.Metrics

Union type covering common formats for representing metrics.

Type: Metric or MetricCollection

class composer.core.types.Optimizer[source]

Alias for torch.optim.Optimizer

class composer.core.types.Optimizers

Union type for indeterminate amounts of optimizers.

Type: Optimizer or tuple of Optimizer

class composer.core.types.Scheduler

Alias for torch.optim.lr_scheduler._LRScheduler

class composer.core.types.Schedulers

Union type for indeterminate amounts of schedulers.

Type: Scheduler or tuple of Scheduler

class composer.core.types.Scaler

Alias for torch.cuda.amp.grad_scaler.GradScaler

class composer.core.types.Model

Alias for torch.nn.Module

Miscellaneous Types

class composer.core.types.ModelParameters

Type alias for model parameters used to initialize optimizers.

Type: List of torch.Tensor or list of str to torch.Tensor dicts

class composer.core.types.JSON

JSON data.

class composer.core.types.Precision(value)[source]

Enum class for the numerical precision to be used by the model.

class composer.core.types.TPrefetchFn

Type alias for prefetch functions used for initializing dataloaders.

Type: A function that takes a Batch and returns a Batch

class composer.core.types.Serializable(*args, **kwargs)[source]

Interface for serialization; used by checkpointing.

load_state_dict(state)[source]

load_state_dict() restores the state of the object

Parameters

state (StateDict) – The state of the object, as previously returned by state_dict()

Return type

None

state_dict()[source]

state_dict() returns a dictionary representing the internal state. The returned dictionary must be pickale-able via torch.save().

Returns

StateDict – The state of the object

Return type

composer.core.types.StateDict

class composer.core.types.StateDict

Class for representing serialized data.

Type: dict with str keys.

exception composer.core.types.BreakEpochException[source]