From db6fd6442143cc8e89591ff634e3c511907f3f97 Mon Sep 17 00:00:00 2001 From: Kiss Date: Tue, 11 Aug 2026 14:24:41 +0200 Subject: [PATCH] Generate llms files with rocm_docs_generate_llms Enable llms.txt and llms-full.txt generation from the resolved doctree via rocm_docs_generate_llms, and add the per-page Markdown download button. Bump rocm-docs-core to 1.38.0 with the llms extra. Co-Authored-By: Claude Opus 4 (1M context) --- docs/conf.py | 6 ++ docs/sphinx/requirements.in | 2 +- docs/sphinx/requirements.txt | 123 +++++++++++++++++++---------------- 3 files changed, 74 insertions(+), 57 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 16a732c..fe08eb3 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -44,6 +44,7 @@ html_theme_options = { "flavor": "amdgpu", "link_main_doc": True, + "use_download_button": True, # Add any additional theme options here } extensions = [ @@ -57,6 +58,11 @@ exclude_patterns = ['.venv'] +# Generate llms.txt and llms-full.txt after each build (the llms.txt standard, +# https://llmstxt.org/). See the rocm-docs-core guide: +# https://rocm.docs.amd.com/projects/rocm-docs-core/en/latest/user_guide/llms.html +rocm_docs_generate_llms = True + # Add the following replacements to every RST file. rst_prolog = f""" .. |rocm_version| replace:: {rocm_version} diff --git a/docs/sphinx/requirements.in b/docs/sphinx/requirements.in index 61ed30c..777e199 100644 --- a/docs/sphinx/requirements.in +++ b/docs/sphinx/requirements.in @@ -1,4 +1,4 @@ -rocm-docs-core==1.39.0 +rocm-docs-core[llms]==1.39.0 sphinx-reredirects sphinxcontrib.datatemplates==0.11.0 Sphinx-Substitution-Extensions==2026.1.12 diff --git a/docs/sphinx/requirements.txt b/docs/sphinx/requirements.txt index e1d25fc..9ca879c 100644 --- a/docs/sphinx/requirements.txt +++ b/docs/sphinx/requirements.txt @@ -8,42 +8,42 @@ accessible-pygments==0.0.5 # via pydata-sphinx-theme alabaster==1.0.0 # via sphinx -asttokens==3.0.0 +asttokens==3.0.2 # via stack-data -attrs==25.4.0 +attrs==26.1.0 # via # jsonschema # jupyter-cache # referencing -babel==2.17.0 +babel==2.18.0 # via # pydata-sphinx-theme # sphinx beartype==0.22.9 # via sphinx-substitution-extensions -beautifulsoup4==4.14.2 +beautifulsoup4==4.15.0 # via pydata-sphinx-theme breathe==4.36.0 # via rocm-docs-core -certifi==2025.11.12 +certifi==2026.7.22 # via requests -cffi==2.0.0 +cffi==2.1.1 # via # cryptography # pynacl -charset-normalizer==3.4.4 +charset-normalizer==3.5.0 # via requests -click==8.3.0 +click==8.4.2 # via # jupyter-cache # sphinx-external-toc comm==0.2.3 # via ipykernel -cryptography==46.0.3 +cryptography==50.0.0 # via pyjwt -debugpy==1.8.17 +debugpy==1.8.21 # via ipykernel -decorator==5.2.1 +decorator==5.3.1 # via ipython defusedxml==0.7.1 # via sphinxcontrib-datatemplates @@ -52,48 +52,49 @@ docutils==0.21.2 # myst-parser # pydata-sphinx-theme # sphinx + # sphinx-markdown-builder # sphinx-substitution-extensions -exceptiongroup==1.3.0 +exceptiongroup==1.3.1 # via ipython executing==2.2.1 # via stack-data -fastjsonschema==2.21.2 +fastjsonschema==2.22.1 # via # nbformat # rocm-docs-core gitdb==4.0.12 # via gitpython -gitpython==3.1.45 +gitpython==3.1.59 # via rocm-docs-core -greenlet==3.2.4 +greenlet==3.5.5 # via sqlalchemy -idna==3.11 +idna==3.18 # via requests -imagesize==1.4.1 +imagesize==2.0.0 # via sphinx -importlib-metadata==8.7.0 +importlib-metadata==9.0.0 # via # jupyter-cache # myst-nb -ipykernel==7.1.0 +ipykernel==7.3.0 # via myst-nb -ipython==8.37.0 +ipython==8.39.0 # via # ipykernel # myst-nb -jedi==0.19.2 +jedi==0.20.0 # via ipython jinja2==3.1.6 # via # myst-parser # sphinx -jsonschema==4.25.1 +jsonschema==4.26.0 # via nbformat jsonschema-specifications==2025.9.1 # via jsonschema jupyter-cache==1.0.1 # via myst-nb -jupyter-client==8.6.3 +jupyter-client==8.9.1 # via # ipykernel # nbclient @@ -109,67 +110,67 @@ markdown-it-py==3.0.0 # myst-parser markupsafe==3.0.3 # via jinja2 -matplotlib-inline==0.2.1 +matplotlib-inline==0.2.2 # via # ipykernel # ipython -mdit-py-plugins==0.5.0 +mdit-py-plugins==0.6.1 # via myst-parser mdurl==0.1.2 # via markdown-it-py -myst-nb==1.3.0 +myst-nb==1.4.0 # via rocm-docs-core myst-parser==4.0.1 # via # myst-nb # sphinx-substitution-extensions -nbclient==0.10.2 +nbclient==0.11.0 # via # jupyter-cache # myst-nb -nbformat==5.10.4 +nbformat==5.11.0 # via # jupyter-cache # myst-nb # nbclient -nest-asyncio==1.6.0 +nest-asyncio2==1.7.2 # via ipykernel -packaging==25.0 +packaging==26.3 # via # ipykernel # pydata-sphinx-theme # sphinx -parso==0.8.5 +parso==0.8.7 # via jedi pexpect==4.9.0 # via ipython -platformdirs==4.5.0 +platformdirs==4.11.3 # via jupyter-core -prompt-toolkit==3.0.52 +prompt-toolkit==3.0.53 # via ipython -psutil==7.1.3 +psutil==7.2.2 # via ipykernel ptyprocess==0.7.0 # via pexpect pure-eval==0.2.3 # via stack-data -pycparser==2.23 +pycparser==3.0 # via cffi pydata-sphinx-theme==0.15.4 # via # rocm-docs-core # sphinx-book-theme -pygithub==2.8.1 +pygithub==2.9.1 # via rocm-docs-core -pygments==2.19.2 +pygments==2.20.0 # via # accessible-pygments # ipython # pydata-sphinx-theme # sphinx -pyjwt[crypto]==2.10.1 +pyjwt[crypto]==2.13.0 # via pygithub -pynacl==1.6.1 +pynacl==1.6.2 # via pygithub python-dateutil==2.9.0.post0 # via jupyter-client @@ -189,23 +190,23 @@ referencing==0.37.0 # via # jsonschema # jsonschema-specifications -requests==2.32.5 +requests==2.34.2 # via # pygithub # sphinx -rocm-docs-core==1.39.0 +rocm-docs-core[llms]==1.39.0 # via -r requirements.in -rpds-py==0.28.0 +rpds-py==0.30.0 # via # jsonschema # referencing six==1.17.0 # via python-dateutil -smmap==5.0.2 +smmap==5.0.3 # via gitdb -snowballstemmer==3.0.1 +snowballstemmer==3.1.1 # via sphinx -soupsieve==2.8 +soupsieve==2.9.2 # via beautifulsoup4 sphinx==8.1.3 # via @@ -218,6 +219,8 @@ sphinx==8.1.3 # sphinx-copybutton # sphinx-design # sphinx-external-toc + # sphinx-markdown-builder + # sphinx-multitoc-numbering # sphinx-notfound-page # sphinx-reredirects # sphinx-substitution-extensions @@ -229,8 +232,12 @@ sphinx-copybutton==0.5.2 # via rocm-docs-core sphinx-design==0.6.1 # via rocm-docs-core -sphinx-external-toc==1.0.1 +sphinx-external-toc==1.1.0 # via rocm-docs-core +sphinx-markdown-builder==0.6.10 + # via rocm-docs-core +sphinx-multitoc-numbering==0.1.3 + # via sphinx-external-toc sphinx-notfound-page==1.1.0 # via rocm-docs-core sphinx-reredirects==0.1.6 @@ -253,19 +260,21 @@ sphinxcontrib-runcmd==0.2.0 # via sphinxcontrib-datatemplates sphinxcontrib-serializinghtml==2.0.0 # via sphinx -sqlalchemy==2.0.44 +sqlalchemy==2.0.52 # via jupyter-cache stack-data==0.6.3 # via ipython -tabulate==0.9.0 - # via jupyter-cache -tomli==2.3.0 +tabulate==0.10.0 + # via + # jupyter-cache + # sphinx-markdown-builder +tomli==2.4.1 # via sphinx -tornado==6.5.2 +tornado==6.5.8 # via # ipykernel # jupyter-client -traitlets==5.14.3 +traitlets==5.16.1 # via # ipykernel # ipython @@ -274,22 +283,24 @@ traitlets==5.14.3 # matplotlib-inline # nbclient # nbformat -typing-extensions==4.15.0 +typing-extensions==4.16.0 # via # beautifulsoup4 # cryptography # exceptiongroup # ipython + # jupyter-client # myst-nb # pydata-sphinx-theme # pygithub + # pyjwt # referencing # sqlalchemy -urllib3==2.5.0 +urllib3==2.7.0 # via # pygithub # requests -wcwidth==0.2.14 +wcwidth==0.8.2 # via prompt-toolkit -zipp==3.23.0 +zipp==4.1.0 # via importlib-metadata