Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -208,9 +208,15 @@ the context of Jacobian descent, it is used to reduce a Jacobian matrix into a v
used to update the parameters. In TorchJD, an `Aggregator` subclass should be a faithful
implementation of a mathematical aggregator.

> [!WARNING]
> Currently, we only accept aggregators that have the same interface as the `Aggregator` base class.
> We do not support stateful aggregators yet, so the proposed aggregators **must be immutable**.
> [!NOTE]
> We now also accept stateful aggregators, whose output depends both on the Jacobian and on some
> internal state (which can be affected for example by previous Jacobians).

> [!NOTE]
> Some aggregators may depend on something else than the Jacobian. To implement them, please add
> setters so that any extra information can be given by the user to the aggregator before it is
> actually used. For example, if your aggregator needs to take the loss values, this can be given
> at every iteration through a `set_losses` setter.

> [!NOTE]
> Before working on the implementation of a new aggregator, please contact us via an issue or a
Expand Down
Loading