Documentation, License files 36/12236/2
authorSANDEEP KUMAR JAISAWAL <s.jaisawal@samsung.com>
Tue, 12 Dec 2023 08:49:00 +0000 (14:19 +0530)
committerSANDEEP KUMAR JAISAWAL <s.jaisawal@samsung.com>
Tue, 12 Dec 2023 10:27:03 +0000 (15:57 +0530)
Issue-Id: AIMLFW-64

Change-Id: I87f29d48e59f2d5df822bb69fc152bfbaf2cb8a6
Signed-off-by: SANDEEP KUMAR JAISAWAL <s.jaisawal@samsung.com>
LICENSES.txt [new file with mode: 0644]
docs/_static/logo.png [new file with mode: 0644]
docs/conf.py [new file with mode: 0644]
docs/conf.yaml [new file with mode: 0644]
docs/favicon.ico [new file with mode: 0644]
docs/index.rst [new file with mode: 0644]
docs/overview.rst [new file with mode: 0644]
docs/release-notes.rst [new file with mode: 0644]
docs/requirements-docs.txt [new file with mode: 0644]
docs/user-guide.rst [new file with mode: 0644]
tox.ini [new file with mode: 0644]

diff --git a/LICENSES.txt b/LICENSES.txt
new file mode 100644 (file)
index 0000000..cee52e2
--- /dev/null
@@ -0,0 +1,30 @@
+Unless otherwise specified, all software contained herein is licensed
+under the Apache License, Version 2.0 (the "Software License");
+you may not use this software except in compliance with the Software
+License. You may obtain a copy of the Software License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the Software License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the Software License for the specific language governing permissions
+and limitations under the Software License.
+
+
+
+Unless otherwise specified, all documentation contained herein is licensed
+under the Creative Commons License, Attribution 4.0 Intl. (the
+"Documentation License"); you may not use this documentation except in
+compliance with the Documentation License. You may obtain a copy of the
+Documentation License at
+
+https://creativecommons.org/licenses/by/4.0/
+
+Unless required by applicable law or agreed to in writing, documentation
+distributed under the Documentation License is distributed on an "AS IS"
+BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+implied. See the Documentation License for the specific language governing
+permissions and limitations under the Documentation License.
+
+This source code is part of the AIMLFW (AI ML Framework) project.
diff --git a/docs/_static/logo.png b/docs/_static/logo.png
new file mode 100644 (file)
index 0000000..3803e04
Binary files /dev/null and b/docs/_static/logo.png differ
diff --git a/docs/conf.py b/docs/conf.py
new file mode 100644 (file)
index 0000000..b0c8a2a
--- /dev/null
@@ -0,0 +1,24 @@
+# ==================================================================================
+#
+#       Copyright (c) 2023 Samsung Electronics Co., Ltd. All Rights Reserved.
+#
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#          http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+#
+# ==================================================================================
+
+from docs_conf.conf import *
+linkcheck_ignore = [
+    'http://localhost.*',
+    'http://127.0.0.1.*',
+    'https://gerrit.o-ran-sc.org.*'
+]
diff --git a/docs/conf.yaml b/docs/conf.yaml
new file mode 100644 (file)
index 0000000..7a77bf2
--- /dev/null
@@ -0,0 +1,6 @@
+---
+project_cfg: oran
+project: aiml-fw/awmf/modelmgmtservice
+
+# Change this to ReleaseBranchName to modify the header
+version: latest
diff --git a/docs/favicon.ico b/docs/favicon.ico
new file mode 100644 (file)
index 0000000..00b0fd0
Binary files /dev/null and b/docs/favicon.ico differ
diff --git a/docs/index.rst b/docs/index.rst
new file mode 100644 (file)
index 0000000..49be8b5
--- /dev/null
@@ -0,0 +1,18 @@
+
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. SPDX-License-Identifier: CC-B
+.. Copyright (c) 2023 Samsung Electronics Co., Ltd. All Rights Reserved.
+
+Welcome to Model Management Service for AIML Framework
+
+.. toctree::
+    :maxdepth: 2
+    :caption: Contents:
+
+    overview.rst
+    release-notes.rst
+    user-guide.rst
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`
\ No newline at end of file
diff --git a/docs/overview.rst b/docs/overview.rst
new file mode 100644 (file)
index 0000000..4fd3f96
--- /dev/null
@@ -0,0 +1,11 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+.. Copyright (c) 2023 Samsung Electronics Co., Ltd. All Rights Reserved.
+
+Model Management Service Overview
+=====================================
+
+Model Management Service works with AIML Framework to manage the life cycle of trained AIML models,
+such as creating a model, storing the trained model, storing the trained model info.
+It exposes REST based API to work with models.
\ No newline at end of file
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
new file mode 100644 (file)
index 0000000..a19568b
--- /dev/null
@@ -0,0 +1,54 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+.. Copyright (c) 2023 Samsung Electronics Co., Ltd. All Rights Reserved.
+
+=============
+Release-Notes
+=============
+This document provides the release notes for the I release of Model Management Service
+
+.. contents::
+   :depth: 3
+   :local:
+
+Version history
+===============
+
++--------------------+--------------------+--------------------+--------------------+
+| **Date**           | **Ver.**           | **Author**         | **Comment**        |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+| 2023-12-14         | 1.0.0              | Sandeep Jaisawal   | I release          |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+
+
+Summary
+=======
+
+The I release of AIMLFW Model Management Service provides basic version of Model Management Service
+
+
+Release Data
+============
+
+I Release
+---------
+
++--------------------------------------+-------------------------------------------------------+
+| **Project**                          | AIMLFW Model Management Service                       |
+|                                      |                                                       |
++--------------------------------------+-------------------------------------------------------+
+| **Repo/commit-ID**                   | aiml-fw/awmf/modelmgmtservice                         |
+|                                      |                                                       |
++--------------------------------------+-------------------------------------------------------+
+| **Release designation**              | I release                                             |
+|                                      |                                                       |
++--------------------------------------+-------------------------------------------------------+
+| **Release date**                     | 2023-12-29                                            |
+|                                      |                                                       |
++--------------------------------------+-------------------------------------------------------+
+| **Purpose of the delivery**          | Model Management Service provide API interfaces to    |
+|                                      | manage life cycle of trained AIML models              |
++--------------------------------------+-------------------------------------------------------+
diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt
new file mode 100644 (file)
index 0000000..4f9d174
--- /dev/null
@@ -0,0 +1,5 @@
+sphinx
+sphinx-rtd-theme
+sphinxcontrib-httpdomain
+recommonmark
+lfdocs-conf
\ No newline at end of file
diff --git a/docs/user-guide.rst b/docs/user-guide.rst
new file mode 100644 (file)
index 0000000..5ce2283
--- /dev/null
@@ -0,0 +1,80 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+.. Copyright (c) 2023 Samsung Electronics Co., Ltd. All Rights Reserved.
+
+User-Guide
+==========
+
+.. contents::
+   :depth: 3
+   :local:
+
+
+Overview
+--------
+Model Management Service works with AIML Framework to manage the life cycle of trained AIML models,
+such as creating a model, storing the trained model, storing the trained model info.
+It exposes REST based API to work with models.
+
+Steps to build and run Model Management Service Standalone
+-----------------------------------------------------------
+
+Prerequisites
+
+#. Install go
+
+
+Steps
+
+.. code:: bash
+
+         git clone "https://gerrit.o-ran-sc.org/r/aiml-fw/awmf/modelmgmtservice.git"
+        cd modelmgmtservice
+
+| Update ENV variables in config.env
+| Execute below commands
+        
+.. code:: bash
+
+        export $(< ./config.env)
+        go get
+        go build -o mme_bin .
+        ./mme_bin
+
+Steps to run Model Management Service using AIMLFW deployment scripts
+----------------------------------------------------------------------
+
+Follow the steps in this link: `AIMLFW installation guide <https://docs.o-ran-sc.org/projects/o-ran-sc-aiml-fw-aimlfw-dep/en/latest/installation-guide.html>`__
+
+APIs and samples
+-----------------
+
+#. Registering a model in Model Management Service
+   Sample model-name value is "qos_301"
+
+   .. code:: bash
+
+        curl  -i  -H "Content-Type: application/json"  \
+                -X POST \
+                -d '{"model-name":"qos_301", "rapp-id": "rapp_1", "meta-info" : {"accuracy":"90","model-type":"timeseries","feature-list":["pdcpBytesDl","pdcpBytesUl"]}}' \
+                http://127.0.0.1:32006/registerModel
+
+
+#. Fetch trained model information from Model Management Service
+
+   .. code:: bash
+
+        curl -X GET  http://127.0.0.1:32006/getModelInfo/qos_301
+
+#. Upload a trained AIML Model to Model Management Service
+
+   .. code:: bash
+
+        curl -F "file=@<MODEL_ZIP_FILE_NAME>" http://127.0.0.1:32006/uploadModel/qos_301
+
+#. Download a trained model from Model Management Service
+
+   .. code:: bash
+
+        curl -X GET http://127.0.0.1:32006/downloadModel/qos_301/model.zip --output model.zip
diff --git a/tox.ini b/tox.ini
new file mode 100644 (file)
index 0000000..6f255c1
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,39 @@
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+#
+# ==================================================================================
+
+# documentation only
+[tox]
+envlist = docs,docs-linkcheck
+skipsdist = true
+
+[testenv:docs]
+basepython = python3
+deps = 
+    sphinx
+    sphinx-rtd-theme
+    sphinxcontrib-httpdomain
+    recommonmark
+    lfdocs-conf
+    urllib3~=1.26.15
+    
+commands =
+    sphinx-build -W -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+    echo "Generated docs available in {toxinidir}/docs/_build/html"
+
+allowlist_externals = echo
+
+[testenv:docs-linkcheck]
+basepython = python3
+deps = sphinx
+       sphinx-rtd-theme
+       sphinxcontrib-httpdomain
+       recommonmark
+       lfdocs-conf
+       urllib3~=1.26.15
+commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck