Skip to content

support

Helpers for integrating callbacks into learners.

CallbackMixin

Mixin to add callback support to learners.

create_callback_manager(callbacks)

Create a CallbackManager from supported callback inputs.

Parameters:

Name Type Description Default
callbacks list[LearnerCallback] | LearnerCallback | None

Callbacks to manage. Can be: - None: Uses no callbacks - Single callback: Wraps in a list - List of callbacks: Uses directly

required

Returns:

Type Description
CallbackManager

CallbackManager instance.

Source code in src/flowcean/core/callbacks/support.py
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
def create_callback_manager(
    callbacks: list[LearnerCallback] | LearnerCallback | None,
) -> CallbackManager:
    """Create a CallbackManager from supported callback inputs.

    Args:
        callbacks: Callbacks to manage. Can be:
            - None: Uses no callbacks
            - Single callback: Wraps in a list
            - List of callbacks: Uses directly

    Returns:
        CallbackManager instance.
    """
    if callbacks is None:
        return CallbackManager([])
    if isinstance(callbacks, list):
        return CallbackManager(callbacks)
    return CallbackManager([callbacks])

get_default_callbacks()

Return the default callbacks for learners.

Returns:

Type Description
list[LearnerCallback]

An empty list so learners stay silent unless callbacks are provided.

Source code in src/flowcean/core/callbacks/support.py
32
33
34
35
36
37
38
def get_default_callbacks() -> list[LearnerCallback]:
    """Return the default callbacks for learners.

    Returns:
        An empty list so learners stay silent unless callbacks are provided.
    """
    return []