diff --git a/docs/Makefile b/docs/Makefile index 5f3828f39..1fca4c922 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -13,7 +13,7 @@ help: @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) clean: - rm -rf build source/examples + rm -rf build source/examples NVTabular core dataloader models systems Transformers4Rec source/api_core/ source/api_dataloader.rst source/api_models.rst source/api_nvtabular.rst source/api_systems.rst source/api_transformers4rec/ .PHONY: help clean Makefile diff --git a/docs/requirements-doc.txt b/docs/requirements-doc.txt index 25b49b271..4d1fbfecb 100644 --- a/docs/requirements-doc.txt +++ b/docs/requirements-doc.txt @@ -18,3 +18,19 @@ PyGithub<1.56 semver>=2,<3 pytest<7.3 coverage<6.6 + +# Libraries +tensorflow>=2.9,<2.13 +torch +torchmetrics +jax[cpu] +tritonclient[all] +requests>=2.10,<3 +treelite==2.4.0 +treelite_runtime==2.4.0 +git+https://github.com/NVIDIA-Merlin/core.git +git+https://github.com/NVIDIA-Merlin/dataloader.git +git+https://github.com/NVIDIA-Merlin/models.git +git+https://github.com/NVIDIA-Merlin/NVTabular.git +git+https://github.com/NVIDIA-Merlin/systems.git +git+https://github.com/NVIDIA-Merlin/Transformers4Rec.git \ No newline at end of file diff --git a/docs/source/_templates/layout.html b/docs/source/_templates/layout.html index b053113ba..abade74a1 100644 --- a/docs/source/_templates/layout.html +++ b/docs/source/_templates/layout.html @@ -1,5 +1,4 @@ {%- extends "!layout.html" %} - {%- block extrahead %} {%- if analytics_id %} @@ -18,4 +17,4 @@ -{%- endblock %} +{%- endblock %} \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index aa8311c81..14abeab4d 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -6,6 +6,7 @@ from natsort import natsorted +sys.path.insert(0, os.path.abspath("/models/")) docs_dir = os.path.dirname(__file__) repodir = os.path.abspath(os.path.join(__file__, r"../../..")) gitdir = os.path.join(repodir, r".git") @@ -25,6 +26,7 @@ "myst_nb", "sphinx_multiversion", "sphinx.ext.autodoc", + "sphinx.ext.autosummary", "sphinx.ext.coverage", "sphinx.ext.githubpages", "sphinx.ext.napoleon", diff --git a/docs/source/toc.yaml b/docs/source/toc.yaml index 3140d57c0..4eafd0382 100644 --- a/docs/source/toc.yaml +++ b/docs/source/toc.yaml @@ -53,4 +53,23 @@ subtrees: - file: examples/scaling-criteo/04-Triton-Inference-with-Merlin-Models-TensorFlow.ipynb title: Deploy the TensorFlow Model with Triton - file: containers.rst - - file: support_matrix/index.rst \ No newline at end of file + - file: support_matrix/index.rst + + - caption: API documentation + entries: + - file: api_core/merlin.dag + title: merlin.dag + - file: api_dataloader + title: merlin.loader + - file: api_core/merlin.io + title: merlin.io + - file: api_models + title: merlin.models + - file: api_core/merlin.schema + title: merlin.schema + - file: api_systems + title: merlin.systems + - file: api_nvtabular + title: nvtabular + - file: api_transformers4rec/modules + title: transformers4rec diff --git a/tox.ini b/tox.ini index 132992517..e2d2ee9f6 100644 --- a/tox.ini +++ b/tox.ini @@ -61,14 +61,47 @@ commands = ; Generates documentation with sphinx. There are other steps in the Github Actions workflow ; to publish the documentation on release. changedir = {toxinidir} -deps = -rdocs/requirements-doc.txt +deps = + -rdocs/requirements-doc.txt +allowlist_externals = + git + cp commands = + git clone --depth 1 https://github.com/NVIDIA-Merlin/core.git ./docs/core + cp -r ./docs/core/docs/source/api ./docs/source/api_core/ + git clone --depth 1 https://github.com/NVIDIA-Merlin/dataloader.git ./docs/dataloader + cp ./docs/dataloader/docs/source/api.rst ./docs/source/api_dataloader.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/models.git ./docs/models + cp ./docs/models/docs/source/api.rst ./docs/source/api_models.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/NVTabular.git ./docs/NVTabular + cp ./docs/NVTabular/docs/source/api.rst ./docs/source/api_nvtabular.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/systems.git ./docs/systems + cp ./docs/systems/docs/source/api.rst ./docs/source/api_systems.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/Transformers4Rec.git ./docs/Transformers4Rec + cp -r ./docs/Transformers4Rec/docs/source/api ./docs/source/api_transformers4rec/ python -m sphinx.cmd.build -E -P -b html docs/source docs/build/html + [testenv:docs-multi] ; Run the multi-version build that is shown on GitHub Pages. changedir = {toxinidir} -deps = -rdocs/requirements-doc.txt +deps = + -rdocs/requirements-doc.txt +allowlist_externals = + git + cp commands = + git clone --depth 1 https://github.com/NVIDIA-Merlin/core.git ./docs/core + cp -r ./docs/core/docs/source/api ./docs/source/api_core/ + git clone --depth 1 https://github.com/NVIDIA-Merlin/dataloader.git ./docs/dataloader + cp ./docs/dataloader/docs/source/api.rst ./docs/source/api_dataloader.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/models.git ./docs/models + cp ./docs/models/docs/source/api.rst ./docs/source/api_models.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/NVTabular.git ./docs/NVTabular + cp ./docs/NVTabular/docs/source/api.rst ./docs/source/api_nvtabular.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/systems.git ./docs/systems + cp ./docs/systems/docs/source/api.rst ./docs/source/api_systems.rst + git clone --depth 1 https://github.com/NVIDIA-Merlin/Transformers4Rec.git ./docs/Transformers4Rec + cp -r ./docs/Transformers4Rec/docs/source/api ./docs/source/api_transformers4rec/ sphinx-multiversion --dump-metadata docs/source docs/build/html | jq "keys" - sphinx-multiversion docs/source docs/build/html + sphinx-multiversion docs/source docs/build/html \ No newline at end of file