pub struct ModelEntry {
pub id: String,
pub name: String,
pub provider_id: String,
pub family: Option<String>,
pub release_date: Option<String>,
pub knowledge: Option<String>,
pub limits: Option<ModelLimits>,
pub cost: Option<ModelCost>,
pub modalities: Option<ModelModalities>,
pub capabilities: Option<ModelCapabilities>,
}Expand description
A single model entry discovered from a remote catalog.
id, name, and provider_id are always present; the remaining fields are
optional so sparse sources can populate only what they know. The richer
fields mirror ModelDescriptor so a discovered entry can feed
crate::provider::ProviderIndex::estimate_cost via
crate::provider::ProviderIndex::with_discovered.
Fields§
§id: StringUnique model identifier (e.g. "anthropic/claude-3-5-sonnet").
name: StringHuman-readable model name.
provider_id: StringProvider that hosts this model (e.g. "anthropic").
family: Option<String>Model family grouping.
release_date: Option<String>ISO 8601 release date.
knowledge: Option<String>Knowledge cutoff date (ISO 8601).
limits: Option<ModelLimits>Token limits for context and output.
cost: Option<ModelCost>Per-million-token pricing.
modalities: Option<ModelModalities>Input and output modalities.
capabilities: Option<ModelCapabilities>Capability flags (tool calling, streaming, etc.).
Trait Implementations§
Source§impl Clone for ModelEntry
impl Clone for ModelEntry
Source§fn clone(&self) -> ModelEntry
fn clone(&self) -> ModelEntry
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ModelEntry
impl Debug for ModelEntry
Source§impl Default for ModelEntry
impl Default for ModelEntry
Source§fn default() -> ModelEntry
fn default() -> ModelEntry
Source§impl<'de> Deserialize<'de> for ModelEntry
impl<'de> Deserialize<'de> for ModelEntry
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>,
Source§impl From<ModelEntry> for ModelDescriptor
impl From<ModelEntry> for ModelDescriptor
Source§fn from(entry: ModelEntry) -> Self
fn from(entry: ModelEntry) -> Self
Project a discovery entry onto a catalog model descriptor.
limits is carried over only when both context and output are known
(the catalog representation requires both). Pricing, modalities, and
capabilities pass through unchanged.
Auto Trait Implementations§
impl Freeze for ModelEntry
impl RefUnwindSafe for ModelEntry
impl Send for ModelEntry
impl Sync for ModelEntry
impl Unpin for ModelEntry
impl UnsafeUnpin for ModelEntry
impl UnwindSafe for ModelEntry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>,
impl<T> ErasedDestructor for Twhere
T: 'static,
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>
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>
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>
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.