← all repositories
stared/livelossplot

Live loss plots for the Jupyter-impatient

A lightweight callback that draws training curves in real time so you don't babysit models blindfolded.

1.3k stars Python LLMOps · EvalML Frameworks
livelossplot
Velocity · 7d
+0.4
★ / day
Trend
steady
star history

What it does

livelossplot is a Python package that streams live training metrics—loss, accuracy, whatever you log—into updating plots inside Jupyter Notebook. It wraps common deep-learning frameworks (Keras, PyTorch via Ignite/Poutyne, and others) with drop-in callbacks, plus a bare PlotLosses API for anything else.

The interesting bit

The README openly admits TensorBoard exists and is “serious”; this tool deliberately targets the opposite use case—quick experiments, teaching, and small models where spinning up a whole logging server feels like bringing a forklift to move a coffee mug. It also outputs to Bokeh or plain Matplotlib, and can mirror to TensorBoard if you later change your mind.

Key highlights

  • Drop-in callbacks: PlotLossesKeras, PlotLossesIgnite, PlotLossesPoutyne, plus a generic PlotLosses for manual updates
  • Multiple backends: Matplotlib, Bokeh, or extrema-printed to stdout; can combine outputs (e.g. MatplotlibPlot() + TensorboardLogger())
  • Python 3.10+, installable via pip or uv, with ephemeral-script support via uv run --with livelossplot
  • Colab-ready examples for every framework; started as a popular gist and grew into a maintained package
  • Openly solicits small contributions—docstrings count

Caveats

  • The project itself positions itself as not for production-scale training; the README nudges serious users toward TensorBoard
  • Some output modules (Bokeh especially) require opening notebooks in Colab to see plots, per the README note

Verdict

Grab this if you teach deep learning, prototype in notebooks, or just want immediate visual feedback without infrastructure. Skip it if you’re already running TensorBoard in a persistent training pipeline and don’t look back.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.