{ "info": { "author": "SF-Zhou", "author_email": "sfzhou.scut@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# torch-model-state [![Build Status](https://travis-ci.com/FebruaryBreeze/torch-model-state.svg?branch=master)](https://travis-ci.com/FebruaryBreeze/torch-model-state) [![codecov](https://codecov.io/gh/FebruaryBreeze/torch-model-state/branch/master/graph/badge.svg)](https://codecov.io/gh/FebruaryBreeze/torch-model-state) [![PyPI version](https://badge.fury.io/py/torch-model-state.svg)](https://pypi.org/project/torch-model-state/)\n\nPyTorch Model State Save & Load.\n\n## Installation\n\nNeed Python 3.6+.\n\n```bash\npip install torch-model-state\n```\n\n## Usage\n\nPython:\n\n```python\nimport box\nimport torch_model_state\nfrom torch.optim import SGD\n\nconfig = {\n 'type': 'MobileNetV2' # need install torch-basic-models\n}\nmodel = box.factory(config=config, tag='model')\noptimizer = SGD(model.parameters(), lr=0.1)\n\nstate = torch_model_state.to_state(model=model, config=config, optimizers=[optimizer])\ntorch_model_state.save_state_file(state=state, file_path='checkpoint.sf')\n\nstate = torch_model_state.load_state_file(file_path='checkpoint.sf', device='cpu')\ntorch_model_state.from_state(state, model, [optimizer], device='cpu')\n```\n\nLoad from State File (.sf) directly:\n\n```python\nimport torch_model_state\n\nmodel = torch_model_state.load_model_from_state(file_path='checkpoint.sf', device='cpu')\n```\n\nCLI:\n\n```bash\n# show help\ntorch-model-state -h\n#> usage: torch-model-state [-h] [--load_model] [--extra_import EXTRA_IMPORT]\n#> [--device DEVICE]\n#> state_file\n#>\n#> Viewer of PyTorch State File [.sf]\n#>\n#> positional arguments:\n#> state_file path of PyTorch state file\n#>\n#> optional arguments:\n#> -h, --help show this help message and exit\n#> --load_model load model and show\n#> --extra_import EXTRA_IMPORT\n#> import extra models\n#> --device DEVICE load device, cpu in default\n\n# view basic info of state file\ntorch-model-state checkpoint.sf\n#> {\n#> \"config\": {\n#> \"type\": \"MobileNetV2\"\n#> },\n#> \"info\": null,\n#> \"timestamp\": \"2019-04-27 22:42:55.345000\"\n#> }\n\n# view & load Model\ntorch-model-state checkpoint.sf --load_model\n#> {\n#> \"config\": {\n#> \"type\": \"MobileNetV2\"\n#> },\n#> \"info\": null,\n#> \"timestamp\": \"2019-04-27 22:42:55.345000\"\n#> }\n#> MobileNetV2(\n#> (blocks): Sequential(\n#> (0): Sequential(\n#> (0): Conv2d(3, 32, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n#> (1): BatchNorm2d(32, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n#> (2): InplaceReLU6(inplace)\n#> )\n#> ...\n\n# export to ONNX\ntorch-model-state checkpoint.sf --export_onnx checkpoint.onnx\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/FebruaryBreeze/torch-model-state", "keywords": "PyTorch Model State", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "torch-model-state", "package_url": "https://pypi.org/project/torch-model-state/", "platform": "", "project_url": "https://pypi.org/project/torch-model-state/", "project_urls": { "Homepage": "https://github.com/FebruaryBreeze/torch-model-state" }, "release_url": "https://pypi.org/project/torch-model-state/0.0.9/", "requires_dist": null, "requires_python": ">=3.6.0", "summary": "PyTorch Model State Save & Load", "version": "0.0.9" }, "last_serial": 5438689, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "23985de568e68e606bb144d7a870ef1c", "sha256": "674bff255c78f04bfd31f4b29b4e38b749b31ac958b5ade0fe5e924e708acc53" }, "downloads": -1, "filename": "torch-model-state-0.0.1.tar.gz", "has_sig": false, "md5_digest": "23985de568e68e606bb144d7a870ef1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2899, "upload_time": "2019-04-10T10:41:02", "url": "https://files.pythonhosted.org/packages/07/84/b8aab2ae5063a431ceebae0def2200af7f3a90d84ed5d81e9112ac089935/torch-model-state-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "9e0237520ca2a3254170d68f4e547c86", "sha256": "05a1049e42b1f82bd7aa778385a9dc1aca1747eee91c82ab63af4a37e84ca43d" }, "downloads": -1, "filename": "torch-model-state-0.0.2.tar.gz", "has_sig": false, "md5_digest": "9e0237520ca2a3254170d68f4e547c86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4449, "upload_time": "2019-04-27T14:49:11", "url": "https://files.pythonhosted.org/packages/14/87/3bcc0941206f19bda81a1bf70b571696789a502e01d371674e390636f718/torch-model-state-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "05ae403118d2849954e39d4b8f14d946", "sha256": "50e6d3665e60b8aa9e2523bcfefda069d14923313060c4c0db0d673319c1d939" }, "downloads": -1, "filename": "torch-model-state-0.0.3.tar.gz", "has_sig": false, "md5_digest": "05ae403118d2849954e39d4b8f14d946", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3418, "upload_time": "2019-04-30T12:40:09", "url": "https://files.pythonhosted.org/packages/85/05/d44c36eeecd20833c8502601bb303a4668a4034604a15dfb7ccb1d1990bc/torch-model-state-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "2a8b77bce9b7694787662064cc42304f", "sha256": "7918cab2abd894175188e9599db0399f93fede1337da11c6ec85cac5ad89b8d1" }, "downloads": -1, "filename": "torch-model-state-0.0.4.tar.gz", "has_sig": false, "md5_digest": "2a8b77bce9b7694787662064cc42304f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3592, "upload_time": "2019-05-10T02:11:07", "url": "https://files.pythonhosted.org/packages/8a/73/62adad1c63edc0ed347f17cde6d0ec85cb3083de0d8f9b21e337f0f41771/torch-model-state-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "5db7189fe68dddf316207790494789c9", "sha256": "e3a2853f56d3ef2efc7261cfad5a79ecd082031541ef3695fa02799b3bf019e1" }, "downloads": -1, "filename": "torch-model-state-0.0.5.tar.gz", "has_sig": false, "md5_digest": "5db7189fe68dddf316207790494789c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3627, "upload_time": "2019-05-10T09:39:26", "url": "https://files.pythonhosted.org/packages/52/93/541847f9fce624bb3ca7d9bb8fbe50c3688a8a49fef9845b78859f4c4d2e/torch-model-state-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "4ad071f6541e80620c733ebd5a66b6c8", "sha256": "4b7201c92fee60cdca3e9bd44cce034d9b77369e979b757b7f4e60ab6334b5b7" }, "downloads": -1, "filename": "torch-model-state-0.0.6.tar.gz", "has_sig": false, "md5_digest": "4ad071f6541e80620c733ebd5a66b6c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3790, "upload_time": "2019-05-12T14:45:44", "url": "https://files.pythonhosted.org/packages/73/0d/5ef4d6589d5d77193309db93ba0b92b8664543d4e6446dacd675b9002a7e/torch-model-state-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "e9a98ca2d421dd7c4cbfb8d5bf033546", "sha256": "50e1986f0dcf27f6f5949eaad1cd2424428ea597b0ccc691619f63a03ac48d6d" }, "downloads": -1, "filename": "torch-model-state-0.0.7.tar.gz", "has_sig": false, "md5_digest": "e9a98ca2d421dd7c4cbfb8d5bf033546", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3797, "upload_time": "2019-05-24T12:17:56", "url": "https://files.pythonhosted.org/packages/1a/ac/09cc64fecbc2794100307d981a4a610f1bbbb0d16d27010cae5203f8c1dc/torch-model-state-0.0.7.tar.gz" } ], "0.0.7.post1": [ { "comment_text": "", "digests": { "md5": "c3b0e426d320107ab2ed197dd48b75a4", "sha256": "81f2aef95ae0263ab2b2d0e006071dc536f970cd5f61988db8ab062fdbc7e3e3" }, "downloads": -1, "filename": "torch-model-state-0.0.7.post1.tar.gz", "has_sig": false, "md5_digest": "c3b0e426d320107ab2ed197dd48b75a4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 5537, "upload_time": "2019-06-09T13:08:28", "url": "https://files.pythonhosted.org/packages/8a/03/bef4dccb2b08a1e2bf8b203089f2f6b670608d615c7e6d3afc6b603a62e3/torch-model-state-0.0.7.post1.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "c17ee820fe17c55ba64bec18f1a2042f", "sha256": "9cdd6ad7c37d82301a671d22f883df0d2276880637ed3b2323a32ddfdd20882c" }, "downloads": -1, "filename": "torch-model-state-0.0.8.tar.gz", "has_sig": false, "md5_digest": "c17ee820fe17c55ba64bec18f1a2042f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 5540, "upload_time": "2019-06-10T03:52:09", "url": "https://files.pythonhosted.org/packages/ca/84/6285d21c39d54754be76f09143d48923e5c3d1f0f5a7ae0b1eb6d0663c94/torch-model-state-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "3a74b62c17fed2b5be5fa867bb70563a", "sha256": "1cfd2fe60183138384c0116b58d0548873c63ff996b94d8e3052189b622a462d" }, "downloads": -1, "filename": "torch-model-state-0.0.9.tar.gz", "has_sig": false, "md5_digest": "3a74b62c17fed2b5be5fa867bb70563a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 5649, "upload_time": "2019-06-24T02:25:13", "url": "https://files.pythonhosted.org/packages/6b/05/7212f26d576e7b3fc4b1ce9f86b43793d604d6049eed0be5ba2004cb2d2d/torch-model-state-0.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3a74b62c17fed2b5be5fa867bb70563a", "sha256": "1cfd2fe60183138384c0116b58d0548873c63ff996b94d8e3052189b622a462d" }, "downloads": -1, "filename": "torch-model-state-0.0.9.tar.gz", "has_sig": false, "md5_digest": "3a74b62c17fed2b5be5fa867bb70563a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 5649, "upload_time": "2019-06-24T02:25:13", "url": "https://files.pythonhosted.org/packages/6b/05/7212f26d576e7b3fc4b1ce9f86b43793d604d6049eed0be5ba2004cb2d2d/torch-model-state-0.0.9.tar.gz" } ] }