The doctrine in one line: unknown stays unknown. An energy figure
Nika cannot prove is never rendered as 0 Wh, a local model is
unpriced — your hardware, your watts — never « free », and every
figure carries WHO measured it and WHAT it covers, so two honest
numbers stay comparable.
Status · the doctrine and the data rail ship today — the model
catalog carries sourced energy facts (schema
@1.3, absence over
guess). The ENERGY line in nika check and the --max-energy-wh
gate are specified by
NEP-0018
(Draft) and land with its implementation. This page states the contract
those surfaces honor — it does not claim they render yet.The vocabulary
Energy speaks the same four words as cost, with the same semantics:A fact, not a vibe
An energy figure enters the catalog as a five-field fact or not at all:groq / qwen/qwen3-32b). Open-weight models are the measurable
frontier: a third party can put them on a bench. Closed APIs stay
unpriced until a vendor discloses or an independent methodology
covers them — that asymmetry is honest, and the catalog keeps it.
Two axes make two honest numbers comparable:
provenance— who produced the number:measured-local(a probe on your machine) ·independent-measured(a third-party benchmark) ·vendor-claim·independent-estimate(modelling, labelled as such — an estimate may enter explicitly, never as a silent default).scope— what it covers:gpu(accelerator only) ·device(whole host) ·fleet(host + idle + datacenter PUE). A GPU-only figure is roughly half a fleet figure for the same model: without this axis, two truthful numbers are silently incomparable.
wh_per_mtok_out)
because decode dominates measured inference energy (≥96% in the
ML.energy v3.0 methodology) — a per-total figure would dilute the
number with nearly-free prefill and reward long prompts.
Why never 0 Wh
0 Wh would claim free inference. Nothing is: a local model draws from
your wall, an unmeasured cloud call draws from someone’s datacenter.
The catalog refuses a zero at build time — the null is the absent
fact, and an absent fact renders unpriced, exactly as an unpriced
model renders on the cost side. If you have never seen an energy number
in a Nika surface, that is the feature: no number was provable, so no
number was shown.
What lands with NEP-0018
The specified surfaces, stated here so their contract is public before their code:- an
ENERGYreading besideCOSTinnika check— bounded part as≤ N Whwith the scope axis named, every uncapped task named with its reason, unmeasured modelsunpriced, mixed scopes never silently summed; - energy aggregation in
nika:inspectunder the same markers; --max-energy-wh— a block-before-spend gate symmetric to--max-cost-usd: refusal, not remorse.