pub struct RoutingRequirements {
pub required_capabilities: BTreeSet<RoutingCapability>,
pub min_context_tokens: u64,
pub max_input_tokens: u64,
pub reserved_output_tokens: u64,
pub max_estimated_cost_microusd: Option<u64>,
pub max_latency_ms: Option<u64>,
pub require_known_pricing: bool,
pub require_known_latency: bool,
}Expand description
Runtime-owned requirements and hard budgets for one model decision.
Fields§
§required_capabilities: BTreeSet<RoutingCapability>Capabilities the route must support (e.g. streaming, tools).
min_context_tokens: u64Minimum context window any eligible candidate must offer.
max_input_tokens: u64Max input token budget for the route decision.
reserved_output_tokens: u64Reserved output token budget reserved for responses.
max_estimated_cost_microusd: Option<u64>Optional maximum estimated cost in micro-USD.
max_latency_ms: Option<u64>Optional maximum accepted latency in milliseconds.
require_known_pricing: boolWhen true, pricing-unknown candidates are excluded.
require_known_latency: boolWhen true, latency-unknown candidates are excluded.
Implementations§
Source§impl RoutingRequirements
impl RoutingRequirements
Sourcepub fn validate(&self) -> Result<(), RoutingError>
pub fn validate(&self) -> Result<(), RoutingError>
Rejects zero or negative budgets and missing required values.
Trait Implementations§
Source§impl Clone for RoutingRequirements
impl Clone for RoutingRequirements
Source§fn clone(&self) -> RoutingRequirements
fn clone(&self) -> RoutingRequirements
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RoutingRequirements
impl Debug for RoutingRequirements
Source§impl<'de> Deserialize<'de> for RoutingRequirements
impl<'de> Deserialize<'de> for RoutingRequirements
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for RoutingRequirements
Source§impl PartialEq for RoutingRequirements
impl PartialEq for RoutingRequirements
Source§impl Serialize for RoutingRequirements
impl Serialize for RoutingRequirements
impl StructuralPartialEq for RoutingRequirements
Auto Trait Implementations§
impl Freeze for RoutingRequirements
impl RefUnwindSafe for RoutingRequirements
impl Send for RoutingRequirements
impl Sync for RoutingRequirements
impl Unpin for RoutingRequirements
impl UnsafeUnpin for RoutingRequirements
impl UnwindSafe for RoutingRequirements
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more