Module

pycaret.logging.memory

In-memory + optional file-backed logger.

The default logger when a user does Experiment(log=True). Stores every event in a list so the UI / notebook can replay it afterwards, and optionally tees each event to a JSON-lines file.

Cheap, thread-safe enough for single-process use (the event list uses a list append which is atomic in CPython), and dependency-free.

Classes 1

MemoryLogger

extends BaseLogger

Captures emitted events in an in-memory list and (optionally) a JSONL file.

Parameters
----------
experiment_id : str, optional
    Stable id stamped on every event for correlating multi-experiment runs.
file : str | Path, optional
    When provided, each event is also appended as a JSON line to this path.
    The file is flushed on every write so a UI tailing it sees progress.

Usage
-----
>>> logger = MemoryLogger()
>>> exp = ClassificationExperiment(target="y", logger=logger).fit(data)
>>> exp.compare_models()
>>> logger.events          # list of Event dataclasses
>>> logger.as_jsonl()      # "

"-joined JSONL string

Attributes
  • events: list[Event]
Methods
emit(self, event: Event) -> None
clear(self) -> None
as_jsonl(self) -> str