Helpers for merging provider usage metadata.
Summary
Functions
Adds :total_tokens when input and output token counters are available.
Merges two usage maps while summing numeric counters and preserving provider metadata.
Normalizes common usage counter keys and numeric counter values.
Returns canonical input/output/total token counters from provider usage shapes.
Builds canonical token measurements for telemetry events.
Reads a usage value from atom or string keys.
Merges canonical token counters into a provider usage map.
Functions
Adds :total_tokens when input and output token counters are available.
Merges two usage maps while summing numeric counters and preserving provider metadata.
Normalizes common usage counter keys and numeric counter values.
@spec token_counts(term()) :: %{ input_tokens: non_neg_integer(), output_tokens: non_neg_integer(), total_tokens: non_neg_integer() }
Returns canonical input/output/total token counters from provider usage shapes.
@spec token_measurements(term()) :: %{ input_tokens: non_neg_integer(), output_tokens: non_neg_integer(), total_tokens: non_neg_integer() }
Builds canonical token measurements for telemetry events.
Reads a usage value from atom or string keys.
Merges canonical token counters into a provider usage map.