Skip to content

Commit 91ca011

Browse files
Fix API reference docs to auto-discover all public modules (#5737)
* Update v3 readthedocs to autorender all submodules * Maintain previous opinionated list, add new section of full module reference * Add sagemaker-core description in init
1 parent 2afbe28 commit 91ca011

File tree

10 files changed

+79
-13
lines changed

10 files changed

+79
-13
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,3 +41,4 @@ sagemaker_train/src/**/container_drivers/sm_train.sh
4141
sagemaker_train/src/**/container_drivers/sourcecode.json
4242
sagemaker_train/src/**/container_drivers/distributed.json
4343
.kiro
44+
docs/api/generated/

docs/api/full_reference.rst

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
Full Module Reference
2+
=====================
3+
4+
Complete auto-generated API reference for all public modules in SageMaker Python SDK V3.
5+
6+
7+
.. autosummary::
8+
:toctree: generated/
9+
:recursive:
10+
11+
sagemaker.core
12+
13+
14+
.. autosummary::
15+
:toctree: generated/
16+
:recursive:
17+
18+
sagemaker.train
19+
20+
21+
.. autosummary::
22+
:toctree: generated/
23+
:recursive:
24+
25+
sagemaker.serve
26+
27+
28+
.. autosummary::
29+
:toctree: generated/
30+
:recursive:
31+
32+
sagemaker.mlops

docs/api/sagemaker_core.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,3 +58,5 @@ Exceptions
5858
.. automodule:: sagemaker.core.exceptions
5959
:members:
6060
:undoc-members:
61+
62+

docs/api/sagemaker_mlops.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,6 @@ Feature Store
3636
.. automodule:: sagemaker.mlops.feature_store
3737
:members:
3838
:undoc-members:
39-
:show-inheritance:
39+
:show-inheritance:
40+
41+

docs/api/sagemaker_serve.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,5 @@ Model Deployment
1212
:members:
1313
:undoc-members:
1414
:show-inheritance:
15+
16+

docs/api/sagemaker_train.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,5 @@ Model Evaluation
2828
:members:
2929
:undoc-members:
3030
:show-inheritance:
31+
32+

docs/conf.py

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,10 @@
3737

3838
# Suppress specific warnings
3939
suppress_warnings = [
40-
'myst.header', # Suppress header level warnings from notebooks
41-
'toc.not_readable', # Suppress toctree warnings for symlinked files
40+
'myst.header', # header level warnings from notebooks
41+
'toc.not_readable', # toctree warnings for symlinked files
42+
'ref.python', # "more than one target found" for duplicate class names
43+
'autosummary', # autosummary import failures for internal modules
4244
]
4345

4446
html_theme = 'sphinx_book_theme'
@@ -76,11 +78,33 @@
7678
'members': True,
7779
'undoc-members': True,
7880
'show-inheritance': True,
81+
'private-members': False,
7982
}
8083

81-
# Generate autosummary stubs
84+
# Generate autosummary stubs recursively
8285
autosummary_generate = True
8386

84-
# Don't mock imports - let them fail gracefully and show what's available
85-
autodoc_mock_imports = []
87+
# Suppress internal/implementation modules not intended for users
88+
exclude_patterns += [
89+
'*/telemetry*',
90+
'*/tools*',
91+
'*/container_drivers*',
92+
'*/runtime_environment*',
93+
'*/model_server*',
94+
'*/detector*',
95+
'*/validations*',
96+
'*/image_retriever*',
97+
]
98+
99+
# Modules that fail to import due to runtime dependencies or side effects
100+
autodoc_mock_imports = [
101+
'triton_python_backend_utils',
102+
'sagemaker.serve.model_server.in_process_model_server.app',
103+
'sagemaker.serve.model_server.multi_model_server.inference',
104+
'sagemaker.serve.model_server.tensorflow_serving.inference',
105+
'sagemaker.serve.model_server.torchserve.inference',
106+
'sagemaker.serve.model_server.torchserve.xgboost_inference',
107+
'sagemaker.serve.model_server.triton.model',
108+
]
109+
86110
suppress_warnings = ['autodoc.import_error']

docs/index.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,10 @@ SageMaker Python SDK V3
3636
:hidden:
3737

3838
api/index
39+
40+
.. toctree::
41+
:maxdepth: 2
42+
:caption: Full Module Reference
43+
:hidden:
44+
45+
api/full_reference

sagemaker-core/src/sagemaker/core/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
"""SageMaker Core package for low-level resource management and SDK foundations."""
12
from sagemaker.core.utils.utils import enable_textual_rich_console_and_traceback
23

34

sagemaker-core/src/sagemaker/core/image_retriever/test.py

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)