103 if (
cfg.max_sessions > 1) {
104 if (
cfg.n_parallel > 1) {
105 reason =
"max_sessions > 1 conflicts with n_parallel > 1: a "
106 "session pool needs private per-session KV streams, "
107 "while the same-prefix batch fan-out "
108 "(entropic_run_batch) needs a unified buffer. Set one "
109 "or the other, not both.";
110 }
else if (
cfg.context_length <= 0) {
111 reason =
"max_sessions > 1 requires a positive context_length: "
112 "the pool allocates context_length * max_sessions "
Configuration structs with defaults.
Activate model on GPU (WARM → ACTIVE).
@ optional
optional: every escape asks the host's path approver
PoolGeometry derive_pool_geometry(const ModelConfig &cfg)
Derive the context geometry a tier's config implies.
std::string session_pool_conflict_reason(const ModelConfig &cfg)
Why this tier's session-pool request cannot be honoured.
Model configuration for a single tier.
Context geometry derived from a tier's session-pool request.
int n_seq_max
cparams.n_seq_max
int n_ctx
cparams.n_ctx (TOTAL cells, all streams)
int temp_seq_base
First seq id the batch fan-out may use.
bool kv_unified
cparams.kv_unified