Monk Loom

Model configuration reference

A developer controls the following canonical fields. Unknown members are rejected by the Python contract; generated images always store canonical JSON.

SettingChoices or rangeEffect
attachment_id, namePortable id; display nameStable identity and diagnostics.
modeobserve, advisory, adaptiveDeclares the host usage envelope. All remain non-authoritative.
learning_modefrozen, verified-headEnables proposal-only final-layer updates when mode is adaptive.
fixed_point_scale1..32767Represents one logical unit; 1024 is the normal default.
value_limit1..32767Saturates every layer and bounds targets.
parameter_budget1..1,000,000Rejects unexpectedly large models before evaluation.
learning_rate_ppm0..1,000,000Integer learning rate for verified-head proposals.
max_weight_step, max_bias_step0..value limitCaps each proposed parameter movement.
model_revision, parent_fingerprintPositive revision; SHA-256 parentForms an auditable model lineage.

Features

Each feature has a unique portable name, inclusive minimum and maximum, optional default, and description. A missing feature without a default fails. Extra feature names also fail; the runtime never silently ignores input.

Outputs

Each output has a unique label, activation threshold, and description. The highest score is selected; equal scores keep declaration order. Thresholds independently mark any number of outputs active.

Layers

Layers contain rectangular integer weight matrices, one integer bias per output row, and either linear or relu activation. Adjacent widths must match. Verified-head learning requires a linear final layer.

result = clamp(bias + trunc_toward_zero(sum(weight × input) / scale))