Skip to content

Explanation

Explanation pages connect the SDK's abstractions to the constraints they solve. Use them when you need a mental model before choosing an extension point or debugging an interaction.

Documents

Document Summary
Client layers and ownership Explain why the SDK separates transport, sessions, manual operations, and simple polling clients.
Typed request and response design Explain how Pydantic models bind Python types, wire aliases, endpoint metadata, and compatibility behavior.
Generation parameters and templates Explain why reusable generation intent is separated from API payload and backend representations.
Worker jobs, generations, and state Explain how worker jobs coordinate popped requests while generations own individual backend results.
Package architecture Explain package boundaries from generic API contracts through AI Horde models, workers, and backend adapters.
Backend normalization Explain why backend-native names and shapes are converted at dispatch and parsing boundaries.
Dispatch normalization Explain how feature requirements, worker advertisements, and parameter conversion select executable work.

Planned

Not yet documented in full. Each page describes its subsystem briefly and names the code that holds the behavior.

Document Scope
Operation chaining Explain why worker operations are represented as dependency graphs with explicit shared context.
Ratings integration Explain the separate ratings-service boundary and how its client relates to generation results.
Model-reference integration design Explain how static model metadata complements live worker availability without replacing it.