Repository navigation
Conversation
Use the checkpoint pipeline and family sampler for SDXL reference requests. State one-step zero-guidance controls and family-owned latent replay for the existing SDXL-Turbo profile. Signed-off-by: JiaxinD <djx2048@gmail.com>
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Pipeline and sampler selection families/stable_diffusion/reference/adapter.py, families/stable_diffusion/tests/aiperf/sdxl-turbo.yaml, families/stable_diffusion/tests/test_reference.py |
The adapter selects pipeline and scheduler options based on the configured pipeline name and reports the selected sampler. The SDXL Turbo configuration uses the reference adapter. Parametrized tests check pipeline and scheduler selection, invocation inputs, and returned metadata in eager and compile modes. |
Estimated code review effort: 2 (Simple) | ~10 minutes
Change: Bug fix
Suggested reviewers: yifeif-nv, chaofengw-nv
Merge Risk: 
Minimal · up to 7c57f
-
No concrete merge-blocking issue was established. Actual checkpoint inference and image parity remain unverified.
Pre-merge checks: 
8 · 
1
-
Failed checks: 1 warning Passed checks: 8 passed-
Full details: Description check
-
Explanation
The description covers the required background, exit criteria, implementation, change categories, validation results, environment, remaining gaps, self-review, notes, and risk level. It clearly identifies unrun GPU and inference qualification work.
Full details: Family Ownership Boundary
-
Explanation
No cross-family dependency is introduced. The authoritative diff changes only three files under
families/stable_diffusion. The new profile points both adapters tofamilies/stable_diffusion/reference/adapter.py(yaml lines 6-8), and the manifest assignssdxl-turbotostable_diffusion. The adapter's newdiffusersimports and SD/SDXL dispatch (lines 27-40) use an external shared library, not code owned by another repository family. The test imports onlyfamilies.stable_diffusion.reference.adapter. No central registry or file outside this family changes.
Full details: Shared Semantic Neutrality
-
Explanation
PASS. The pull request changes only
families/stable_diffusion/reference/adapter.py,families/stable_diffusion/tests/aiperf/sdxl-turbo.yaml, andfamilies/stable_diffusion/tests/test_reference.py. These are model-owned family reference and test/config paths. The SDXL pipeline, scheduler, sampler, and replay controls are selected inside the stable-diffusion family adapter. No shared code outside the excluded family-owned directories changed.
Full details: Benchmark Validation Integrity
-
Explanation
PASS. The changed reference path preserves the measurement boundary:
host.timed(lambda: self.pipe(**kwargs).images)remains the only model-call timing region, and latent loading,tensor_observation, artifact writing, synchronization, and invocation serialization remain outside that boundary as defined by the shared reference backend. SD and SDXL use the same control flow, output observation, timing value, and invocation metadata path. The new parameterized regression covers both pipelines in eager and compile modes, including controls, caller latents, output shape, timing, and sampler metadata. No changed code alters task/sample accounting or aggregation.
Full details: Shared Change Blast Radius
-
Explanation
The pull request changes only three family-owned paths under
families/stable_diffusion: the reference adapter, the SDXL-Turbo profile, and the family reference test. It does not change shared code, contracts, tooling, catalogs, examples, benchmarks, or shared validation infrastructure. The custom failure condition does not apply to this family-local change.
-
Full details: Docstring Coverage
-
Explanation
Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 3 functions across 2 files. (1 skipped: 1 unsupported.)
Resolution
Write docstrings for the functions missing them to satisfy the coverage threshold.
-
Comment @coderabbitai help to get the list of available commands.
|
@yifeif-nv Community CPU / Required, Stable and Dev passed for 7c57f77. Please trigger protected CI for this head. |
Background
The existing
sdxl-turboqualification profile fails request preflight: the resolved request leavesnum_stepsandcfg_scaleat their default sentinels. It also lacks the family latent adapter, so generic replay expects a transformer config from this UNet checkpoint. The existing family reference always loads SD1.5/DDIM.Exit Criteria
Implementation
families/stable_diffusion/tests/aiperf/sdxl-turbo.yamlwith explicit controls and reference/replay adapters.Change categories
Validation
Commands and Results
python -m pytest families/stable_diffusion/tests/test_reference.py apps/aiperf_qual/tests/test_request_contract.py -q: before 3 failed/4 passed, after 7 passed, independently rerun on the committed head.python -m pytest apps/aiperf_qual/tests -q: 536 passed, 1 inherited inventory failure. Both original failures reproduce on unchanged base; request preflight now passes.python -m pytest tools/tests/test_architecture.py tools/tests/test_family_impact.py tools/tests/test_pr_metadata.py -q: 94 passed. Catalog, impact, legal headers, Ruff and whitespace checks passed.Hardware, Environment, and Revisions
Head
7c57f77c8ea5dbabd54ce81ac17dece332272273, basea579f718410576264d382d13cca1e55391f37e79. Windows/Python 3.13 and Ubuntu WSL/Python 3.12 CPU checks. Metadata API probe: Diffusers 0.42.1, Torch 2.12.0+cpu. Existing checkpointstabilityai/sdxl-turbo@71153311d3dbb46851df1931d3ca6e939de83304is unchanged.Not Run / Remaining Gaps
Full family collection cannot import TensorRT locally; two opt-in E2Es were skipped. No GPU/native build, checkpoint inference, actual compilation, image parity, multi-step ancestral replay, or performance qualification. Pipeline execution tests use controlled Diffusers/Torch doubles.
Contributor Self-Review
Notes For Future Readers
Please review the unchanged image-inventory test's missing SDXL expectation separately; it remains failing rather than relaxing its assertion here. The existing checkpoint has Stability AI Community License terms, not Apache-2.0 weights; project owners must confirm applicable use/redistribution obligations. This change redistributes no weights/assets and changes no license or package requirement. Review the family YAML, adapter selection, then regressions.
Risk level
Reference loading changes within one family; target-hardware numerical qualification remains unrun.