Refactor module access to use PyTorch get_submodule / set_submodule#1590
Open
scopophobic wants to merge 5 commits intointel:mainfrom
Open
Refactor module access to use PyTorch get_submodule / set_submodule#1590scopophobic wants to merge 5 commits intointel:mainfrom
scopophobic wants to merge 5 commits intointel:mainfrom
Conversation
xin3he
approved these changes
Mar 23, 2026
Contributor
|
/azp run Unit-Test-CUDA-AutoRound |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Contributor
|
@XuehaoSun Please help fix this CI issue. |
Contributor
There was a problem hiding this comment.
Pull request overview
Refactors internal module/attribute access helpers to use PyTorch’s native dotted-path APIs (get_submodule / set_submodule) for more reliable resolution, while keeping legacy “missing path should not crash” behavior. Also relaxes layer-name collection to skip missing layers rather than terminating the process.
Changes:
- Add dedicated
get_attr/set_attrfor dotted attribute access (including parameter attributes like...weight) with “missing returns/no-op” behavior. - Refactor
get_module/set_moduleto useget_submodule/set_submodule, returningNone/ no-op on missing paths. - In
_get_quantized_layer_names_outside_blocks, skip missing layers with a one-time warning instead of exiting.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
auto_round/utils/model.py |
Introduces get_attr/set_attr and switches module replacement to get_submodule/set_submodule while preserving non-fail-fast behavior. |
auto_round/compressors/base.py |
Avoids hard exit when a configured layer path is missing; logs and continues. |
Contributor
|
/azp run Unit-Test-CUDA-AutoRound |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Contributor
|
/azp run Unit-Test-CUDA-AutoRound |
|
Azure Pipelines successfully started running 1 pipeline(s). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
@xin3he
Refactor module access to use PyTorch get_submodule / set_submodule for exact dotted module paths, while preserving prior “missing path should not crash” behavior by catching AttributeError/KeyError. This avoids CI failures caused by optional/missing submodules in some model variants.
Note: This is a new PR because I accidentally closed the previous one while iterating on the fix.
Type of Change: Bug fix / Refactor.