Skip to content

Commit 5db32c0

Browse files
Copilotjustinchuby
andauthored
[ez] Expose FOLDED_FROM_KEY to onnxscript.optimizer public API (#2773)
The `FOLDED_FROM_KEY` constant was previously only accessible from the private `_constant_folding` module, making it difficult for users to interact with constant folding metadata. ## Changes - Exported `FOLDED_FROM_KEY` in `onnxscript/optimizer/__init__.py` by adding it to `__all__` and importing from `_constant_folding` - Added test coverage to ensure the constant remains publicly accessible ## Usage ```python from onnxscript.optimizer import FOLDED_FROM_KEY # Use the key to access metadata about folded constants folded_values = output.meta.get(FOLDED_FROM_KEY, set()) ``` The constant value is `"pkg.onnxscript.optimizer.folded_from"`, used to track which values were folded during constant folding optimization. <!-- START COPILOT ORIGINAL PROMPT --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>Expose FOLDED_FROM_KEY to public</issue_title> > <issue_description>Expose FOLDED_FROM_KEY to onnxscript.optimizer for public consumption.</issue_description> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > </comments> > </details> <!-- START COPILOT CODING AGENT SUFFIX --> - Fixes #2772 <!-- START COPILOT CODING AGENT TIPS --> --- 💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more [Copilot coding agent tips](https://gh.io/copilot-coding-agent-tips) in the docs. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: justinchuby <11205048+justinchuby@users.noreply.github.com>
1 parent e45724c commit 5db32c0

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

onnxscript/optimizer/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"basic_constant_propagation",
99
"fold_constants_ir",
1010
"fold_constants",
11+
"FOLDED_FROM_KEY",
1112
"inline",
1213
"optimize_ir",
1314
"optimize",
@@ -19,7 +20,7 @@
1920

2021
import onnxscript.optimizer._constant_folding as constant_folding
2122
from onnxscript import ir
22-
from onnxscript.optimizer._constant_folding import basic_constant_propagation
23+
from onnxscript.optimizer._constant_folding import FOLDED_FROM_KEY, basic_constant_propagation
2324
from onnxscript.optimizer._constant_folding import fold_constants as fold_constants_ir
2425
from onnxscript.optimizer._optimizer import optimize_ir
2526

onnxscript/optimizer/_optimizer_test.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@
1010

1111

1212
class OptimizerTest(unittest.TestCase):
13+
def test_folded_from_key_is_accessible(self):
14+
"""Test that FOLDED_FROM_KEY is accessible from the public API."""
15+
self.assertTrue(hasattr(optimizer, "FOLDED_FROM_KEY"))
16+
self.assertIsInstance(optimizer.FOLDED_FROM_KEY, str)
17+
self.assertEqual(optimizer.FOLDED_FROM_KEY, "pkg.onnxscript.optimizer.folded_from")
18+
1319
def _model_proto(self) -> onnx.ModelProto:
1420
return onnx.parser.parse_model(
1521
"""

0 commit comments

Comments
 (0)