{ "info": { "author": "Sherin Thomas", "author_email": "sherin@tensorwerk.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only" ], "description": "=====================================================\nml2rt - Utilities for taking ML to different runtimes\n=====================================================\n\n\nMachine learning utilities for model conversion, serialization, loading etc\n\n\n* Free software: Apache Software License 2.0\n\nInstallation\n------------\n\n::\n\n pip install ml2rt\n\n\nDocumentation\n-------------\n\nml2rt provides some convenient functions to convert, save & load machine learning models. It currently supports Tensorflow, PyTorch, Sklearn, Spark and ONNX but frameworks like xgboost, coreml are on the way.\n\nSaving Tensorflow model\n***********************\n\n.. code-block:: python\n\n import tensorflow as tf\n from ml2rt import save_tensorflow\n # train your model here\n sess = tf.Session()\n save_tensorflow(sess, path, output=['output'])\n\nSaving PyTorch model\n********************\n\n.. code-block:: python\n\n # it has to be a torchscript graph made by tracing / scripting\n from ml2rt import save_torch\n save_torch(torch_script_graph, path)\n\nSaving ONNX model\n*****************\n\n.. code-block:: python\n\n from ml2rt import save_onnx\n save_onnx(onnx_model, path)\n\nSaving sklearn model\n********************\n\n.. code-block:: python\n\n from ml2rt import save_sklearn\n prototype = np.array(some_shape, dtype=some_dtype) # Equivalent to the input of the model\n save_sklearn(sklearn_model, path, prototype=prototype)\n\n # or\n\n # some_shape has to be a tuple and some_dtype has to be a np.dtype, np.dtype.type or str object\n save_sklearn(sklearn_model, path, shape=some_shape, dtype=some_dtype)\n\n # or\n\n # some_shape has to be a tuple and some_dtype has to be a np.dtype, np.dtype.type or str object\n inital_types = utils.guess_onnx_tensortype(shape=shape, dtype=dtype)\n save_sklearn(sklearn_model, path, initial_types=initial_types)\n\nSaving sparkml model\n********************\n\n.. code-block:: python\n\n from ml2rt import save_sparkml\n prototype = np.array(some_shape, dtype=some_dtype) # Equivalent to the input of the model\n save_sparkml(spark_model, path, prototype=prototype)\n\n # or\n\n # some_shape has to be a tuple and some_dtype has to be a np.dtype, np.dtype.type or str object\n save_sparkml(spark_model, path, shape=some_shape, dtype=some_dtype)\n\n # or\n\n # some_shape has to be a tuple and some_dtype has to be a np.dtype, np.dtype.type or str object\n inital_types = utils.guess_onnx_tensortype(shape=shape, dtype=dtype)\n save_sparkml(spark_model, path, initial_types=initial_types)\n\nSklearn and sparkml models will be converted to ONNX first and then save to the disk. These models can be executed using ONNXRuntime, RedisAI etc. ONNX conversion needs to know the type of the input nodes and hence we have to pass shape & dtype or a prototype from where the utility can infer the shape & dtype or an initial_type object which is understood by the conversion utility. Frameworks like sparkml allows users to have heterogeneous inputs with more than one type. In such cases, use `guess_onnx_tensortypes` and create more than one initial_types which can be passed to save function as a list\n\n\nLoading model & script\n**********************\n\n.. code-block:: python\n\n model = ml2rt.load_model(path)\n\n script = ml2rt.load_script(script)\n\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hhsecond/ml2rt", "keywords": "ml2rt", "license": "Apache Software License 2.0", "maintainer": "", "maintainer_email": "", "name": "ml2rt", "package_url": "https://pypi.org/project/ml2rt/", "platform": "", "project_url": "https://pypi.org/project/ml2rt/", "project_urls": { "Homepage": "https://github.com/hhsecond/ml2rt" }, "release_url": "https://pypi.org/project/ml2rt/0.1.1/", "requires_dist": [ "tensorflow ; extra == 'all'", "torch ; extra == 'all'", "sklearn ; extra == 'all'", "skl2onnx ; extra == 'all'", "pandas ; extra == 'all'", "onnxmltools ; extra == 'all'", "onnxconverter-common ; extra == 'all'", "numpy ; extra == 'all'", "pyspark ; extra == 'all'", "onnx ; extra == 'all'", "onnx ; extra == 'onnx'", "torch ; extra == 'pytorch'", "sklearn ; extra == 'sklearn'", "skl2onnx ; extra == 'sklearn'", "pandas ; extra == 'sklearn'", "onnxmltools ; extra == 'sklearn'", "onnxconverter-common ; extra == 'sklearn'", "numpy ; extra == 'sklearn'", "pyspark ; extra == 'sparkml'", "onnxmltools ; extra == 'sparkml'", "onnxconverter-common ; extra == 'sparkml'", "numpy ; extra == 'sparkml'", "tensorflow ; extra == 'tensorflow'" ], "requires_python": "", "summary": "Machine learning utilities for model conversion, serialization, loading etc", "version": "0.1.1" }, "last_serial": 5549541, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "b04daaf9670267c5c6a784f3822f0020", "sha256": "497011b9e59da62754034408d750a6b4edf58b16991f6ea7aea993f80326a762" }, "downloads": -1, "filename": "ml2rt-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b04daaf9670267c5c6a784f3822f0020", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6650, "upload_time": "2019-07-18T07:40:53", "url": "https://files.pythonhosted.org/packages/dc/d6/f7c4a588bfa496374b2f91f6115331314a664770134577ed1abbc67b151a/ml2rt-0.1.1-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b04daaf9670267c5c6a784f3822f0020", "sha256": "497011b9e59da62754034408d750a6b4edf58b16991f6ea7aea993f80326a762" }, "downloads": -1, "filename": "ml2rt-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b04daaf9670267c5c6a784f3822f0020", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6650, "upload_time": "2019-07-18T07:40:53", "url": "https://files.pythonhosted.org/packages/dc/d6/f7c4a588bfa496374b2f91f6115331314a664770134577ed1abbc67b151a/ml2rt-0.1.1-py2.py3-none-any.whl" } ] }