pub struct SessionUsage {
pub input_tokens: u64,
pub cached_input_tokens: Option<u64>,
pub output_tokens: u64,
pub total_cost: Decimal,
pub tokens_unknown: bool,
pub cost_unknown: bool,
}Expand description
Request totals for a session, independent of its current context window.
Fields§
§input_tokens: u64Total input tokens, including cached input.
cached_input_tokens: Option<u64>Cached input included in input_tokens. Older saves lack this breakdown.
output_tokens: u64Total generated tokens across all requests.
total_cost: DecimalKnown request costs in USD, serialized without rounding.
tokens_unknown: boolHistorical token totals were not recorded for this session.
cost_unknown: boolAt least one request did not have pricing available.
Implementations§
Source§impl SessionUsage
impl SessionUsage
Sourcepub fn add(&mut self, usage: &TokenUsage, pricing: &ModelPricing)
pub fn add(&mut self, usage: &TokenUsage, pricing: &ModelPricing)
Add one request using its model pricing, including cache discounts.
Trait Implementations§
Source§impl Clone for SessionUsage
impl Clone for SessionUsage
Source§impl Debug for SessionUsage
impl Debug for SessionUsage
Source§impl Default for SessionUsage
impl Default for SessionUsage
Source§impl<'de> Deserialize<'de> for SessionUsage
impl<'de> Deserialize<'de> for SessionUsage
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 SessionUsage
Source§impl PartialEq for SessionUsage
impl PartialEq for SessionUsage
Source§impl Serialize for SessionUsage
impl Serialize for SessionUsage
impl StructuralPartialEq for SessionUsage
Auto Trait Implementations§
impl Freeze for SessionUsage
impl RefUnwindSafe for SessionUsage
impl Send for SessionUsage
impl Sync for SessionUsage
impl Unpin for SessionUsage
impl UnsafeUnpin for SessionUsage
impl UnwindSafe for SessionUsage
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