Schema
Use this reference to inspect fields, methods, accepted values and failure outcomes. For setup and working examples, start with the API guide.
Definition: abstraction.model.api
Service ModelResolver [DEF-S1]
Same-account identity-bound model lookup through explicitly configured registry providers. A resolved request contains a nonempty verified-format digest and a complete HTTP(S) mapping, anonymous or naming the Ref's credential. Providers refuse mappings needing capabilities absent from the portable download request. Local adapters and registry configuration remain explicit provider-side APIs.
Wire identity: abstraction.model/resolver@1
Multiple services share this namespace. Generated ServiceName (Go) and service_name (C++/Python) validate the request envelope and version before returning its service identity for routing. The selected generated dispatcher validates the method and typed arguments; the selector does not authorize callers or interpret method payloads.
Frames carry version, service, method and typed arguments. Transport owns framing, associated exchanges, deadlines and connections. Unknown version/service/method and malformed arguments are rejected before invoking a handler. One-way WriteFrame success means local submission, not remote acceptance or persistence.
Request-response methods use ExchangeFrame. Replies carry version, service, method, ok and payload; success payload contains typed value (or an empty object for void). Error payload contains nonempty code and message, which may be empty. ServiceError preserves unknown codes. Unexpected handler failures become handler_error without private details; invalid results become invalid_result. Clients validate reply identity and result before exposing it. A malformed frame or transport failure remains a local error; the transport must associate each response with its exchange. C++ dispatchers are pure protocol bindings, not listening servers.
Resolve
request-response LookupResult
- Argument 1:
Ref ref (required, including zero/false/empty)
Service ModelManifest [DEF-S1]
Same-account identity-bound registry resolution to a storage manifest. The model service owns no bytes and walks no directories; stores and holders belong to the storage inventory.
Wire identity: abstraction.model/manifest@1
Multiple services share this namespace. Generated ServiceName (Go) and service_name (C++/Python) validate the request envelope and version before returning its service identity for routing. The selected generated dispatcher validates the method and typed arguments; the selector does not authorize callers or interpret method payloads.
Frames carry version, service, method and typed arguments. Transport owns framing, associated exchanges, deadlines and connections. Unknown version/service/method and malformed arguments are rejected before invoking a handler. One-way WriteFrame success means local submission, not remote acceptance or persistence.
Request-response methods use ExchangeFrame. Replies carry version, service, method, ok and payload; success payload contains typed value (or an empty object for void). Error payload contains nonempty code and message, which may be empty. ServiceError preserves unknown codes. Unexpected handler failures become handler_error without private details; invalid results become invalid_result. Clients validate reply identity and result before exposing it. A malformed frame or transport failure remains a local error; the transport must associate each response with its exchange. C++ dispatchers are pure protocol bindings, not listening servers.
A registry reference resolves to one manifest of kind abstraction.model/descriptor@1 with entries by role and a descriptor with family, quant, format, architecture, size_label, finetune, base, source and role. Portable download requests per entry come from resolver@1. No bytes move. role marks a component (MODEL-C3): weights for the servable artifact, or the closed vocabulary a storage inventory source's own classifier answers (projector, vae) for a part of one. A component's base then names the family it belongs to when its own name derives one, in place of base's other meaning of the model a weights file was fine-tuned from.
Resolve
request-response ManifestResult
- Argument 1:
Ref ref (required, including zero/false/empty)
Encoding [DEF-E1]
| setting | value | rule |
escape | minimal | [DEF-E2] |
indent | 2 | [DEF-E3] |
map_keys | utf8-bytes | [DEF-E4] |
numbers | integer-decimal | [DEF-E5] |
opaque | verbatim | [DEF-E6] |
terminator | newline | [DEF-E7] |
duplicate_keys | refuse | [DEF-E8] |
depth_limit | 64 | [DEF-E9] |
Types
| kind | types |
| built in | LookupOutcome ManifestOutcome string |
| declared below | content.Manifest request.Request |
Structs [DEF-T1]
A field is required, or says when it is omitted [DEF-A4]. Each struct says on its own what it does with a field name it has never heard of [DEF-A7]. A wire name never moves; where a language must spell it differently the field says so [DEF-A2].
Ref
the document [DEF-A1] · unknown fields refuse
| id | field | type | presence | named elsewhere |
| 1 | registry | string | required | — |
| 2 | repo | string | required | — |
| 3 | revision | string | required | — |
| 4 | quant | string | required | — |
| 5 | file | string | required | — |
| 6 | credential | string | optional · omitted when zero | — |
LookupResult
unknown fields refuse
| id | field | type | presence | named elsewhere |
| 1 | outcome | LookupOutcome | required | — |
| 2 | request | request.Request | optional · omitted when absent | — |
ManifestResult
unknown fields refuse
| id | field | type | presence | named elsewhere |
| 1 | outcome | ManifestOutcome | required | — |
| 2 | manifest | content.Manifest | optional · omitted when absent | — |
| 3 | resolved_revision | string | required | — |
Enumerations [DEF-T5]
Enum fields carry JSON strings containing exact member wire spellings, never numeric IDs. Unknown names are preserved with grant and refused as bad_enum with refuse on read and write. Optional absent fields preserve presence separately from an empty string.
An enumeration is a closed vocabulary of wire names, and each one says on its own what a reader does with a member it has never heard of [DEF-A5].
LookupOutcome
a member this reader does not know is refuse
| id | member | wire |
| 1 | resolved | resolved |
| 2 | invalid | invalid |
| 3 | unavailable | unavailable |
| 4 | unsupported_mapping | unsupported_mapping |
| 5 | forbidden | forbidden |
ManifestOutcome
a member this reader does not know is refuse
| id | member | wire |
| 1 | resolved | resolved |
| 2 | not_found | not_found |
| 3 | invalid | invalid |
| 4 | unavailable | unavailable |
| 5 | unsupported_mapping | unsupported_mapping |
| 6 | forbidden | forbidden |
Constants [DEF-A6]
| name | type | value |
resolver_operations | list<string> | Registry, Resolve |
registry_operations | list<string> | Add, SetLocal, Resolve |
Refusal words [DEF-R1]
| order | word | stage |
| 1 | malformed | grammar |
| 2 | bad_string | grammar |
| 3 | number_spelling | grammar |
| 4 | wrong_type | grammar |
| 5 | depth_exceeded | grammar |
| 6 | duplicate_key | grammar |
| 7 | duplicate_field | structure |
| 8 | unknown_field | structure |
| 9 | missing_field | structure |
| 10 | bad_enum | structure |
| 11 | trailing_bytes | document |