{"id":17695582,"url":"https://github.com/adamvvu/tf_compactprogbar","last_synced_at":"2026-05-09T17:34:27.744Z","repository":{"id":258954455,"uuid":"875942379","full_name":"adamvvu/tf_compactprogbar","owner":"adamvvu","description":"A simple and compact one-line progress bar for TensorFlow 2 Keras.","archived":false,"fork":false,"pushed_at":"2024-12-12T00:18:38.000Z","size":131,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-06T05:18:10.659Z","etag":null,"topics":["keras","keras-callback","tensorflow","tensorflow-addons","tensorflow2"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adamvvu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-21T06:19:18.000Z","updated_at":"2024-12-12T00:18:41.000Z","dependencies_parsed_at":"2024-10-24T11:10:48.209Z","dependency_job_id":null,"html_url":"https://github.com/adamvvu/tf_compactprogbar","commit_stats":{"total_commits":3,"total_committers":1,"mean_commits":3.0,"dds":0.0,"last_synced_commit":"28cd4bc19e97201bd9c57246fd01dd77ce94a6d7"},"previous_names":["adamvvu/tf_compactprogbar"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamvvu%2Ftf_compactprogbar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamvvu%2Ftf_compactprogbar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamvvu%2Ftf_compactprogbar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adamvvu%2Ftf_compactprogbar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adamvvu","download_url":"https://codeload.github.com/adamvvu/tf_compactprogbar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246395572,"owners_count":20770240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["keras","keras-callback","tensorflow","tensorflow-addons","tensorflow2"],"created_at":"2024-10-24T14:06:05.462Z","updated_at":"2026-05-09T17:34:22.697Z","avatar_url":"https://github.com/adamvvu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build](https://img.shields.io/github/actions/workflow/status/adamvvu/tf_compactprogbar/tf_compactprogbar_tests.yml?style=for-the-badge)](https://github.com/adamvvu/tf_compactprogbar/actions/workflows/tf_compactprogbar_tests.yml)\n[![PyPi](https://img.shields.io/pypi/v/tf_compactprogbar?style=for-the-badge)](https://pypi.org/project/tf-compactprogbar/)\n[![Downloads](https://img.shields.io/pypi/dm/tf_compactprogbar?style=for-the-badge)](https://pypi.org/project/tf-compactprogbar/)\n[![License](https://img.shields.io/badge/license-MIT-green?style=for-the-badge)](https://github.com/adamvvu/tf_compactprogbar/blob/master/LICENSE)\n[![Binder](https://img.shields.io/badge/DEMO-binder-blue?style=for-the-badge)](https://mybinder.org/v2/gh/adamvvu/tf_compactprogbar/HEAD?labpath=examples%2Fexample.ipynb)\n\nA simple and compact one-line progress bar for TensorFlow 2 Keras.\n\n---\n\n## TensorFlow Compact Progress Bar\n\nExisting ways of monitoring training of TensorFlow Keras models either display nothing (`verbose=0`), one progress bar per epoch (`verbose=1`), or prints one line of metrics per epoch (`verbose=2`). When training for thousands of epochs, this often leads to bloated log files or crashed/sluggish Jupyter environments when working interactively.\n\nThis library provides a compact progress bar that simply displays the overall training progress by epoch. There are also a few small additional features for convenience, such as excluding certain metrics to avoid excessive clutter.\n\n**Notebook mode**\n![notebook_demo](assets/compact.png)\n\n**Console mode**\n![console_demo](assets/compact_noninteractive.png)\n\n### Getting Started\n\nInstall from PyPi:\n\n`$ pip install tf-compactprogbar`\n\n#### Dependencies\n\n- `tensorflow \u003e= 2` *(TF 1 likely works, but untested)*\n- `tqdm`\n- `python \u003e= 3.7`\n- `ipywidgets` *(Optional)*\n- `jupyterlab_widgets` *(Optional)*\n\nFor nice looking Jupyter/IPython progress bars, make sure you have `ipywidgets` and `jupyterlab_widgets` if you are on Jupyter Lab.\n\n#### Usage\n\nTo use it, disable the built-in logging (`verbose=0`) and pass it in as a Callback:\n```\nfrom tf_compactprogbar import CompactProgressBar\n\nprogBar = CompactProgressBar()\nhistory = model.fit(X_train, Y_train,\n                    epochs=200,\n                    batch_size=100,\n                    verbose=0,\n                    validation_data = (X_test, Y_test),\n                    callbacks=[progBar])\n```\n\n\n### Documentation\n\n```\n# Call signature\nCompactProgressBar(show_best=True, best_as_max=[], exclude=[], notebook='auto', epochs=None)\n\nArgs:\n        - show_best    (bool)      Display best metrics. Default: True\n        - best_as_max  (list)      Metrics which should be maximized (see note)\n        - exclude      (list)      Metrics which should be excluded from display\n        - notebook     (str/bool)  Whether to use IPython/Jupyter widget or console. Default: 'auto'\n        - epochs       (int)       Optional total number of epochs. Default is inferred from `.fit`.\n        \nNote: When using `show_best`, by default the \"best\" metric is the minimum. Pass\nin the metric name to `best_as_max` to change this behavior.\n```\n\nIf there are any issues in Jupyter, please see the [tqdm Issues](https://github.com/tqdm/tqdm/issues) page for help or disable notebook mode with `notebook=False`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamvvu%2Ftf_compactprogbar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadamvvu%2Ftf_compactprogbar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadamvvu%2Ftf_compactprogbar/lists"}