pub struct ModelPricing {
pub provider: String,
pub model_id: String,
pub aliases: Vec<String>,
pub currency: String,
pub unit: PricingUnit,
pub rates: Option<TokenPricingRates>,
pub rate_schedule: Option<TokenRateSchedule>,
pub prompt_cache: PromptCachePricing,
pub pricing_as_of: String,
pub pricing_source: String,
}Expand description
Per-token model pricing expressed in USD per one million tokens.
Fields§
§provider: StringProvider that owns this model pricing entry.
model_id: StringCanonical model ID for this model pricing entry.
aliases: Vec<String>Additional model IDs that should use this model pricing.
currency: StringISO 4217 currency for this model pricing entry.
unit: PricingUnitBilling unit represented by this model pricing entry.
rates: Option<TokenPricingRates>Token rates expressed as USD per one million tokens.
rate_schedule: Option<TokenRateSchedule>Data-driven token rate schedule for threshold-based model pricing.
prompt_cache: PromptCachePricingPrompt-cache accounting model for this provider/model.
pricing_as_of: StringDate this model pricing entry was last verified.
pricing_source: StringSource URL for this model pricing entry.
Implementations§
Source§impl ModelPricing
impl ModelPricing
Sourcepub fn estimate_cost(&self, usage: &Usage) -> Option<CostEstimate>
pub fn estimate_cost(&self, usage: &Usage) -> Option<CostEstimate>
Estimates cost for the provided token usage.
Trait Implementations§
Source§impl Clone for ModelPricing
impl Clone for ModelPricing
Source§fn clone(&self) -> ModelPricing
fn clone(&self) -> ModelPricing
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 ModelPricing
impl Debug for ModelPricing
Source§impl<'de> Deserialize<'de> for ModelPricing
impl<'de> Deserialize<'de> for ModelPricing
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
Source§impl PartialEq for ModelPricing
impl PartialEq for ModelPricing
Source§impl Serialize for ModelPricing
impl Serialize for ModelPricing
impl StructuralPartialEq for ModelPricing
Auto Trait Implementations§
impl Freeze for ModelPricing
impl RefUnwindSafe for ModelPricing
impl Send for ModelPricing
impl Sync for ModelPricing
impl Unpin for ModelPricing
impl UnsafeUnpin for ModelPricing
impl UnwindSafe for ModelPricing
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