Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
c846cde
feat: Add basic V3 documentation structure and configuration (#5445)
Aditi2424 Dec 31, 2025
6abbe37
doc: Add content for V3 training, inference, model customization, ml_…
Aditi2424 Dec 31, 2025
6a661c0
feat: Add comprehensive V3 documentation with enhanced UI
adishaa Dec 31, 2025
ce413a7
feat: Add comprehensive feedback component with light theme
adishaa Jan 1, 2026
77c229f
Add API documentation using autodoc and autosummary
adishaa Jan 2, 2026
222b5cf
doc: Add comprehensive V3 documentation with enhanced UI (#5448)
Aditi2424 Jan 2, 2026
7102981
Merge branch 'v3docs' into v3-documentation-update
Aditi2424 Jan 2, 2026
f8bde2f
doc: V3 documentation feedback component and API documentation (#5450)
Aditi2424 Jan 2, 2026
a8c3db8
doc: Documentation v3 improvements
adishaa Jan 5, 2026
c2b8857
Merge branch 'v3docs' into v3-documentation-update
Aditi2424 Jan 5, 2026
04b36f6
docs: Update requirements.txt for documentation build
adishaa Jan 5, 2026
7c950a7
docs: Add sphinx-design to requirements.txt for ReadTheDocs build
adishaa Jan 5, 2026
6b995e0
doc: V3 documentation update (#5452)
Aditi2424 Jan 5, 2026
deeaaa3
docs: Remove unsupported LoRAConfig/TrainingConfig and update prefere…
adishaa Jan 6, 2026
ed5f5d6
doc: Update inference docs
adishaa Jan 6, 2026
2a9da04
doc: Update Inference and Model Customization docs (#5454)
Aditi2424 Jan 6, 2026
73cd3cd
docs: Update ModelBuilder example in overview.rst with correct V3 wor…
adishaa Jan 6, 2026
0679027
Clear Clarify notebook output
adishaa Jan 7, 2026
f944d8f
Merge branch 'v3docs' into v3-documentation-update
Aditi2424 Jan 7, 2026
cd3df54
docs: V3 documentation update (#5463)
Aditi2424 Jan 7, 2026
b7ea1c5
Fix GitHub buttons and update V3 breaking changes note
adishaa Jan 7, 2026
07f4cf6
doc: Update MLOps example notebook titles
adishaa Jan 7, 2026
ac718a0
doc: Update notebook titles
adishaa Jan 7, 2026
4a22223
doc: Update model customization page
adishaa Jan 7, 2026
17ab110
doc: V3 documentation update (#5464)
Aditi2424 Jan 7, 2026
e8236e2
doc: Address latest feedback to bring parity with aws docs
adishaa Jan 8, 2026
e577af4
doc: fix what's new heading
adishaa Jan 8, 2026
26e0658
Merge branch 'v3docs' into v3-documentation-update
Aditi2424 Jan 8, 2026
fd64be6
V3 documentation update (#5468)
Aditi2424 Jan 8, 2026
1d21dcb
doc: Reorganize model customization
adishaa Jan 8, 2026
23f43d8
V3 documentation update (#5470)
Aditi2424 Jan 8, 2026
6ef4d92
docs: Update headings
adishaa Jan 8, 2026
f396883
Merge branch 'v3docs' into v3-documentation-update
Aditi2424 Jan 8, 2026
0387e27
doc: minor fix
adishaa Jan 8, 2026
e5403cb
doc: Fix headings
adishaa Jan 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ scratch/
*.egg
examples/tensorflow/distributed_mnist/data
*.iml

# Sphinx documentation
docs/_build/
doc/_build
doc/_static
doc/_templates
Expand Down
24 changes: 24 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

version: 2

build:
os: ubuntu-22.04
tools:
python: "3.10"

sphinx:
configuration: docs/conf.py

formats:
- pdf
- epub

python:
install:
- requirements: docs/requirements.txt
- method: pip
path: .
extra_requirements:
- docs
12 changes: 12 additions & 0 deletions docs/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build

help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
174 changes: 174 additions & 0 deletions docs/_static/custom.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
/* What's New Section Styling */
.whats-new-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 20px;
margin: 30px 0;
}

.new-feature-card {
background: var(--pst-color-surface);
border: 1px solid var(--pst-color-border);
border-radius: 12px;
padding: 25px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
transition: transform 0.2s ease, box-shadow 0.2s ease;
position: relative;
overflow: hidden;
color: var(--pst-color-text-base);
}

[data-theme="dark"] .new-feature-card {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.new-feature-card:hover {
transform: translateY(-2px);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

[data-theme="dark"] .new-feature-card:hover {
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
}

.new-feature-card h3 {
margin-top: 0;
margin-bottom: 15px;
font-size: 1.3em;
font-weight: 600;
color: inherit;
}

.new-feature-card ul {
margin: 15px 0;
padding-left: 20px;
}

.new-feature-card li {
margin-bottom: 8px;
line-height: 1.5;
}

/* Feedback Component */
.feedback-container {
border-top: 1px solid var(--pst-color-border);
margin-top: 40px;
padding: 24px;
background-color: var(--pst-color-surface);
border-radius: 8px;
border: 1px solid var(--pst-color-border);
}

.feedback-question {
font-size: 20px;
font-weight: 500;
color: var(--pst-color-text-base);
margin-bottom: 20px;
text-align: left;
}

.feedback-buttons {
display: flex;
justify-content: flex-start;
gap: 12px;
}

.feedback-btn {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
border: 1px solid var(--pst-color-border);
border-radius: 6px;
background: var(--pst-color-surface);
color: var(--pst-color-text-muted);
font-size: 14px;
cursor: pointer;
transition: all 0.2s ease;
}

.feedback-btn:hover {
border-color: var(--pst-color-primary);
background: var(--pst-color-surface);
}

.feedback-btn.selected {
border-color: var(--pst-color-primary);
background: var(--pst-color-primary-bg);
color: var(--pst-color-primary);
}

.feedback-btn svg {
width: 16px;
height: 16px;
}

.feedback-thanks {
display: none;
color: #059669;
font-size: 14px;
text-align: center;
margin-top: 16px;
}

/* Feedback Options */
.feedback-options {
display: none;
margin-top: 20px;
}

.feedback-more {
display: flex;
flex-direction: column;
gap: 12px;
}

.feedback-github-link {
color: #0366d6;
text-decoration: none;
font-size: 14px;
padding: 10px 20px;
border: 1px solid #0366d6;
border-radius: 6px;
transition: all 0.2s;
font-weight: 500;
align-self: flex-start;
}

.feedback-github-link:hover {
background-color: #0366d6;
color: white;
text-decoration: none;
}

header {
background-color: white;

box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
position: sticky;
top: 0;
z-index: 50;
}

h1 {
font-size: 1.875rem;
font-weight: 700;
color: var(--pst-color-text-base);
}

h2 {
font-size: 1.5rem;
font-weight: 700;
color: var(--pst-color-text-base);
}

h3 {
font-size: 1.25rem;
font-weight: 500;
color: var(--pst-color-text-base);
}

p {
font-size: 1.0rem;
color: var(--pst-color-text-base);
}
71 changes: 71 additions & 0 deletions docs/_static/feedback.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
// Feedback functionality
document.addEventListener('DOMContentLoaded', function() {
// Add feedback component to the very bottom of each page
const article = document.querySelector('article[role="main"]') || document.querySelector('.bd-article') || document.querySelector('main');
if (article) {
const feedbackHTML = `
<div class="feedback-container">
<div class="feedback-question">Was this page helpful?</div>
<div class="feedback-buttons">
<button class="feedback-btn" data-feedback="yes">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M7.493 18.75c-.425 0-.82-.236-.975-.632A7.48 7.48 0 016 15.375c0-1.75.599-3.358 1.602-4.634.151-.192.373-.309.6-.397.473-.183.89-.514 1.212-.924a9.042 9.042 0 012.861-2.4c.723-.384 1.35-.956 1.653-1.715a4.498 4.498 0 00.322-1.672V3a.75.75 0 01.75-.75 2.25 2.25 0 012.25 2.25c0 1.152-.26 2.243-.723 3.218-.266.558-.107 1.282.725 1.282h3.126c1.026 0 1.945.694 2.054 1.715.045.422.068.85.068 1.285a11.95 11.95 0 01-2.649 7.521c-.388.482-.987.729-1.605.729H14.23c-.483 0-.964-.078-1.423-.23l-3.114-1.04a4.501 4.501 0 00-1.423-.23h-.777zM2.331 10.977a11.969 11.969 0 00-.831 4.398 12 12 0 00.52 3.507c.26.85 1.084 1.368 1.973 1.368H4.9c.445 0 .72-.498.523-.898a8.963 8.963 0 01-.924-3.977c0-1.708.476-3.305 1.302-4.666.245-.403-.028-.959-.5-.959H4.25c-.832 0-1.612.453-1.918 1.227z"/>
</svg>
Yes
</button>
<button class="feedback-btn" data-feedback="no">
<svg viewBox="0 0 24 24" fill="currentColor">
<path d="M15.73 5.25h1.035A7.465 7.465 0 0118 9.375a7.465 7.465 0 01-1.235 4.125h-.148c-.806 0-1.534.446-2.031 1.08a9.04 9.04 0 01-2.861 2.4c-.723.384-1.35.956-1.653 1.715a4.498 4.498 0 00-.322 1.672V21a.75.75 0 01-.75.75 2.25 2.25 0 01-2.25-2.25c0-1.152.26-2.243.723-3.218C7.74 15.724 7.366 15 6.748 15H3.622c-1.026 0-1.945-.694-2.054-1.715A12.134 12.134 0 011.5 12c0-2.848.992-5.464 2.649-7.521C4.537 3.997 5.136 3.75 5.754 3.75H9.77a4.5 4.5 0 011.423.23l3.114 1.04a4.5 4.5 0 001.423.23zM21.669 14.023c.536-1.362.831-2.845.831-4.398 0-1.22-.182-2.398-.52-3.507-.26-.85-1.084-1.368-1.973-1.368H19.1c-.445 0-.72.498-.523.898.591 1.2.924 2.55.924 3.977a8.958 8.958 0 01-1.302 4.666c-.245.403.028.959.5.959h1.053c.832 0 1.612-.453 1.918-1.227z"/>
</svg>
No
</button>
</div>
<div class="feedback-options">
<div class="feedback-more">
<a href="https://github.com/aws/sagemaker-python-sdk/issues/new" target="_blank" class="feedback-github-link">
Create GitHub Issue
</a>
</div>
</div>
<div class="feedback-thanks">Thank you for your feedback!</div>
</div>
`;

article.insertAdjacentHTML('beforeend', feedbackHTML);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛑 Security Vulnerability: Using insertAdjacentHTML with template literals creates a potential XSS vulnerability. User input could be injected into the HTML template. Use createElement and textContent instead for safer DOM manipulation.


// Add click handlers
const feedbackBtns = document.querySelectorAll('.feedback-btn');
const thanksMessage = document.querySelector('.feedback-thanks');
const feedbackOptions = document.querySelector('.feedback-options');

feedbackBtns.forEach(btn => {
btn.addEventListener('click', function() {
const feedback = this.dataset.feedback;

// Remove selected class from all buttons
feedbackBtns.forEach(b => b.classList.remove('selected'));

// Add selected class to clicked button
this.classList.add('selected');

if (feedback === 'yes') {
// Hide options and show thanks
feedbackOptions.style.display = 'none';
thanksMessage.style.display = 'block';

// Send positive feedback
if (typeof gtag !== 'undefined') {
gtag('event', 'page_feedback', {
'feedback_value': 'positive',
'page_location': window.location.href
});
}
} else {
// Show GitHub link for negative feedback
feedbackOptions.style.display = 'block';
thanksMessage.style.display = 'none';
}
});
});
}
});
13 changes: 13 additions & 0 deletions docs/api/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
API Reference
=============

Complete API documentation for SageMaker Python SDK V3.

.. toctree::
:maxdepth: 2
:caption: API Reference

sagemaker_core
sagemaker_train
sagemaker_serve
sagemaker_mlops
60 changes: 60 additions & 0 deletions docs/api/sagemaker_core.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
SageMaker Core
==============

Core SageMaker resources and utilities for managing AWS SageMaker services.

.. currentmodule:: sagemaker.core

Core Resources
--------------

.. automodule:: sagemaker.core.resources
:members:
:undoc-members:
:show-inheritance:

Session Management
------------------

.. automodule:: sagemaker.core.session_settings
:members:
:undoc-members:

Configuration
-------------

.. automodule:: sagemaker.core.config_schema
:members:
:undoc-members:

Processing
----------

.. automodule:: sagemaker.core.processing
:members:
:undoc-members:

Transformers
------------

.. automodule:: sagemaker.core.transformer
:members:
:undoc-members:

Utilities
---------

.. automodule:: sagemaker.core.common_utils
:members:
:undoc-members:

.. automodule:: sagemaker.core.image_uris
:members:
:undoc-members:

Exceptions
----------

.. automodule:: sagemaker.core.exceptions
:members:
:undoc-members:
Loading
Loading