pub struct LlmOptimizationSummary {Show 14 fields
pub schema_version: String,
pub calculation_version: String,
pub status: LlmOptimizationSummaryStatus,
pub limitations: Vec<String>,
pub baseline_model: Option<LlmOptimizationModel>,
pub effective_model: Option<LlmOptimizationModel>,
pub effective_usage: Option<Usage>,
pub baseline_usage: Option<Usage>,
pub tokens_saved: LlmOptimizationTokens,
pub baseline_cost: Option<CostEstimate>,
pub actual_cost: Option<CostEstimate>,
pub estimated_cost_saved: Option<f64>,
pub currency: Option<String>,
pub contributions: Vec<LlmOptimizationContribution>,
}Expand description
Close-time accounting attached to the normalized LLM response.
Fields§
§schema_version: StringWire schema version.
calculation_version: StringArithmetic implementation version.
status: LlmOptimizationSummaryStatusWhether all accounting inputs were available.
limitations: Vec<String>Machine-readable reasons for partial accounting.
baseline_model: Option<LlmOptimizationModel>Counterfactual model used for baseline pricing.
effective_model: Option<LlmOptimizationModel>Model that actually served the terminal response.
effective_usage: Option<Usage>Usage observed on the effective response.
baseline_usage: Option<Usage>Counterfactual usage derived from observed usage plus explicit savings.
tokens_saved: LlmOptimizationTokensExplicit aggregate token reductions, retained independently from pricing.
baseline_cost: Option<CostEstimate>Estimated cost for baseline model/usage.
actual_cost: Option<CostEstimate>Provider-reported or Relay-estimated actual cost.
estimated_cost_saved: Option<f64>Baseline cost minus actual cost when both share a currency.
currency: Option<String>Currency for estimated_cost_saved.
contributions: Vec<LlmOptimizationContribution>Ordered, bounded source evidence used by the calculation.
Trait Implementations§
Source§impl Clone for LlmOptimizationSummary
impl Clone for LlmOptimizationSummary
Source§fn clone(&self) -> LlmOptimizationSummary
fn clone(&self) -> LlmOptimizationSummary
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 moreSource§impl Debug for LlmOptimizationSummary
impl Debug for LlmOptimizationSummary
Source§impl<'de> Deserialize<'de> for LlmOptimizationSummary
impl<'de> Deserialize<'de> for LlmOptimizationSummary
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<LlmOptimizationSummary, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<LlmOptimizationSummary, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for LlmOptimizationSummary
impl PartialEq for LlmOptimizationSummary
Source§impl Serialize for LlmOptimizationSummary
impl Serialize for LlmOptimizationSummary
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 StructuralPartialEq for LlmOptimizationSummary
Auto Trait Implementations§
impl Freeze for LlmOptimizationSummary
impl RefUnwindSafe for LlmOptimizationSummary
impl Send for LlmOptimizationSummary
impl Sync for LlmOptimizationSummary
impl Unpin for LlmOptimizationSummary
impl UnsafeUnpin for LlmOptimizationSummary
impl UnwindSafe for LlmOptimizationSummary
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request