{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "cf2246a7ad439fa38d57462118e7840e5497a685",
    "tool": "pyref",
    "version": "1.7.3"
  },
  "language": "python",
  "modules": [
    {
      "description": "",
      "name": "ConvertArgs",
      "path": "helia_aot.cli.defines.ConvertArgs",
      "submodules": [],
      "summary": "",
      "symbols": [
        {
          "description": "Configuration for the conversion process.",
          "examples": [],
          "id": "helia_aot.cli.defines.ConvertArgs",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "Path to yaml configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.path",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "path",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "path: Path = Field(default_factory=lambda : ..., exclude=True, description='Path to yaml configuration')",
              "source": {
                "line": 495,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L495"
              },
              "summary": ""
            },
            {
              "description": "Model configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.model",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "model",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "model: ModelArgs = Field(default_factory=ModelArgs, description='Model configuration')",
              "source": {
                "line": 500,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L500"
              },
              "summary": ""
            },
            {
              "description": "Module configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.module",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "module",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "module: ModuleArgs = Field(default_factory=ModuleArgs, description='Module configuration')",
              "source": {
                "line": 501,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L501"
              },
              "summary": ""
            },
            {
              "description": "Test configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.test",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "test",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "test: TestArgs = Field(default_factory=TestArgs, description='Test configuration')",
              "source": {
                "line": 502,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L502"
              },
              "summary": ""
            },
            {
              "description": "Transforms configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.transforms",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "transforms",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "transforms: list[TransformSpec] = Field(default_factory=list, description='Transforms configuration')",
              "source": {
                "line": 503,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L503"
              },
              "summary": ""
            },
            {
              "description": "Memory configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.memory",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "memory",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "memory: MemoryArgs = Field(default_factory=MemoryArgs, description='Memory configuration')",
              "source": {
                "line": 504,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L504"
              },
              "summary": ""
            },
            {
              "description": "Target platform configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.platform",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "platform",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "platform: PlatformArgs = Field(default_factory=PlatformArgs, description='Target platform configuration')",
              "source": {
                "line": 505,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L505"
              },
              "summary": ""
            },
            {
              "description": "Operator attribute rules and\noptimization knob overrides.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.operators",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "operators",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "operators: list[OperatorRuleset] = Field(default_factory=list, description='Operator attributes and optimization knob overrides')",
              "source": {
                "line": 506,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L506"
              },
              "summary": ""
            },
            {
              "description": "Documentation configuration.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.documentation",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "documentation",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "documentation: DocumentationArgs = Field(default_factory=DocumentationArgs, description='Documentation configuration')",
              "source": {
                "line": 518,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L518"
              },
              "summary": ""
            },
            {
              "description": "Optimization goal, approximation\ngate and knobs.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.optimization",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "optimization",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "optimization: OptimizationArgs = Field(default_factory=OptimizationArgs, description='Optimization goal, approximation gate and knobs')",
              "source": {
                "line": 521,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L521"
              },
              "summary": ""
            },
            {
              "description": "Verbosity level (0-3).",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.verbose",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "verbose",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "verbose: int = Field(1, ge=0, le=3, description='Verbosity level')",
              "source": {
                "line": 524,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L524"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.force",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "force",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "force: bool = Field(False, description='Force conversion even if output exists')",
              "source": {
                "line": 525,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L525"
              },
              "summary": ""
            },
            {
              "description": "Keep the temporary work directory after the\nconversion instead of removing it, and log its path.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.keep_work_dir",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "keep_work_dir",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "keep_work_dir: bool = Field(False, description='Keep the temporary work directory and log its path')",
              "source": {
                "line": 526,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L526"
              },
              "summary": ""
            },
            {
              "description": "Optional log file path.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.log_file",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "log_file",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "log_file: Path | None = Field(None, description='Optional log file path')",
              "source": {
                "line": 527,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L527"
              },
              "summary": ""
            },
            {
              "description": "Return the operator attribute rules, without optimization knobs.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.operator_rules",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "operator_rules",
              "params": [],
              "raises": [],
              "returns": [
                {
                  "description": "list[AttributeRuleset]: The rules to resolve operator attributes from.",
                  "type": "list[AttributeRuleset]"
                }
              ],
              "signature": "operator_rules() -> list[AttributeRuleset]",
              "source": {
                "line": 529,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L529"
              },
              "summary": "Return the operator attribute rules, without optimization knobs."
            },
            {
              "description": "Return the optimization knob rules, resolved like attributes but on their own channel.\n\nThe model-wide knobs (``optimization.accumulation``) become a leading\n``\"*\"`` rule, so every ``operators[].optimization`` override wins over\nthem with the usual type/id specificity.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.knob_rules",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "knob_rules",
              "params": [
                {
                  "default": "True",
                  "description": "Lead with the model-wide knob rule.",
                  "name": "include_model_knobs",
                  "type": "bool"
                }
              ],
              "raises": [],
              "returns": [
                {
                  "description": "list[AttributeRuleset]: Rules whose attributes are knob values.",
                  "type": "list[AttributeRuleset]"
                }
              ],
              "signature": "knob_rules(*, include_model_knobs: bool = True) -> list[AttributeRuleset]",
              "source": {
                "line": 539,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L539"
              },
              "summary": "Return the optimization knob rules, resolved like attributes but on their own channel."
            },
            {
              "description": "Return the model-wide value of every knob, ``auto`` where unset.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.model_knob_values",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "model_knob_values",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "model_knob_values() -> dict[str, str]",
              "source": {
                "line": 558,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L558"
              },
              "summary": "Return the model-wide value of every knob, auto where unset."
            },
            {
              "description": "Return the knobs set explicitly under ``optimization``, even when set to ``auto``.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.explicit_model_knobs",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "explicit_model_knobs",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "explicit_model_knobs() -> frozenset[str]",
              "source": {
                "line": 562,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L562"
              },
              "summary": "Return the knobs set explicitly under optimization, even when set to auto."
            },
            {
              "description": "Return each ``operators[]`` rule that overrides knobs, with its position.",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.operator_knob_rules",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "operator_knob_rules",
              "params": [],
              "raises": [],
              "returns": [
                {
                  "description": "list[tuple[int, AttributeRuleset]]: ``(index in operators, rule)``,",
                  "type": "list[tuple[int, AttributeRuleset]]"
                },
                {
                  "description": "where the rule's attributes are its knob overrides.",
                  "type": "list[tuple[int, AttributeRuleset]]"
                }
              ],
              "signature": "operator_knob_rules() -> list[tuple[int, AttributeRuleset]]",
              "source": {
                "line": 566,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L566"
              },
              "summary": "Return each operators[] rule that overrides knobs, with its position."
            },
            {
              "description": "`classmethod`\n\nLoad a conversion config from a YAML file.\n\nThe canonical programmatic entry point mirroring the CLI's ``--path``\n(without the CLI's flag-override merge):\n\n    config = ConvertArgs.from_yaml(\"my-model.yaml\")\n    AotConverter(config=config).convert()",
              "examples": [],
              "id": "helia_aot.cli.defines.ConvertArgs.from_yaml",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "from_yaml",
              "params": [
                {
                  "description": "Path to a YAML mapping of conversion options.",
                  "name": "path",
                  "type": "str | Path"
                }
              ],
              "raises": [
                {
                  "description": "If ``path`` does not exist.",
                  "type": "FileNotFoundError"
                },
                {
                  "description": "If the file is not a YAML mapping.",
                  "type": "ValueError"
                }
              ],
              "returns": [
                {
                  "description": "The validated configuration; unknown nested keys warn as usual.",
                  "type": "ConvertArgs"
                }
              ],
              "signature": "from_yaml(path: str | Path) -> ConvertArgs",
              "source": {
                "line": 584,
                "path": "helia_aot/cli/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L584"
              },
              "summary": "Load a conversion config from a YAML file."
            }
          ],
          "name": "ConvertArgs",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ConvertArgs()",
          "source": {
            "line": 473,
            "path": "helia_aot/cli/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/cli/defines.py#L473"
          },
          "summary": "Configuration for the conversion process."
        }
      ]
    }
  ],
  "name": "helia_aot"
}
