pub struct PlannerOptions {
pub min_followup_probability: f32,
pub bytes_per_token: u32,
pub latency_penalty_ms: Option<u32>,
pub dollar_penalty: Option<f32>,
}Expand description
Hard knobs the solver does not (yet) read from AdaptiveConfig.
Keeping them as a separate struct so the API stays additive.
Fields§
§min_followup_probability: f32Minimum FollowUpLink.probability for the link to be admitted.
Default 0.5 — corpus mining shows ~half of edges are usable
signals, the other half are noise.
bytes_per_token: u32Bytes-per-token assumption for the budget gate. We use 4 to match the existing pipeline heuristic; once Paper 2’s accurate tokenizer ships in this branch we switch to that.
latency_penalty_ms: Option<u32>Latency penalty knee — calls with cost_model.latency_ms_p50 ≥ this get their value-score halved. Picked at 5000 ms because
any prefetch slower than that is unlikely to land before the
LLM organically asks for it. None = latency-unaware (default).
dollar_penalty: Option<f32>Dollar penalty knee — calls with cost_model.dollars ≥ this
get their value-score halved. Picked at $0.10 / call. None
= dollar-unaware (default).
Implementations§
Source§impl PlannerOptions
impl PlannerOptions
Sourcepub fn cost_aware() -> Self
pub fn cost_aware() -> Self
Enable both latency and dollar awareness with sensible defaults (5 s knee, $0.10 knee). Useful in deployments where prefetch fan-out hits a paid API rate-limit or a slow upstream.
Trait Implementations§
Source§impl Clone for PlannerOptions
impl Clone for PlannerOptions
Source§fn clone(&self) -> PlannerOptions
fn clone(&self) -> PlannerOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more