pub struct UsageLimits {
pub max_request_tokens: Option<u64>,
pub max_response_tokens: Option<u64>,
pub max_total_tokens: Option<u64>,
pub max_requests: Option<u64>,
}Expand description
Usage limits for a run.
Fields§
§max_request_tokens: Option<u64>Maximum request tokens per request.
max_response_tokens: Option<u64>Maximum response tokens per request.
max_total_tokens: Option<u64>Maximum total tokens for the run.
max_requests: Option<u64>Maximum number of requests.
Implementations§
Source§impl UsageLimits
impl UsageLimits
Sourcepub fn new() -> UsageLimits
pub fn new() -> UsageLimits
Create new empty limits.
Sourcepub fn max_request_tokens(self, tokens: u64) -> UsageLimits
pub fn max_request_tokens(self, tokens: u64) -> UsageLimits
Set max request tokens.
Sourcepub fn max_response_tokens(self, tokens: u64) -> UsageLimits
pub fn max_response_tokens(self, tokens: u64) -> UsageLimits
Set max response tokens.
Sourcepub fn max_total_tokens(self, tokens: u64) -> UsageLimits
pub fn max_total_tokens(self, tokens: u64) -> UsageLimits
Set max total tokens.
Sourcepub fn max_requests(self, requests: u64) -> UsageLimits
pub fn max_requests(self, requests: u64) -> UsageLimits
Set max requests.
Sourcepub fn check(&self, usage: &RunUsage) -> Result<(), UsageLimitExceeded>
pub fn check(&self, usage: &RunUsage) -> Result<(), UsageLimitExceeded>
Check if usage exceeds limits.
Returns Ok(()) if within limits, or an error describing which limit was exceeded.
Sourcepub fn has_limits(&self) -> bool
pub fn has_limits(&self) -> bool
Check if any limits are set.
Trait Implementations§
Source§impl Clone for UsageLimits
impl Clone for UsageLimits
Source§fn clone(&self) -> UsageLimits
fn clone(&self) -> UsageLimits
Returns a duplicate of the value. Read more
1.0.0 · 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 UsageLimits
impl Debug for UsageLimits
Source§impl Default for UsageLimits
impl Default for UsageLimits
Source§fn default() -> UsageLimits
fn default() -> UsageLimits
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for UsageLimits
impl<'de> Deserialize<'de> for UsageLimits
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<UsageLimits, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<UsageLimits, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for UsageLimits
impl PartialEq for UsageLimits
Source§impl Serialize for UsageLimits
impl Serialize for UsageLimits
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Eq for UsageLimits
impl StructuralPartialEq for UsageLimits
Auto Trait Implementations§
impl Freeze for UsageLimits
impl RefUnwindSafe for UsageLimits
impl Send for UsageLimits
impl Sync for UsageLimits
impl Unpin for UsageLimits
impl UnwindSafe for UsageLimits
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.