pub struct TokenBudget {
pub max_input_tokens: Option<u64>,
pub max_output_tokens: Option<u64>,
pub max_total_tokens: Option<u64>,
pub max_iters_per_round: u32,
}Expand description
A declarative spend ceiling for a single round of a loop.
None on a field means “no limit on this axis”. max_iters_per_round
caps how many tool-using iterations each sub-agent may take and is the
one limit that is always present (sub-agents need a finite iteration
budget regardless).
Fields§
§max_input_tokens: Option<u64>Max input (prompt) tokens summed across all sub-agents in a round.
max_output_tokens: Option<u64>Max output (completion) tokens summed across the round.
max_total_tokens: Option<u64>Max total (input + output) tokens for the round.
max_iters_per_round: u32Iteration cap handed to each sub-agent’s loop.
Implementations§
Source§impl TokenBudget
impl TokenBudget
Sourcepub fn iters(max_iters_per_round: u32) -> Self
pub fn iters(max_iters_per_round: u32) -> Self
A budget with only an iteration cap (no token ceilings).
pub fn with_max_total_tokens(self, n: u64) -> Self
pub fn with_max_input_tokens(self, n: u64) -> Self
pub fn with_max_output_tokens(self, n: u64) -> Self
pub fn with_max_iters_per_round(self, n: u32) -> Self
Trait Implementations§
Source§impl Clone for TokenBudget
impl Clone for TokenBudget
Source§fn clone(&self) -> TokenBudget
fn clone(&self) -> TokenBudget
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 moreimpl Copy for TokenBudget
Source§impl Debug for TokenBudget
impl Debug for TokenBudget
Source§impl Default for TokenBudget
impl Default for TokenBudget
Source§impl<'de> Deserialize<'de> for TokenBudget
impl<'de> Deserialize<'de> for TokenBudget
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 TokenBudget
Source§impl PartialEq for TokenBudget
impl PartialEq for TokenBudget
Source§fn eq(&self, other: &TokenBudget) -> bool
fn eq(&self, other: &TokenBudget) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for TokenBudget
impl Serialize for TokenBudget
impl StructuralPartialEq for TokenBudget
Auto Trait Implementations§
impl Freeze for TokenBudget
impl RefUnwindSafe for TokenBudget
impl Send for TokenBudget
impl Sync for TokenBudget
impl Unpin for TokenBudget
impl UnsafeUnpin for TokenBudget
impl UnwindSafe for TokenBudget
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