Add an image baseline¶
Topics: generation, kudos, workers
Adding a model on an existing baseline needs no change here: publish it to the model reference and
the service picks it up. A new architecture needs a baseline record published on models.aihorde.net,
and a row in horde/bridge_reference.py only once a bridge release renders something on it. The
baseline policy reference documents what each authority decides.
An uncatalogued baseline is priced at par and accepted for plain txt2img requests, so the models can land before the record does.
1. Publish the baseline record¶
Submit the record through the model reference's baseline resource. Its capabilities state what
exists for the family:
{
"name": "my_baseline",
"display_name": "My Baseline",
"native_resolution": 1024,
"capabilities": {
"controlnet": false,
"controlnet_types_unavailable": [],
"transparent": false,
"qr_code": false,
"remix": false,
"flow_matching": true
},
"horde_policy": {
"kudos": 8,
"batching": 8,
"ttl": 3,
"resolution_floor": 1024
}
}
Answer each capability from what has been published for the architecture, not from the model card.
horde_policy states only what departs from par; the fields are described in the
reference page.
The record is served to every replica, so a pricing change reaches the API within the hour without a deployment.
2. Add the bridge row when a release renders a feature¶
Engine support is not a property of the architecture: it is a property of a bridge release. When a
release adds hires_fix, control_type, flow_shift or transparent on the new baseline, add it to
that release's version in BRIDGE_BASELINE_FEATURES:
Land the bridge release first. Until the row exists the four features are refused for the baseline, which is the correct answer: a bridge that ignores the field renders something the request did not ask for rather than reporting an error.
3. Update the reference page¶
Add the release row to the bridge table in the reference page.
4. Verify¶
The parity suite compares every request shape against the rules this design replaced, so a capability answered wrongly shows up as an unadjudicated difference rather than as silence.