{
  "$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": "# Defines API\n\n**Classes**\n\n| Name | Description |\n| --- | --- |\n| `ModuleType` | Enum representing the type of exported module. |\n\nCopyright 2025 Ambiq. All Rights Reserved.",
      "name": "defines",
      "path": "helia_aot.defines",
      "submodules": [],
      "summary": "Defines API",
      "symbols": [
        {
          "description": "",
          "examples": [],
          "id": "helia_aot.defines.ValidCVarNameType",
          "kind": "attribute",
          "language": "python",
          "members": [],
          "name": "ValidCVarNameType",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ValidCVarNameType = Annotated[str, StringConstraints(pattern=C_IDENTIFIER_PATTERN)]",
          "source": {
            "line": 25,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L25"
          },
          "summary": ""
        },
        {
          "description": "",
          "examples": [],
          "id": "helia_aot.defines.ValidModuleNameType",
          "kind": "attribute",
          "language": "python",
          "members": [],
          "name": "ValidModuleNameType",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ValidModuleNameType = Annotated[str, StringConstraints(pattern=MODULE_NAME_PATTERN)]",
          "source": {
            "line": 26,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L26"
          },
          "summary": ""
        },
        {
          "description": "Exported module type",
          "examples": [],
          "id": "helia_aot.defines.ModuleType",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "NeuralSpot module",
              "examples": [],
              "id": "helia_aot.defines.ModuleType.neuralspot",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "neuralspot",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "neuralspot: str = auto()",
              "source": {
                "line": 84,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L84"
              },
              "summary": ""
            },
            {
              "description": "Zephyr RTOS module",
              "examples": [],
              "id": "helia_aot.defines.ModuleType.zephyr",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "zephyr",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "zephyr: str = auto()",
              "source": {
                "line": 85,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L85"
              },
              "summary": ""
            },
            {
              "description": "CMake module",
              "examples": [],
              "id": "helia_aot.defines.ModuleType.cmake",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "cmake",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "cmake: str = auto()",
              "source": {
                "line": 86,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L86"
              },
              "summary": ""
            },
            {
              "description": "NSX module (neuralspotx build system)",
              "examples": [],
              "id": "helia_aot.defines.ModuleType.nsx",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "nsx",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "nsx: str = auto()",
              "source": {
                "line": 87,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L87"
              },
              "summary": ""
            },
            {
              "description": "CMSIS-Pack distribution (Open-CMSIS-Pack ``.pdsc``)",
              "examples": [],
              "id": "helia_aot.defines.ModuleType.cmsis_pack",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "cmsis_pack",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "cmsis_pack: str = auto()",
              "source": {
                "line": 88,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L88"
              },
              "summary": ""
            }
          ],
          "name": "ModuleType",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ModuleType()",
          "source": {
            "line": 73,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L73"
          },
          "summary": "Exported module type"
        },
        {
          "description": "Operator dispatch shape emitted into ``<prefix>_model.c``.\n\nSelects how ``model_init`` / ``model_run`` invoke each operator. Both modes\npreserve the public ABI (signatures, status enum, lifecycle latch and\nconstant hydration); only the internal dispatch differs.",
          "examples": [],
          "id": "helia_aot.defines.ScheduleMode",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "Runtime function-pointer table iterated by a ``for`` loop,\nwith the per-node ``ctx->callback`` instrumentation seam preserved.\nThe integration shape for RTOS scheduling / PMU sampling.",
              "examples": [],
              "id": "helia_aot.defines.ScheduleMode.table",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "table",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "table: str = auto()",
              "source": {
                "line": 108,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L108"
              },
              "summary": ""
            },
            {
              "description": "A straight-line sequence of direct calls to each\noperator's ``_run`` (and ``_init``) symbol. No function-pointer\ntable, no loop, no indirect dispatch — the AOT-correct shape that is\nfully optimizer-visible. The per-node callback seam is omitted.",
              "examples": [],
              "id": "helia_aot.defines.ScheduleMode.static",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "static",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "static: str = auto()",
              "source": {
                "line": 109,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L109"
              },
              "summary": ""
            }
          ],
          "name": "ScheduleMode",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ScheduleMode()",
          "source": {
            "line": 91,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L91"
          },
          "summary": "Operator dispatch shape emitted into <prefix>model.c."
        },
        {
          "description": "What the static ``auto`` choices of the optimization knobs favor.",
          "examples": [],
          "id": "helia_aot.defines.OptimizationGoal",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.LATENCY",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "LATENCY",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "LATENCY = 'latency'",
              "source": {
                "line": 177,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L177"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.BALANCED",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "BALANCED",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "BALANCED = 'balanced'",
              "source": {
                "line": 178,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L178"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.SIZE",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "SIZE",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "SIZE = 'size'",
              "source": {
                "line": 179,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L179"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.ACCURACY",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "ACCURACY",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "ACCURACY = 'accuracy'",
              "source": {
                "line": 180,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L180"
              },
              "summary": ""
            },
            {
              "description": "Faster inference, allowing approximate values when\n``optimization.allow_approximate`` is true.",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.latency",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "latency",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "latency",
              "source": {
                "line": 1,
                "path": "helia_aot/defines/OptimizationGoal"
              },
              "summary": "Faster inference, allowing approximate values when ``optimization.allow_approximate`` is true."
            },
            {
              "description": "Today's defaults: no approximate knob values, and packed\nlayouts only where they keep the default numerics and are faster.",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.balanced",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "balanced",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "balanced",
              "source": {
                "line": 1,
                "path": "helia_aot/defines/OptimizationGoal"
              },
              "summary": "Today's defaults: no approximate knob values, and packed layouts only where they keep the default numerics and are faster."
            },
            {
              "description": "Smaller code and constants. No knob has a size-specific value\nyet, so today it resolves like ``balanced``.",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.size",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "size",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "size",
              "source": {
                "line": 1,
                "path": "helia_aot/defines/OptimizationGoal"
              },
              "summary": "Smaller code and constants."
            },
            {
              "description": "The most accurate value of every knob.",
              "examples": [],
              "id": "helia_aot.defines.OptimizationGoal.accuracy",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "accuracy",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "accuracy",
              "source": {
                "line": 1,
                "path": "helia_aot/defines/OptimizationGoal"
              },
              "summary": "The most accurate value of every knob."
            }
          ],
          "name": "OptimizationGoal",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "OptimizationGoal()",
          "source": {
            "line": 164,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L164"
          },
          "summary": "What the static auto choices of the optimization knobs favor."
        },
        {
          "description": "The ``accumulation`` knob: how FP16 kernels that offer a choice accumulate.\n\n``precise`` keeps the standard weight layout and the kernel library's\ndefault accumulation: today FP16 partial sums in vector lanes on MVE, and\nblockwise FP16 partials folded into FP32 once ns-cmsis-nn provides it.\n``fast`` packs the weights so output channels become vector lanes and\naccumulates each output in one long FP16 chain; it is approximate relative\nto ``precise``. Both accumulate in FP16 on MVE today. ``auto`` follows\n``optimization.goal``.",
          "examples": [],
          "id": "helia_aot.defines.Accumulation",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.Accumulation.AUTO",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "AUTO",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "AUTO = 'auto'",
              "source": {
                "line": 195,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L195"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.Accumulation.PRECISE",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "PRECISE",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "PRECISE = 'precise'",
              "source": {
                "line": 196,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L196"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.Accumulation.FAST",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "FAST",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "FAST = 'fast'",
              "source": {
                "line": 197,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L197"
              },
              "summary": ""
            }
          ],
          "name": "Accumulation",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "Accumulation()",
          "source": {
            "line": 183,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L183"
          },
          "summary": "The accumulation knob: how FP16 kernels that offer a choice accumulate."
        },
        {
          "description": "The ``kernel`` knob: which ns-cmsis-nn entry an int8 convolution or depthwise layer calls.\n\n``specialized`` calls a shape-specialized direct entry where one applies\n(for example ``arm_convolve_s8_small_cin`` or\n``arm_depthwise_conv_s8_opt_3x3``). ``generic`` keeps the general entry\n(``arm_convolve_s8``, ``arm_depthwise_conv_s8_opt``), so a model links\nfewer distinct kernels. Both give identical output. ``auto`` follows\n``optimization.goal``.",
          "examples": [],
          "id": "helia_aot.defines.KernelChoice",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.KernelChoice.AUTO",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "AUTO",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "AUTO = 'auto'",
              "source": {
                "line": 211,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L211"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.KernelChoice.SPECIALIZED",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "SPECIALIZED",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "SPECIALIZED = 'specialized'",
              "source": {
                "line": 212,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L212"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.defines.KernelChoice.GENERIC",
              "kind": "constant",
              "language": "python",
              "members": [],
              "name": "GENERIC",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "GENERIC = 'generic'",
              "source": {
                "line": 213,
                "path": "helia_aot/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L213"
              },
              "summary": ""
            }
          ],
          "name": "KernelChoice",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "KernelChoice()",
          "source": {
            "line": 200,
            "path": "helia_aot/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/cf2246a7ad439fa38d57462118e7840e5497a685/helia_aot/defines.py#L200"
          },
          "summary": "The kernel knob: which ns-cmsis-nn entry an int8 convolution or depthwise layer calls."
        }
      ]
    }
  ],
  "name": "helia_aot"
}
