Keep an accessible page of a model’s training curves while it trains.
Pass it to model.fit(callbacks=[...]). At the end of every every epochs it writes path again with the charts :func:plot_history draws, so a reader can open the page during a long run and reload it to hear how far the model has come. When training ends, the page is written a last time; with no path, the charts are shown in the notebook instead, if there is one.
The HTML file to keep up to date. The page is replaced in one step, so a reload never meets a half-written file. A page that cannot be written, or drawn, is warned about, and training goes on. In multi-worker training, give each worker its own path, or the callback to one.