pub struct LlmUsage {
pub input_tokens: i32,
pub output_tokens: i32,
pub total_tokens: i32,
pub cache_read_tokens: Option<i32>,
pub cache_creation_tokens: Option<i32>,
pub thinking_tokens: Option<i32>,
pub audio_input_tokens: Option<i32>,
pub audio_output_tokens: Option<i32>,
}Available on crate feature
telemetry only.Expand description
Token usage data for recording on tracing spans.
Mirrors the token count fields from adk_core::UsageMetadata without
depending on adk-core. Callers in adk-model convert from UsageMetadata
to this struct before recording.
§Example
use adk_telemetry::LlmUsage;
let usage = LlmUsage {
input_tokens: 100,
output_tokens: 50,
total_tokens: 150,
..Default::default()
};Fields§
§input_tokens: i32Prompt / input token count.
output_tokens: i32Completion / output token count.
total_tokens: i32Total token count.
cache_read_tokens: Option<i32>Tokens read from cache.
cache_creation_tokens: Option<i32>Tokens used to create cache.
thinking_tokens: Option<i32>Tokens used for chain-of-thought reasoning.
audio_input_tokens: Option<i32>Audio input token count.
audio_output_tokens: Option<i32>Audio output token count.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LlmUsage
impl RefUnwindSafe for LlmUsage
impl Send for LlmUsage
impl Sync for LlmUsage
impl Unpin for LlmUsage
impl UnsafeUnpin for LlmUsage
impl UnwindSafe for LlmUsage
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