Integrate task-model assignment routing for imitate inference via cf-orch /api/inference/task #62
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Background
cf-orch #60 shipped a three-layer task-model assignment system:
assignments.yaml):product.task → model_idmodel_registry.yaml):model_id → {service_type, vram_mb, alias, ...}Avocet already has the Assignments UI built (shipped alongside #60). This ticket is to wire up Avocet's own inference calls to use the new routing rather than hardcoded model selection.
Spec:
circuitforge-plans/circuitforge-orch/superpowers/specs/2026-05-13-task-model-assignments-design.mdWhat needs to change in Avocet
1. Register tasks in
assignments.yaml2. Migration path for call sites
app/imitate.py— style imitation, currently calls cf-orch with explicit model selectionapp/cforch.py— existing cf-orch proxy; add a helper that callsPOST /api/inference/taskfor task-based routingReplace explicit model selection with
{"product": "avocet", "task": "imitate", ...}calls.3. Self-referential note
Avocet manages the Assignments UI for the whole menagerie — including its own
avocet.*entries. This is intentional: Avocet operators can assign the imitate model via the same Assignments tab they use for other products.4. Backwards compatibility
This is opt-in — existing
POST /api/inferencecalls continue to work.Acceptance Criteria
assignments.yamlhasavocet.imitateentryapp/imitate.pycall site migrated to/api/inference/taskRelated
circuitforge-plans/circuitforge-orch/superpowers/specs/2026-05-13-task-model-assignments-design.md